Introducción
El presente documento describe los endpoints de la API de TotalCoin para la registración de una intención de pago para su posterior procesamiento en checkout.
Autenticación
El control de acceso a la API se realiza a través del estándar OAuth 2.0 con Bearer Tokens.
Endpoint
Solicitud
{ "username": "", "password": "" }
Campo | Tipo | Descripción | Requerido |
---|---|---|---|
username | String | Nombre de usuario | Sí |
password | String | Contraseña | Sí |
Respuesta (HTTP 200)
{ "token": "", "expires_in": 3600 }
Campo | Tipo | Descripción |
---|---|---|
token | String | Token de autenticación |
expires_in | Number | Validez del token en segundos |
Posibles Errores
Código | Descripción |
---|---|
401 | Credenciales incorrectas o inexistentes |
403 | No se cuenta con permisos para acceder a la API |
Realizar Intención de Pago
Realizar una transacción de pago a la cuenta de un cliente.
Endpoint
Solicitud (form-data)
Campo | Tipo | Descripción | Requerido |
---|---|---|---|
ME | String | Número de comercio asignado por totalcoin | Sí |
AM | decimal | Monto de la operación | Sí |
AC | string | Concepto a mostrar en el checkout | Sí |
DI | String | DNI o CUIT del titular o persona a realizar el pago | Sí |
ED | String | Fecha de Expiración de la orden de pago | No |
ER | string | Referencia interna del comercio | Sí |
NA | string | Apellido del titular o persona a realizar el pago | Sí |
NC | string | Nombre del titular o persona a realizar el pago | Sí |
PM | string | Métodos de Pago a disponibilizar separados por | (pipe). Ej: CASH|CREDITCARD CASH: pago efectivo (rapipago/pagofacil) CREDITCARD: Tarjetas de débito o crédito según permisos de la cuenta recaudadora. |
Sí |
LG | string | URL absoluta para mostrar logo personalizado en el checkout | No |
EMC | string | Email del titular o persona a realizar el pago | Sí |
CF | string | URL de retorno para operación Fallida | No |
CP | string | URL de retorno para operaciones en Proceso | No |
CS | string | URL de retorno para operaciones exitosas | No |
Respuesta (HTTP 200)
String - Identificador de la intención de pago recibida
Posibles Errores
Código | Descripción |
---|---|
401 | No autorizado a realizar la transacción |
500 | Error al procesar la transacción |
Base URL: https://apicobranzastest.totalcoin.com (TEST)
*Se requiere un usuario de tipo api (solicitar a totalcoin)
Procesar Intención de Pago
Una vez invocado el endpoint de intención de pago y habiendo obtenido un status 200 con el valor correspondiente, se puede proceder a invocar el checkout con los datos enviados precargados.
Simplemente redireccionar a: [url]/workspace/checkout/receptor?requestId={id}
Clave | Valor |
---|---|
url | https://test.totalcoin.com (TEST) https://ar.totalcoin.com (PROD) |
id | id obtenido invocando el endpoint de intención de pago |
Notificaciones via Webhook
Una vez procesado el pago, totalcoin enviará una notificación a un endpoint pre-establecido por el usuario.
Este webhook se envía una sola vez y siempre espera recibir un 200 como respuesta. Totalcoin NO procesa respuestas ni reintenta en casos de error en el destino.
Para reenviar webhooks se puede hacerlo manualmente desde nuestro portal cobranzas por usuarios con roles y permisos específicos.
Campos de Respuesta del Webhook
Campo | Descripción |
---|---|
Referencia | Nro de referencia interno y único de operación de TotalCoin |
Concepto | Valor enviado en el campo ER en el checkout |
Estado | Último estado de la operación siendo "APROBADO" o "DISPONIBLE" los valores de las operaciones válidas |
ReferenciaMerchant | IdOperacion merchant. Este valor deja de ser null cuando es una operación de qr o transferencia y la integración contempla la conciliación automática. Para tarjetas y Efectivo este valor es siempre null. |