Saltar al contenido principal
Puedes aceptar pagos en efectivo de clientes en México usando la API de Payment Intent. Los clientes pagan proporcionando una referencia (número o código de barras) en cualquiera de las +13.000 ubicaciones disponibles. Fintoc te notifica cuando el pago se completa.

Crea un pago

Usando tu Secret Key, crea un Payment Intent en tu servidor con un amount, currency (solo MXN para pagos en efectivo) y payment_type: "cash".

Respuesta al crear un Payment Intent para un pago en efectivo

Después de hacer la solicitud, Fintoc responderá con el Payment Intent con el estado created incluyendo payment_type_options.cash que contiene la información de la referencia del pago en efectivo:

Comparte la referencia y las instrucciones de pago con tu cliente

Después de crear el pago, comparte el voucher con tu cliente para que tenga instrucciones claras sobre cómo completar el pago en una de las ubicaciones disponibles. Ejemplo de voucher según el monto del pago:
Si quieres mostrar instrucciones personalizadas a tu cliente, también puedes usar barcode_url, reference_number e imágenes de las listas de ubicaciones: Recomendamos priorizar el código de barras como el método preferido de presentación en la ubicación, ya que permite un proceso de pago más rápido en comparación con dictar el número de referencia.
Límite máximo de monto por ubicaciónAlgunas ubicaciones solo aceptan pagos hasta 5.000,00 MXN, mientras que otras no tienen un límite máximo. Debes mostrar logos específicos y una lista de todas las ubicaciones según el monto del pago, como se muestra en el voucher de ejemplo anterior.

Maneja los eventos posteriores al pago

Una vez que un Payment Intent se completa, maneja el resultado del pago usando los eventos enviados por los webhooks para completar el pago en tu backend. Fintoc envía un evento payment_intent.succeeded cuando el pago se completa exitosamente. Usa la guía de webhooks para recibir estos eventos y ejecutar acciones, como enviar un correo de confirmación de orden a tu cliente, registrar la venta en una base de datos o iniciar un flujo de envío.
Debes manejar los siguientes eventos al usar nuestro producto de Iniciación de Pagos:

Expirar un pago en progreso

Si lo necesitas, puedes expirar un pago que está en estado created usando el endpoint expire del Payment Intent como en el ejemplo a continuación:
curl
Después de expirado, tu cliente no podrá pagar usando la referencia.

Prueba tu integración

Para simular un pago en efectivo exitoso o expirado, puedes usar uno de los siguientes montos al crear el Payment Intent de payment_type: cash En modo de prueba, el escenario succeeded tiene notificación inmediata por webhook del evento payment_intent.succeeded. Para el escenario expired, el Payment Intent pasa al estado created, por lo que puedes probar el endpoint para expirar un Payment Intent o esperar al final del tiempo de expiración para recibir el evento payment_intent.expired.