Skip to main content

Pre-requisitos

Tienes credenciales de producción (int_id_comercio, usuario, clave).
Configuraste tu URL de retorno (estática en el comercio, o vas a enviarla con el código 104).
Si aceptas PSE, tienes tu código de servicio.

Armar el request

El body es un objeto con cuatro propiedades:

Campos obligatorios mínimos

InformacionPago.flt_total_con_iva
number
required
Total a cobrar con IVA incluido.
InformacionPago.str_id_pago
string
required
Tu identificador único del pago. Máximo 30 caracteres, sin ceros a la izquierda.
InformacionPago.str_descripcion_pago
string
required
Concepto del pago (el usuario lo ve en el formulario).
InformacionSeguridad.int_id_comercio + str_usuario + str_clave
credenciales
required
Tus credenciales.
InformacionSeguridad.int_modalidad
integer
required
Valor fijo (-1 según texto normativo del instructivo oficial).
AdicionalesConfiguracion[código 50]
string
required
Solo si aceptas PSE. Tu código de servicio PSE.

Obligatorios adicionales para certificación PSE

InformacionPago.str_id_cliente (documento del pagador)
InformacionPago.str_tipo_id (tipo de documento)
InformacionPago.flt_valor_iva (IVA de la transacción)

Ejemplo completo

Al recibir la respuesta

1

Valida int_codigo

Si no es 1, loguea el error y muestra al usuario una pantalla amigable (ej. “Hubo un problema, inténtalo de nuevo”).
2

Persiste el pago en tu BD

Guarda str_id_pago, str_url, flt_total_con_iva, timestamp, estado = pendiente. Necesitarás estos datos para la sonda y el callback.
3

Redirige al usuario

Devuelve un 302 Redirect hacia str_url, o abre en nueva pestaña si tu UX lo prefiere.
4

No modifiques str_url

El parámetro rut es un token criptográfico. Cualquier modificación invalida el pago.

Errores comunes

Próximo paso

Redirigir al usuario →

Cómo redirigir correctamente y qué esperar.