HomeGuíasAPI ReferenceChangelog
Log In
API Reference

Crear Checkout Session

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.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
enum
required

País de la organización sobre la que se opera, como primer segmento de la ruta: cl (Chile), mx (México) o br (Brasil).

Allowed:
Body Params

Datos con los que se crea una Checkout Session.

object | null

Datos propios de la organización que se guardan junto a la Checkout Session.

AdditionalQueryParametersRequest | null

Parámetros que se agregan a la URL del checkout.

Indica si el cliente final puede abonar solo una parte del total.

billing_data
object
required

Datos de facturación con los que se cobra o se inscribe el medio de pago.

object | null

CheckoutConfig parcial y opcional que se aplica como override a nivel de sesión sobre la configuración de checkout resuelta. Sigue la convención _override: todos los campos son opcionales.

CommunicationEngineStrictChannel | null

Canal por el que se le envía al Customer el enlace de pago: correo (mail), SMS (sms) o WhatsApp (wsp). Cada uno exige su dato de contacto en customer_data: mail necesita mail, y sms y wsp necesitan phone_number. Si falta el dato del canal elegido, la creación se rechaza. Es excluyente con id_template.

CustomerDataRequest | null

Datos con los que se busca o se crea el Customer de la operación.

Fecha y hora, en formato ISO 8601, en la que la Checkout Session expira.

length ≤ 128

Identificador que entrega la organización para reconocer después la operación.

Flow con el que se crea la Checkout Session.

object | null

Información no sensible con la que el cliente final completó el formulario.

Plantilla con la que se le envía al Customer el mensaje con el enlace de pago. Debe existir.

InvoiceDataRequest | null

Datos de la deuda que se crea junto con la Checkout Session.

string
enum
required

Qué operación completa el cliente final en la sesión. Se fija al crearla y define qué datos exige y qué deja hecho al completarse. PAYMENT cobra deudas o un monto puntual y termina en un pago, ENROLLMENT inscribe un medio de pago automático para cobrarle después, y SAVE_PAYMENT_INSTRUMENT solo registra una cuenta bancaria del Customer, sin cobrar ni inscribir un medio de pago, y es el único modo que no lleva frecuencia de pago.

Allowed:
PaymentOptionsConfigurationRequest | null

Configuración con la que se muestra y procesa cada medio de pago del checkout.

PriceChangeRequest | null

Ajuste de precio que se aplica solo a esta Checkout Session, disponible en sesiones SaaS de pago único.

RedirectionData | null

URLs a las que se redirige al cliente final al terminar la operación.

Indica si se omite el envío del enlace de pago al Customer.

length ≤ 128

Identificador propio de la organización que, si se envía, no puede repetirse

Headers
date

Versión del API para esta petición, como cualquier fecha YYYY-MM-DD. Fija el contrato de la respuesta; si se omite, se deriva de la fecha de creación de la organización.

Responses

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json