API Terceros/Forma Pago
Descripción: Esta API permite la sincronizacion de Formas de pago para los procesos de ventas entre SERPI y la plataforma que lo requiera permitiendo tener un manejo estándar entre las dos plataformas.
Autorización: Se requiere autenticación para todas las solicitudes. Las credenciales de autenticación deben ser incluidas en la cabecera de todas las solicitudes a través del campo Authorization utilizando el token de acceso entregado SERPI ERP.
Beneficio:
Tipos de peticiones: GET, POST, PUT
¿Cómo funciona?
- Tenga en cuenta que un mismo token no puede ser consumidos de manera simultanea, por lo cual puede programar que la siguiente API sea consumida cuando el resultado de la anterior sea exitoso.
- En términos de tiempo, para hacer seguimiento a su operación puede hacer un consumo cada 5 minutos de la información.
Métodos
<Tabs> <Tab name = "API Consulta (GET) "> GET
EndPoint: https://www.apis.serpi.com.co/api/v1/FormaPago
EndPoint con parámetros: https://www.apis.serpi.com.co/api/v1/FormaPago?limite=50&pagina=1
Headers
Header | Descripción |
---|---|
secretkey | Secretkey proporcionada al cliente para consumos de las APIs |
Authorization:
Usar Bearer. Ejemplo “bearer {{token}}”.
{{token}} Token de autorizacion generado por SerpiERP
Parámetros
Parámetro | Tipo de dato | Requerido | Descripción |
---|---|---|---|
Límite | int | No | Este parámetro indica la cantidad de resultados que se deben devolver en una sola página |
Página | int | No | Este parámetro indica el número de la página que se debe devolver. Por ejemplo, si se establece en 3, se devolverán los resultados de la tercera página |
Response
{
"success": true
"code": 200,
"message": "x registro(s) encontrados",
"result": [
{
"id": 1,
"cuenta": 15120501,
"descripcion_cuenta": "MAQUINARIA Y EQUIPO",
"descripcion_fomapago": "PRUEBAS D",
"tipo": "PRUEBAS T",
"aplicafactura": false,
"aplicapuntopago": false,
"tercuenta": false,
"id_formapago_categoria": 1,
"categoria": "CR",
"descripcion_formapago_categoria": "CREDITO",
"escontraentrega": true
}
]
}
{
"success": true
"code": 201,
"message": "No se encontraron registros",
"result": []
}
Campo de resultados
Campo | Tipo de dato | Descripción |
---|---|---|
Id | int | Corresponde al identificador del tipo de identidad |
auxiliar | int | Corresponde al código de la cuenta |
descripcion_cuenta | string | Descripción tipo de cuenta. |
descripcion_fomapago | string | Descripción de la forma de pago |
tipo | string | Descripción del tipo de cuenta o acrónimo de la cuenta |
aplicafactura | bool | true o false. Si aplica factura |
aplicapuntopago | bool | true o false. Si el aplica punto de pago |
tercuenta | bool | true o false. Si el aplica cuenta tercero |
id_formapago_categoria | int | Corresponde al identificador de la categoría forma de pago |
categoria | string | Abreviatura3 Categoria forma pago |
descripcion_formapago_categoria | string | Descripción de la categoría forma de pago |
escontraentrega | bool | true o false. Si es contraentrega |
</Tab>
<Tab name = "API Creación (POST) "> POST
EndPoint: https://www.apis.serpi.com.co/api/v1/formapago
Headers
Header | Descripción |
---|---|
secretkey | Secretkey proporcionada al cliente para consumos de las APIs |
Authorization:
Usar Bearer. Ejemplo “bearer {{token}}”.
{{token}} Token de autorizacion generado por SerpiERP
Request
{
"id_formapago_categoria" : 4,
"tipo": "p false",
"descripcion_fomapago": "forma false",
"tercuenta": true,
"cuenta": 11050501,
"aplicafactura": true,
"aplicapuntopago": true,
"escontraentrega": true
}
Campos del request
Campo | Tipo de dato | Longitud | Requerido | Descripción |
---|---|---|---|---|
gdtformapagocatid | int | 11 | SI | Identificador único del tipo de categoría para la forma de pago , si es crédito , debito ,contado |
tipo | string | 100 | SI | tipo de forma de pago como CO. DE, CR |
descripcion_fomapago | string | 50 | SI | Descripción del tipo de forma de pago |
tercuenta | bool | 1 | SI | true o false. toma la Cuenta por Cobrar, Tomarla del Tercero y al numero auxiliar |
auxiliar | string | 15 | NO | Código auxilita de la cuenta, hace referencia a tercuenta según su estado true o false |
aplicafactura | bool | 1 | NO | true o false. si aplica factura |
aplicapuntopago | bool | 1 | NO | true o false. si aplica punto pago |
escontraentrega | bool | 1 | NO | true o false. Si es contraentrega |
Authorization:
Usar Bearer. Ejemplo “bearer {{token}}”.
{{token}} Token de autorizacion generado por SerpiERP
Response
{
"success": true,
"code": 201,
"errors": null,
"message": "registro creado exitosamente"
}
{
"success": false,
"code": 400,
"errors": [
"La cuenta 110505019 no existe"
],
"message": "Se presentaron errores al crear el registro"
}
</Tab>
<Tab name = "API Modificar(PUT) "> PUT/users
EndPoint: https://www.apis.serpi.com.co/api/v1/formapago
Headers
Header | Descripción |
---|---|
secretkey | Secretkey proporcionada al cliente para consumos de las APIs |
Authorization:
Usar Bearer. Ejemplo “bearer {{token}}”.
{{token}} Token de autorizacion generado por SerpiERP
Request
{
"id": 39,
"descripcion_fomapago": "PRUEBAS",
"tipo": "PR",
"tercuenta": false,
"auxiliar": 11050501,
"aplicafactura": false,
"aplicapuntopago": true,
"gdtformapagocatid": 1,
"escontraentrega": 1
}
Campos del request
Campo | Tipo de dato | Longitud | Requerido | Descripción |
---|---|---|---|---|
id | int | 50 | SI | Corresponde al identificador de la forma de pago |
descripcion_fomapago | string | 50 | SI | Descripción del tipo de forma de pago |
tipo | string | 50 | SI | Descripcion tipo de forma pago |
tercuenta | bool | 1 | NO | true o false. toma la Cuenta por Cobrar, Tomarla del Tercero y al numero auxiliar |
auxiliar | string | 50 | NO | Código auxilita de la cuenta, hace referencia a tercuenta según su estado true o false |
aplicafactura | string | 50 | NO | true o false. si aplica factura |
aplicapuntopago | bool | 50 | NO | true o false. si aplica punto pago |
gdtformapagocatid | int | 50 | SI | Identificador único del tipo de categoría para la forma de pago , si es crédito , debito ,contado |
escontraentrega | bool | 1 | NO | true o false. Si es contraentrega |
Authorization:
Usar Bearer. Ejemplo “bearer {{token}}”.
{{token}} Token de autorizacion generado por SerpiERP
Response
{
"success": true
"code": 200,
"message": "registro modificado exitosamente"
}
{
"success": false,
"code": 400,
"errors": [
"El campo descripcion_fomapago es obligatorio"
],
"message": "Se presentaron errores al modificar el registro"
}
{
"success": false,
"code": 204,
"errors": null,
"message": "No se encontraron registros con el id xx"
}
</Tab> </Tabs>
Códigos de estado HTTP
Código | Descripción |
---|---|
200 | La solicitud ha sido exitosa |
201 | La solicitud ha tenido éxito y ha llevado a la creación de un recurso |
204 | La solicitud se ha completado correctamente, pero no hay contenido para devolver en la respuesta |
400 | El servidor no puede o no procesará la petición debido a algo que es percibido como un error del cliente |
401 | La solicitud requiere autenticación, pero el cliente no ha proporcionado credenciales válidas o no está autorizado para acceder al recurso |
403 | El servidor ha entendido la solicitud, pero se niega a cumplirla debido a que el cliente no tiene permisos para acceder al recurso |
404 | El recurso solicitado no se ha encontrado en el servidor |
500 | Internal Server Error |
503 | El servidor no está disponible actualmente debido a una sobrecarga o mantenimiento temporal |
¿Cómo consumir la API?
<Tabs>
<Tab name = "Java"> Request
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
Request request = new Request.Builder()
.url("https://wv9901.wolkvox.com/api/v2/reports_manager.php?api=agent_1&date_ini={{YYYYmmddHHiiss}}&date_end={{YYYYmmddHHiiss}}")
.method("GET", null)
.addHeader("wolkvox-token", "{{token}}")
.build();
Response response = client.newCall(request).execute();
Response
{
"code": 200,
"error": null,
"msg": "Information found for the current month",
"data": [
{
"operation": "",
"description": "",
"items": "",
"date": ""
}
]
}
</Tab>
<Tab name = "Python"> Request
import requests
url = "https://wv9901.wolkvox.com/api/v2/reports_manager.php?api=agent_1&date_ini={{YYYYmmddHHiiss}}&date_end={{YYYYmmddHHiiss}}"
payload={}
headers = {
'wolkvox-token': '{{token}}'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
Response
{
"code": 200,
"error": null,
"msg": "Information found for the current month",
"data": [
{
"operation": "",
"description": "",
"items": "",
"date": ""
}
]
}
</Tab>
</Tabs>