Invoice por cada ciclo de facturación. Una invoice representa el monto que tu cliente debe por un período dado. Con charge_automatically, Fintoc intenta cobrar la invoice usando el método de pago inscrito. Con send_invoice, la invoice queda open para que la cobres tú.
Fintoc crea las invoices de la suscripción por ti. También puedes crear tus propias invoices por montos que la suscripción no cubre, y cobrar cualquier invoice abierta bajo demanda.
Para detalles completos sobre invoices, consulta el Invoice object.
Invoices en el flujo de suscripción
Después del eventocheckout_session.finished, Fintoc crea la primera invoice y cobra el método de pago inscrito. Con charge_automatically, la suscripción queda incomplete hasta que ese primer pago tiene éxito, y ahí pasa a active. Maneja los siguientes eventos relacionados a invoices junto con los eventos posteriores a la sesión en Crea suscripciones para tu cliente:
Mes 1: Cuando se crea la suscripción, Fintoc genera la primera invoice y la finaliza sin la ventana de una hora en
draft. Luego Fintoc cobra el método de pago inscrito. En caso de éxito, recibes invoice.created, seguido de invoice.finalized, invoice.payment_succeeded, invoice.paid y payment_intent.succeeded.
Mes 2 en adelante: En cada renovación de ciclo de facturación, según el billing_cycle_anchor de la suscripción, Fintoc crea una nueva invoice en estado draft. Después de 1 hora, Fintoc finaliza la invoice, la pasa a open y cobra el método de pago inscrito. Usa esa hora para ajustar la invoice antes de que Fintoc la cobre. En caso de éxito, recibes invoice.finalized, invoice.payment_succeeded e invoice.paid. En caso de falla, recibes invoice.payment_failed.
Fintoc finaliza las invoices de una suscripción por ti. Una invoice que creas tú queda en draft hasta que la finalices, como se describe en Cobra un monto fuera del ciclo de facturación.
Recuperar un pago fallido
Cuando un cobro automático falla, Fintoc emiteinvoice.payment_failed. Para recuperar el pago, envía el hosted_invoice_url de la invoice a tu cliente por tu propio canal, como email o WhatsApp. La página alojada permite que tu cliente pague usando los métodos de pago habilitados en la cuenta de tu organización. Un pago exitoso crea un payment_intent en la invoice y salda la deuda. El método de pago inscrito de la suscripción sigue siendo válido, y Fintoc cobra el siguiente ciclo automáticamente.
El hosted_invoice_url queda disponible en el objeto Invoice una vez que la invoice alcanza el estado open. Para más detalles, consulta el Invoice object.
Una invoice acepta solo un pago a la vez. Si abres el
hosted_invoice_url mientras un cobro automático está en curso, la página muestra que hay un pago de invoice en progreso y el enlace de pago queda deshabilitado. Fintoc vuelve a habilitar el enlace de pago si el cobro automático falla.Cobra un monto fuera del ciclo de facturación
Fintoc emite las invoices de la suscripción por ti. También puedes crear una invoice tú mismo por un monto que la suscripción no cubre. Úsala para un ajuste puntual, un servicio extra o un cobro fuera del calendario de facturación. Créala para el mismocustomer, con el método de pago inscrito durante el checkout como default_payment_method.

Node
draft, con subscription en null. La invoice le cobra al customer, no a la suscripción, así que no cambia el ciclo de facturación ni el monto de la suscripción. Finaliza la invoice para pasarla a open y cobrar el default_payment_method. A diferencia de las invoices de una suscripción, que Fintoc finaliza por su cuenta después de una hora en draft, una invoice que creas tú queda en draft hasta que la finalices.
Servidor
invoice.*, guarda el mismo historial en payments y expone el mismo hosted_invoice_url como respaldo cuando un cobro falla. También puedes reintentar un cobro fallido con Pagar una invoice, contra el método de pago inscrito o contra otro método activo del mismo customer.
Para el flujo on-demand completo, incluyendo cómo cobrar una invoice a un cliente sin método de pago inscrito, consulta Guardar un método de pago para cobros futuros.
Cobrar las invoices tú mismo en vez de cobrar automáticamente
Concollection_method en send_invoice, Fintoc deja de hacer cobros automáticos. Fintoc igual emite una invoice por período de facturación, pero cada invoice queda open y tú decides cómo cobrarla. Tienes tres formas de saldar una invoice abierta:
- Enviarle a tu cliente el link de pago que está en
hosted_invoice_urly dejar que pague en la página alojada por Fintoc. - Cobrar la invoice a pedido con Pagar una invoice, usando el payment method asociado a la suscripción.
- Cobrar la plata fuera de Fintoc, por transferencia o en efectivo, y marcar la invoice como pagada. Fintoc lo registra con
external_paymententrue.
send_invoice nunca cobra automáticamente, no requiere payment method. Para crear una suscripción así con la API, sin pasar a tu cliente por un enrolamiento de checkout, consulta Emite invoices sin cobrar. Igual puedes asociar un payment method después, lo que te permite cobrar invoices a pedido.
Fintoc no contacta a tu cliente por ningún canal. Contactarlo es tu responsabilidad, cualquiera sea la opción que uses.
Cobrar las invoices tú mismo tiene tres consecuencias:
- Las invoices impagas se acumulan. Cada período de facturación agrega una invoice, y cada una se salda por separado.
- La suscripción nace
active, y eso no significa que tu cliente haya pagado. Consend_invoiceno hay cobro que esperar, así que Fintoc se salta el estadoincompleteque usa concharge_automatically. Sigue elstatusde cada invoice para saber qué te debe tu cliente. - Solo Actualizar una suscripción cambia el modo de cobro. Asociar un payment method no cambia la suscripción a
charge_automatically.
Probar la creación de invoice con estado draft
Para probar una invoice que se crea en estado draft, crea una suscripción con un line item usando el nombre de producto sandbox_draft:
Servidor
Node
Checkout Session:
draft, de modo que puedas editar sus ítems con el endpoint Add lines antes de que la invoice salga de draft.