Split de Cobro
El Split de Cobro es una función que permite generar automáticamente una Transferencia Programada de una Cuenta PAGOS360 a otra, en el momento que una Solicitud de Pago es abonada.
- Solo se podrá realizar Transferencias Programadas entre cuentas PAGOS360 conectadas.
- Si la Solicitud de Pago es abonada más de una vez (pago duplicado) el Split de Cobro se ejecutará una sola vez.
Flujo de Información
El siguiente diagrama muestra el proceso completo de una Transferencia Programada:
-
Se crea una Solicitud de Pago sobre la Cuenta A. Esta Solicitud de Pago contiene un bloque con la información del Split de Cobro (transfer_to), el cual indica que importe y a que cuenta se debe transferir parte de los fondos recaudados si la Solicitud de Pago es pagada.
-
Se envía el link de pago al Pagador.
-
El pagador selecciona el medio de pago que desea utilizar y paga (ej. Pago con Tarjeta de Crédito).
-
Se registra el Pago en la Cuenta A reteniendo la comisión de PAGOS360 que corresponda según el medio utilizado por el Pagador.
-
Automáticamente se crea una Transferencia Programada desde la Cuenta A hacia la Cuenta B por el importe indicado en el bloque transfer_to de la Solicitud de Pago creada en el punto 1.
-
En la Cuenta B, se creará de forma automática una Solicitud de Pago en estado Pagada tomando como base los datos Referencia y Descripción indicados en el bloque transfer_to. Esta Solicitud de Pago tendrá la misma fecha de acreditación que el medio de pago elegido por el pagador en el punto 3
Estados de una Transferencia Programada
El siguiente diagrama muestra la transición de los diferentes estados:
Una Transferencia Programada se crea en estado pendiente (pending) en el momento que una Solicitud de Pagos es pagada.
Una vez que los fondos de la solicitud de Pago sean acreditados (dependiendo del plazo de acreditación del Medio de Pago elegido por el Pagador al momento de realizar el pago), el estado de la Transferencia Programada cambiara a Transferido (transferred)
Eventualmente una transacción oportunamente pagada puede ser desconocida por el pagador (ver Reversiones para más detalles). Al suceder una reversión, si la Transferencia Programada fue creada con la marca Refundable (Reintegrable), el estado cambiara a automáticamente a Reintegrado (Refunded).
¿Como crear un Split de Cobro?
El Split de Cobro se instrumenta como una opción mas al momento de crear una Solicitud de Pago.
Para crear una Solicitud de Pago utilizaremos el endpoint Crear Solicitud de Pago
Autorización
Un Split de Cobro, solo se encuentra disponibles entre cuentas conectadas. Para validar que dos cuentas se encuentran conectadas además del Authorization (más info.) se debe proporcionar una cabecera adicional X-Connect-Account la cual se compone del ID de la Cuenta PAGOS360 (más info.) a la que serán transferidos los fondos más un Secret que es generado cuando se vinculan dos cuentas PAGOS360.
El Secret para poder operar bajo esta modalidad debe ser solicitado a integraciones@pagos360.com.
curl -X GET \
https://api.pagos360.com/account \
-H 'Authorization: Bearer <API Key>' \
-H 'X-Connect-Account: <user_account_id>-<secret>' \
REQUEST
Headers
Atributo | Tipo | Requerido | Pattern | Descripción |
---|---|---|---|---|
Authorization | String | SI | Bearer <API Key> |
Puede consultar la sección API Key para más información. |
X-Connect-Account | String | SI | <user_account_id>-<secret> |
Puede consultar la sección Cuenta Pagos360.com para obtener el user_account_id , a la que serán transferidos los fondos y comunicarse a integraciones@pagos360.com para obtener el secret. |
Content-Type | String | SI | application/json |
El tipo MIME del contenido del cuerpo enviado. Por defecto JSON es Unicode UTF-8. No se debe configurar otro charset. |
Body
Atributo | Tipo | Requerido | Descripción |
---|---|---|---|
payment_request | Object | SI | Es la entidad que individualiza la intención de recibir un pago a travez de Pagos360.com y es necesaria para ejecutar una transacción de pago. Mas info. |
Atributos del objeto payment_request
Atributo | Tipo | Requerido | Descripción |
---|---|---|---|
description | String | SI | Descripción o concepto de la Solicitud de Pago (hasta 500 caracteres). |
first_due_date | Date | SI | Fecha de vencimiento de la Solicitud de Pago. Formato: dd-mm-aaaa . |
first_total | Float | SI | Importe a cobrar. Formato: 00000000.00 (hasta 8 enteros y 2 decimales, utilizando punto “.” como separador decimal). |
payer_name | String | SI | Nombre del destinatario de la Solicitud de Pago (hasta 255 caracteres). |
external_reference | String | NO | Este atributo se puede utilizar como referencia para identificar la Solicitud de Pago y sincronizar con tus sistemas de backend el origen de la operación. Algunos valores comunmente utilizados son: ID de Cliente, DNI, CUIT, ID de venta o Nro. de Factura entre otros. (hasta 255 caracteres). |
second_due_date | Date | NO | Fecha de segundo vencimiento de la Solicitud de Pago. Formato: dd-mm-aaaa . |
second_total | Float | NO | Importe a cobrar pasada la primera fecha de vencimiento. Formato: 00000000.00 (hasta 8 enteros y 2 decimales, utilizando punto “.” como separador decimal). |
payer_email | String | NO | Email del destinatario de la Solicitud de Pago (hasta 255 caracteres). |
back_url_success | String | NO | En el caso de estar especificado el pagador será redirigido a esta URL ante un pago exitoso (hasta 255 caracteres). |
back_url_pending | String | NO | En el caso de estar especificado el pagador será redirigido a esta URL ante un pago pendiente (hasta 255 caracteres). |
back_url_rejected | String | NO | En el caso de estar especificado el pagador será redirigido a esta URL ante un pago rechazado (hasta 255 caracteres). |
excluded_channels | Array [String] | NO | Tipos de Medios de Pago que serán omitidos de las opciones al pagador. Valores posibles: credit_card , debit_card , banelco_pmc , link_pagos , DEBIN y non_banking . |
metadata | Object | NO | Objeto JSON que se puede utilizar para guardar atributos adicionales en la solicitud de pago y poder sincronizar con tus sistemas de backend. Pagos360.com no utiliza este objeto. |
items | Array [Object] | NO | Objeto JSON que se puede utilizar para listar todos los productos o servicios asociados a la solicitud de pago, para que sean incluidos como un detalle del comprobante de pago. |
transfer_to | Array [Object] | NO | Objeto JSON que se utiliza para instrumentar un Split de Cobro. |
Atributos del objeto items
Atributo | Tipo | Requerido | Descripción |
---|---|---|---|
quantity | Integer | NO | Cantidad del producto o servicio. |
description | String | SI | Descripción del producto o servicio (hasta 255 caracteres). |
amount | Float | SI | Importe del producto o servicio. Formato: 00000000.00 (hasta 8 enteros y 2 decimales, utilizando punto “.” como separador decimal). |
Atributos del objeto transfer_to
Atributo | Tipo | Requerido | Descripción |
---|---|---|---|
account_id | String | SI | ID alfanumerico de la cuenta PAGOS360 destino más info. |
amount | Float | SI | Importe a transferir (NO puede ser mayor al importe de la Solicitud de Pago). Formato: 00000000.00 (hasta 8 enteros y 2 decimales, utilizando punto “.” como separador decimal). |
description | String | SI | Motivo de la transferencia (hasta 255 caracteres). |
external_reference | String | NO | Este atributo se puede utilizar como referencia para identificar la Transferencia Programada en la cuenta destino (hasta 255 caracteres). |
refundable | Boolean | SI | Este atributo indica si la transferencia deberá ser reintegrada ante una devolución o contracargo de la Solicitud de Pago. |
RESPONSE
Atributos del objeto de la respuesta
Atributo | Tipo | Descripción |
---|---|---|
id | Integer | ID de Solicitud de Pago. |
type | String | Tipo de Solicitud. |
state | String | Estado de la Solicitud de Pago. Mas info. |
created_at | DateTime | Fecha y hora de creación. Fomato ISO. |
external_reference | String | Este atributo se puede utilizar como referencia para identificar la Solicitud de Pago y sincronizar con tus sistemas de backend el origen de la operación. Algunos valores comunmente utilizados son: ID de Cliente, DNI, CUIT, ID de venta o Nro. de Factura entre otros. |
payer_name | String | Nombre del destinatario de la Solicitud de Pago. |
payer_email | String | Email del destinatario de la Solicitud de Pago. |
description | String | Descripción o concepto de la Solicitud de Pago. |
first_due_date | DateTime | Fecha de vencimiento de la Solicitud de Pago. Fomato ISO. |
first_total | Float | Importe a cobrar. Formato: 00000000.00 (hasta 8 enteros y 2 decimales, utilizando punto “.” como separador decimal). |
second_due_date | DateTime | Fecha de segundo vencimiento de la Solicitud de Pago. Fomato ISO. |
second_total | Float | Importe a cobrar pasada la primera fecha de vencimiento. Formato: 00000000.00 (hasta 8 enteros y 2 decimales, utilizando punto “.” como separador decimal). |
barcode | String | Código númerico del código de barra. |
checkout_url | String | URL para instanciar el checkout de pago online. |
barcode_url | String | URL de la imágen del código de barra utilizado para pagar en las redes de pago en efectivo. |
pdf_url | String | URL de cupón de pago en formato pdf. |
back_url_success | String | En el caso de estar especificado el pagador será redirigido a esta URL ante un pago exitoso. |
back_url_pending | String | En el caso de estar especificado el pagador será redirigido a esta URL ante un pago pendiente. |
back_url_rejected | String | En el caso de estar especificado el pagador será redirigido a esta URL ante un pago rechazado. |
excluded_channels | Array [String] | Tipos de Medios de Pago que serán omitidos de las opciones al pagador. Valores posibles: credit_card , debit_card , banelco_pmc , link_pagos , DEBIN y non_banking . |
metadata | Object | Objeto JSON que se puede utilizar para guardar atributos adicionales en la solicitud de pago y poder sincronizar con tus sistemas de backend. Pagos360.com no utiliza este objeto. |
items | Array [Object] | Objeto JSON que se puede utilizar para listar todos los productos o servicios asociados a la solicitud de pago, para que sean incluidos como un detalle del comprobante de pago. |
transfer_to | Array [Object] | Objeto JSON que se utiliza para instrumentar un Split de Cobro. |
Atributos del objeto items
Atributo | Tipo | Descripción |
---|---|---|
quantity | Integer | Cantidad del producto o servicio. |
description | String | Descripción del producto o servicio (hasta 255 caracteres). |
amount | Float | Importe del producto o servicio. Formato: 00000000.00 (hasta 8 enteros y 2 decimales, utilizando punto “.” como separador decimal). |
Atributos del objeto transfer_to
Atributo | Tipo | Descripción |
---|---|---|
account_id | String | ID alfanumerico de la cuenta PAGOS360 destino más info. |
amount | Float | Importe a transferir (NO puede ser mayor al importe de la Solicitud de Pago). Formato: 00000000.00 (hasta 8 enteros y 2 decimales, utilizando punto “.” como separador decimal). |
description | String | Motivo de la transferencia (hasta 255 caracteres). |
external_reference | String | Este atributo se puede utilizar como referencia para identificar la Transferencia Programada en la cuenta destino (hasta 255 caracteres). |
refundable | Boolean | Este atributo indica si la transferencia deberá ser reintegrada ante una devolución o contracargo de la Solicitud de Pago. |