- Links de pago: Si tu organización tiene efectivo habilitado, tus Links de pago ofrecen efectivo automáticamente.
- Checkout Sessions: Agrega
cashapayment_method_typesal crear una Checkout Session enMXN. Tu cliente elige pagar en efectivo en la página de checkout alojada por Fintoc. - API de Payment Intent: Crea un
PaymentIntenten efectivo directamente y muestra la referencia a tu cliente, como se describe en esta guía.
Ofrece efectivo en una Checkout Session
Incluyecash en payment_method_types por sí solo, o combínalo con card y bank_transfer. No puedes combinar cash con installments.
Servidor
cash en payment_method_types:
customer_email o customer_phone (formato E.164, por ejemplo +525512345678) al crear la sesión. También puedes definir payment_method_options.cash.notification_preferences con las mismas opciones descritas en Configura las notificaciones del voucher. Fintoc copia el teléfono y las preferencias al pago en efectivo cuando tu cliente elige efectivo. Si customer_phone no está en formato E.164, Fintoc responde con un error invalid_phone.
Si el pago con tarjeta o transferencia bancaria de tu cliente falla y cash está disponible en la sesión, tu cliente puede reintentar el pago en efectivo desde el mismo checkout.
Para completar la integración, sigue la guía Aceptar un pago.
Ofrece efectivo en un Link de pago
Si tu organización tiene efectivo habilitado, cada Link de pago enMXN que crees ofrece efectivo. No necesitas enviar ningún parámetro adicional. Tu cliente ve la opción Paga en efectivo junto a los otros métodos de pago y puede generar un voucher para pagar en la tienda.
Fintoc no muestra la opción de efectivo cuando:
- Ninguna tienda acepta el monto del Link de pago.
- La sesión de checkout de tu organización dura menos que el tiempo que tu cliente necesita para pagar en efectivo.
Crea un pago
Usando tu clave secreta, crea unPaymentIntent en tu servidor con un amount, currency (solo MXN para pagos en efectivo) y payment_type: "cash".
Node
Respuesta al crear un Payment Intent para un pago en efectivo
Después de hacer la solicitud, Fintoc responde con el Payment Intent en estadocreated, incluyendo payment_type_options.cash con 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.Fintoc envía el voucher automáticamenteCuando creas un pago en efectivo por API, Fintoc envía el voucher apenas se crea el pago. Fintoc lo envía por correo a
customer_email y por WhatsApp a customer_phone, según los canales de notification_preferences. Fintoc no envía el voucher si desactivaste las notificaciones del voucher en tus preferencias o si tu cuenta suprime las comunicaciones a clientes. En modo test, Fintoc también envía mensajes reales, así que usa un correo y un teléfono que controles.Igual puedes compartir el voucher por tus propios canales o armar tus propias instrucciones con los campos de abajo.Configura las notificaciones del voucher
Usanotification_preferences para elegir cómo Fintoc envía el voucher a tu cliente. Envíalo en payment_type_options.cash al crear un Payment Intent:
Fintoc valida las preferencias al crear el pago:
- Si
channelsincluyeemailsincustomer_email, ophonesincustomer_phone, Fintoc responde con un errormissing_parameter. - Si
send_voucherosend_remindersestruey no envías ningún contacto, Fintoc responde con un errormissing_parameter. - Si
channelsestá vacío o incluye un valor distinto deemailophone, Fintoc responde con un errorinvalid_param_value.
channels como ["email"]. Para que Fintoc no envíe el voucher de un pago, define send_voucher como false.
Recordatorios de pago
Cuandosend_reminders es true, Fintoc le recuerda a tu cliente que pague un pago en efectivo pendiente. Fintoc envía los recordatorios a las 10:00 y a las 19:00 (hora de Ciudad de México) por los mismos channels que usa para el voucher. Tu cliente recibe hasta 2 recordatorios por canal.
Fintoc no envía un recordatorio cuando:
- El pago está en modo
test. - El pago se creó hace menos de 6 horas.
- El pago expira en menos de 30 minutos.
- Tu cuenta suprime las comunicaciones a clientes.
send_reminders como false.
Ejemplo de voucher según el monto del pago:

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 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 eventopayment_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.
Expirar un pago en progreso
Si lo necesitas, puedes expirar un pago que está en estadocreated usando el endpoint expire del Payment Intent como en el ejemplo a continuación:
Node
Prueba tu integración
Para simular un pago en efectivo exitoso o expirado, usa uno de los siguientes montos al crear elPaymentIntent con payment_type: "cash":
En modo de prueba, el escenario
succeeded entrega una 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.