PaymentIntent representa un pago que cobras a un cliente. El PaymentIntent registra el amount, las cuentas sender_account y recipient_account, el payment_type y el status del pago. Fintoc devuelve el PaymentIntent en las respuestas de la API de Payments y en los eventos webhook de pagos.
Payment Intent Object
{
"id": "pi_BO381oEATXonG6bj",
"object": "payment_intent",
"amount": 1000,
"business_profile": {
"category": "009613",
"name": "Test Business 1",
"tax_id": "777777777"
},
"created_at": "2021-10-15T15:23:11.474Z",
"currency": "CLP",
"customer": null,
"customer_email": "customer@example.com",
"error_reason": null,
"expires_at": null,
"metadata": {},
"mode": "live",
"next_action": null,
"payment_method": null,
"payment_type": "bank_transfer",
"payment_type_options": {},
"recipient_account": {
"holder_id": "222222222",
"institution_id": "cl_banco_de_chile",
"number": "123456",
"type": "checking_account"
},
"reference_id": "90123712",
"sender_account": {
"holder_id": "111111111",
"institution_id": "cl_banco_estado",
"number": "123456",
"type": "checking_account"
},
"status": "created",
"subscription": null,
"transaction_date": "2021-10-15T15:24:15.474Z",
"widget_token": "pi_BO381oEATXonG6bj_sec_a4xK32BanKWYn"
}
| Atributo | Tipo | Descripción |
|---|---|---|
id | string | Identificador único del Payment Intent. |
object | string | Identificador del tipo de objeto. Su valor para los Payment Intents siempre corresponderá a payment_intent. |
amount | integer | Monto a pagar, representado como un entero. Este valor siempre debe ser mayor que 0. |
business_profile | object | Información comercial de la entidad que recibe el pago, cuando se cobra en nombre de un negocio. Incluye category, name y tax_id; consulta el objeto Business Profile más abajo. null cuando no se proporciona. |
created_at | string | Fecha de creación del Payment Intent, usando ISO 8601. |
currency | string | Código ISO de la moneda. Por ahora, solo admitimos CLP y MXN. |
customer | object | El objeto Customer asociado al payment intent, o null cuando no hay un cliente adjunto. |
customer_email | string | Correo electrónico del cliente vinculado a un Payment Intent. Se usa para notificar al usuario en caso de un reembolso. Si planeas usar el producto de reembolsos, debes incluir este campo en tu solicitud.Si creas un pago sin proporcionar customer_email, este campo será null en la respuesta y no se enviarán correos para ese Payment Intent. |
error_reason | string | Código de error que explica el motivo del fallo del payment intent, si está disponible. Consulta Payment Intent Error Reason para ver la lista de razones de error. |
expires_at | string | Momento en que expira el payment intent, como fecha y hora ISO 8601 en UTC. null cuando el payment intent no expira. |
metadata | hash | Conjunto de pares clave-valor que puedes adjuntar a un objeto. Esto puede ser útil para almacenar información adicional sobre el objeto en un formato estructurado. Si creas un pago sin proporcionar metadata, este campo será null al recibir notificaciones sobre el estado final. |
mode | string | Indica si el Payment Intent está en modo live o en modo test. |
next_action | object | Acción que el cliente debe completar para que el pago continúe, como confirmar el pago en una app bancaria. La clave type indica el tipo de acción. null cuando no hay acción pendiente. |
payment_method | string | ID del método de pago guardado que pagó el intent. null cuando el pago no se realizó con un método de pago guardado. |
payment_type | string | Tipo de pago que produjo este payment intent. Uno de bank_transfer, cash, card, installment o pac, o un identificador específico de redirección externa del proveedor, como banco_estado. |
payment_type_options | object | Opciones adicionales específicas de payment_type. Objeto vacío cuando payment_type no tiene opciones adicionales. |
recipient_account | object | Objeto que apunta a la cuenta destinataria. Revisa la tabla del objeto Recipient Account más abajo para obtener más información. Si usas Fintoc Collects para pagos, omite este objeto durante la creación del pago para una mayor estabilidad. |
reference_id | string | Número de operación del banco de la cuenta de origen. Cuando recibes notificaciones del estado final del pago, reference_id puede ser null si un pago tarda más de lo habitual en ser confirmado por el banco o si el usuario abandonó el pago antes de devolver un número de operación. |
sender_account | object | Objeto que apunta a la cuenta de origen. Revisa la tabla del objeto Sender Account más abajo para obtener más información. Cuando recibes notificaciones del estado final del pago, sender_account puede ser null si el usuario abandonó el pago antes de especificar una cuenta de origen. |
status | string | Estado del pago. Puede ser created, in_progress, succeeded, failed, pending, requires_action, expired o rejected. |
subscription | string | ID de la suscripción que generó este payment intent. null cuando el pago no es parte de una suscripción. |
transaction_date | string | Fecha de autorización de la transacción otorgada por el banco, usando ISO 8601. Cuando recibes notificaciones del estado final del pago, transaction_date puede ser null si el usuario abandonó el pago antes de transferir. |
widget_token | string | Token temporal para configurar el widget. Este atributo solo se devuelve al crear el Payment Intent. Después de eso, siempre será null. |
Objeto Recipient y objeto Sender
| Atributo | Tipo | Descripción |
|---|---|---|
holder_id | string | Identificador del titular de la cuenta. En Chile, corresponde a un RUT y en México es un RFC o CURP. |
institution_id | string | id de la institución de la cuenta. Puedes obtener más información sobre las instituciones y sus id aquí. |
number | string | Número de cuenta. No incluye guiones ni ceros como prefijo. |
type | string | Tipo de cuenta. Puede ser checking_account o sight_account. |
Objeto Business Profile
| Atributo | Tipo | Descripción |
|---|---|---|
category | string | Identificador de la categoría del sub-comercio. En Chile, corresponde a un código de actividad del SII de 6 caracteres. |
name | string | Nombre del comercio inscrito. Si se define, se mostrará como el “Destinatario” en la pantalla de pago exitoso. |
tax_id | string | Identificador tributario del comercio inscrito. En Chile, corresponde a un RUT. En México, CURP o RFC. |