Crea una Checkout Session y devuelve su representación completa, incluida la url a la que se deriva al cliente final para pagar o inscribir un medio de pago.
El campo mode fija qué hace la sesión: PAYMENT cobra deudas o un monto, ENROLLMENT inscribe un medio de pago automático y SAVE_PAYMENT_INSTRUMENT guarda una cuenta bancaria sin cobrar.
Si se envía customer_data sin billing_data.id_customer, el Customer se crea o se actualiza con esos datos. Si se envía invoice_data, se crea una deuda nueva y la sesión queda asociada a ella.
expiration_datetime se interpreta en formato ISO 8601 (sin zona horaria se asume UTC) y no puede quedar en el pasado. Cuando se envía, la sesión se expira de forma automática en esa fecha; si se omite, permanece abierta hasta expirarla manualmente.
Cuando la sesión queda asociada a un Customer y no se envía skip_message_trigger, se le manda el enlace de pago por el canal indicado en communication_channel. El envío es best-effort: si falla, la Checkout Session se crea igual. Si en cambio se envía id_template, la plantilla debe existir: si no, la solicitud se rechaza con 400 y la sesión no se crea.
Si se envía unique_external_id, ese valor no puede repetirse dentro de la organización: cuando ya existe una Checkout Session con él, la solicitud se rechaza con 409 y no se crea nada — ni la sesión, ni el Customer, ni la deuda. Sirve para que un reintento por timeout no termine generando dos sesiones para la misma operación.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||