Skip to main content
POST
/
payments
/
execute
Ejecutar pago
curl --request POST \
  --url https://your-app-domain.com/payments/execute \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "amount": 15000,
  "currency": "CLP",
  "description": "Pedido #12345 - Restaurante XYZ",
  "transactionId": "txn_abc123def456",
  "orderId": "order_xyz789",
  "externalUserId": "user_12345",
  "transactionCode": "app_txn_987654"
}'
{
  "status": "completed",
  "receipt": "REC-2024-001234",
  "operationNumber": "OP-987654321",
  "message": "Pago procesado exitosamente"
}
Este endpoint permite a Justo ejecutar el pago después de que la verificación y autorización hayan sido exitosas. Durante este paso, la aplicación contenedora debe deducir el monto de la cuenta del usuario y acreditarlo en la cuenta del destinatario.
Este endpoint solo debe ser llamado después de una verificación exitosa mediante el endpoint /payments/verify.

Cuerpo de la solicitud

Ejemplo de solicitud

{
  "amount": 15000,
  "currency": "CLP",
  "description": "Pedido #12345 - Restaurante XYZ",
  "transactionId": "txn_abc123def456",
  "orderId": "order_xyz789",
  "externalUserId": "user_12345",
  "transactionCode": "app_txn_987654"
}

Respuesta exitosa

status
string
required
Estado del procesamiento. Valores posibles: completed, pending, failed.
receipt
string
Número de recibo o operación que identifica la transacción desde el lado de la aplicación contenedora (opcional).
operationNumber
string
Número de operación generado por la aplicación contenedora (opcional).
message
string
Mensaje descriptivo sobre el resultado del procesamiento (opcional).

Ejemplo de respuesta exitosa

{
  "status": "completed",
  "receipt": "REC-2024-001234",
  "operationNumber": "OP-987654321",
  "message": "Pago procesado exitosamente"
}

Respuesta pendiente

Si el pago queda en estado pendiente (por ejemplo, requiere confirmación adicional):
{
  "status": "pending",
  "message": "Pago en proceso, se notificará el resultado"
}

Respuesta fallida

Si el procesamiento falla:
{
  "status": "failed",
  "message": "Error al procesar el pago: [descripción del error]"
}

Códigos de estado

Verificación de estado de transacción

Para reducir posibles problemas de conexión (timeout), Justo puede necesitar verificar el estado de una transacción. Se recomienda implementar un endpoint adicional que permita consultar el estado de una transacción usando:
  • El transactionCode proporcionado durante la verificación
  • El transactionId de Justo
Este endpoint debe retornar el estado actual de la transacción (completed, pending, failed) para permitir que Justo confirme, rechace o deje en estado pendiente la transacción en caso de fallas.

Notas importantes

Durante este paso, la aplicación contenedora debe:
  • Deducir el monto de la cuenta del usuario
  • Acreditar el monto en la cuenta del destinatario (comercio)
  • Generar un recibo o número de operación si aplica
  • Registrar la transacción para auditoría
Si el procesamiento queda en estado pending, es responsabilidad de la aplicación contenedora notificar a Justo cuando el estado cambie, o proporcionar un endpoint para que Justo consulte el estado periódicamente.
El receipt o operationNumber retornado puede ser usado por Justo para referencia y auditoría de la transacción.

Authorizations

Authorization
string
header
required

Propuesta de esquema de autenticación. Token de autenticación que debe ser coordinado entre Justo y la aplicación contenedora. El mecanismo específico debe acordarse entre ambos equipos técnicos.

Body

application/json

Propuesta de esquema de solicitud. Estructura propuesta para la ejecución de pagos que Justo enviará a la aplicación contenedora.

amount
number
required

Monto de la transacción a procesar

Example:

15000

currency
string
required

Moneda de la transacción

Example:

"CLP"

description
string
required

Descripción del cargo que se realizará al usuario

Example:

"Pedido #12345 - Restaurante XYZ"

transactionId
string
required

Identificador único de la transacción generado por Justo

Example:

"txn_abc123def456"

orderId
string
required

Identificador del pedido asociado a esta transacción

Example:

"order_xyz789"

externalUserId
string
required

Identificador del usuario en la aplicación contenedora

Example:

"user_12345"

transactionCode
string

Código de transacción retornado por el endpoint de verificación

Example:

"app_txn_987654"

Response

La solicitud fue procesada

Propuesta de esquema de respuesta. Estructura propuesta que la aplicación contenedora debe retornar a Justo después de ejecutar un pago.

status
enum<string>
required

Estado del procesamiento

Available options:
completed,
pending,
failed
Example:

"completed"

receipt
string

Número de recibo o operación que identifica la transacción

Example:

"REC-2024-001234"

operationNumber
string

Número de operación generado por la aplicación contenedora

Example:

"OP-987654321"

message
string

Mensaje descriptivo sobre el resultado del procesamiento

Example:

"Pago procesado exitosamente"