Glosario de campos
A continuación se muestra el glosario consolidado de los esquemas importados:
Diccionario de Datos
Documentación técnica de campos y estructuras de respuesta.
accessToken
stringToken JWT para usar en los headers Authorization.
accountBank
objectSin descripción disponible.
- number:
- rif:
- phoneNumber:
accountBank_id
string (uuid)Identificador único de la cuenta bancaria en nuestros sistemas.
accountsBank
arraySin descripción disponible.
accreditSpidi_id
numberID de la acreditación en SPIDI.
action_date
string (date-time)Fecha y hora de la acción del pagador, en formato ISO 8601 con sufijo Z (UTC).
active_now
arrayConjunto actual de todas las Solicitudes SPIDI activas en una parada, únicamente con estado 'pending'.
added
arrayLista de Solicitudes SPIDI recién agregadas a una Parada.
address
stringDirección del comercio.
adjustedDebit
numberMonto ajustado del débito.
agreement_id
string (uuid)Identificador único del acuerdo de liquidación. Debe ser UUID v4.
- POST/api/v1/ext/agreements(Response (200))
- POST/api/v1/ext/payment-sessions/buttons(Request)
- POST/api/v1/ext/payment-sessions/buttons(Response (400))
- POST/api/v1/ext/payment-sessions/buttons(Response (401))
- POST/api/v1/ext/payment-sessions/buttons(Response (422))
- POST/api/v1/ext/payment-sessions/buttons(Response (500))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Request)
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (200))
agreement_rules
array(**En Desarrollo**) Reglas de acuerdo. En caso de usar origin_bank_code y destination_bank_account_id, se aplicará una regla de ruteo por banco de origen. Cada regla define a qué cuenta bancaria se debe enviar el dinero según el banco del pagador.
agreementRecipient_id
string (uuid)UUID global SPIDI del agreement de recepción. Este ID se usará en acuerdos de distribución para identificar al receptor del split. (Requerido en distribution)
allowAmountChange
booleanSi es true, permite editar el monto en el POS.
- POST/api/v1/merchants/{merchantId}/transactions(Request)
- POST/api/v1/merchants/{merchantId}/transactions(Response (201))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (200))
already_present
arrayLista de Solicitudes SPIDI que ya estaban activas en una Parada.
amount
number (double)Monto en la moneda especificada en el tipo de moneda'currency' con 2 decimales
amountAccredit
number (double)Monto en bolívares con 2 decimales que especifica la cantidad de dinero que sera acreditado en la cuenta recaudadora. Notese que este campo incluye conceptos de la logica de negocio de SPIDI por lo que no deberia ser usado en las api publicas
amountCrypto
number (double)Monto pagado en criptomoneda.
amountReference
number (double)Monto de referencia en la moneda especificada en currencyReference con 2 decimales.
amountVes
number (double)Monto en bolívares con 2 decimales.
amountVesCalculate
number (double)Monto en bolívares. Si el currency_reference es diferente a VES, este monto se calculó con base a la tasa. Posee 2 decimales
amountVesCheck
number (double)Monto en bolívares liquidado.
amountVesCredited
number (double)Monto neto acreditado al receptor en bolívares, luego de aplicar las comisiones correspondientes. Siempre tiene 2 decimales.
amountWithoutDecimals
number (integer)Monto en la moneda especificada en el tipo de moneda'currency' sin decimales
android_id
stringSin descripción disponible.
app_instance_id
stringSin descripción disponible.
applied_order
arrayOrden final aplicado a las Solicitudes SPIDI en una parada.
authentication--loginValidationError
stringError general de autenticación.
authorization--loginValidationError
stringError de autorización.
bank_code
stringCódigo del banco. Solo acepta 3–4 dígitos (p.ej., 105 o 0137).
bank_commissions_ves
number (decimal(12,2))Comisión bancaria total cobrada en bolívares para la liquidación. Eco del request: no.
bank_name
stringNombre comercial del banco. Eco del request: no.
bank_reference_id
stringReferencia bancaria del pago. Eco del request: no.
bankCode
stringCódigo del banco. Solo acepta 3–4 dígitos (p.ej., 105 o 0137).
- GET/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/settlements(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/settlements(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/settlements(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/settlements/{batchNumber}(Response (200))
bankTransactionId
stringID de la transacción bancaria.
batch_active_now
arrayConjunto final de activos tras la operación (operación replace)
batch_added
arraySesiones agregadas como activas (operación add)
batch_already_present
arraySesiones ya activas, no-op (operación add)
batch_errors
objectDetalle de errores solo si success=false en operaciones batch
batch_id
stringIdentificador único de un lote (batch) procesado.
- POST/api/v1/ext/payment-stops(Response (200))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (201))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (207))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (200))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (207))
batch_operation_payment_stops_payment_sessions_item
objectSin descripción disponible.
- stop_id:stringIdentificador de la Parada sobre la que se ejecuta la operación. Debe pertenecer al comercio autenticado.Ejemplo: "stp_111"
- op:stringOperación a ejecutar: **add** (agregar sesiones), **remove** (desasociar sesiones), **replace** (reemplazar conjunto activo), **clear** (limpiar todos los activos)Valores posibles: add, remove, replace, clearEjemplo: "add"
- session_ids:arrayIDs de sesiones involucradas. Requerido para operaciones add, remove y replace. Solo sesiones en estado **pending** pueden activarse (add/replace).Ejemplo: ["sess_A","sess_B"]
bcv_exchange_rate
number (double)Tasa oficial usada para la conversión
bcv_rate_eur_ves
number (decimal(10,4))Tasa oficial BCV de EUR a VES usada en el cálculo del monto en bolívares. Eco del request: no.
bcv_rate_usd_ves
number (decimal(10,4))Tasa oficial BCV de USD a VES usada en el cálculo del monto en bolívares. Eco del request: no.
branch
stringSin descripción disponible.
button_config
arrayConfiguración dinámica opcional para personalizar la experiencia comercial del botón de pago.
cancellation_category
string**Clasificación técnica obligatoria.** Permite segmentar el motivo de cancelación para análisis de conversión y auditoría. **Definiciones:** * `INCORRECT_DATA`: Datos de pago o cliente inválidos (ej. CI/RIF erróneo). * `ALTERNATIVE_PAYMENT_RECEIVED`: El cliente pagó por otra vía (ej. efectivo o transferencia directa). * `OTHER`: Motivos no clasificados previamente (requiere nota adicional).
cancellation_categoryCompleted
string**Clasificación técnica obligatoria.** Permite segmentar el motivo de cancelación para análisis de conversión y auditoría. **Definiciones:** * `INCORRECT_DATA`: Datos de pago o cliente inválidos (ej. CI/RIF erróneo). * `ALTERNATIVE_PAYMENT_RECEIVED`: El cliente pagó por otra vía (ej. efectivo o transferencia directa). * `ORDER_SUPERSEDED`: La orden fue reemplazada por una nueva versión o corrección. * `CUSTOMER_REQUEST`: El cliente solicitó explícitamente cancelar la intención de compra. * `INVENTORY_UNAVAILABILITY`: Ruptura de stock o servicio no disponible al momento de procesar. * `FRAUD_SUSPICION`: Bloqueo preventivo por patrones de riesgo o validación de seguridad fallida. * `DUPLICATE_SESSION`: Se detectó otra sesión activa para la misma operación. * `ADMINISTRATIVE_OVERRIDE`: Cancelación forzada por un administrador del sistema o soporte técnico. * `OTHER`: Motivos no clasificados previamente (requiere nota adicional).
cancellation_messageAudit
stringNota de auditoría interna. Espacio para justificaciones técnicas o administrativas. Este contenido no es visible para el cliente final y se utiliza exclusivamente para trazabilidad recomienda usarlo con esta estructura: (quién, cuándo, por qué).
cancellation_messageUser
stringMensaje para el usuario final cuado por ejemplo el administrador necesita dar una instrucción específica.
cancellationDara
Sin descripción disponible.
- POST/api/v1/merchants/{merchantId}/transactions(Response (201))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (200))
cleared
booleanIndica si se aplicó una operación de limpieza (`op=clear`) sobre las Solicitudes SPIDI activas en la parada.
clientIdentification
stringCédula o RIF del cliente.
- POST/api/v1/merchants/{merchantId}/transactions(Request)
- POST/api/v1/merchants/{merchantId}/transactions(Response (201))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (200))
commissionCharged
booleanIndica si se cobró comisión.
commissionDebitId
numberID del débito de comisión.
commitAt
string (date-time)Fecha y hora de la confirmacion de la operacion (ISO 8601).
- POST/api/v1/merchants/{merchantId}/transactions(Response (201))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Request)
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (200))
concept
stringConcepto de la transacción.
confirmData
objectDatos de confirmación bancaria. **Este campo SOLO está definido y presente cuando el 'status' es 'PAID_COMPLETE'.** En estados pendientes o cancelados, este campo será null o no existirá.
- authorizationCode:stringCódigo de autorización bancaria.Ejemplo: "171599"
- processCode:stringEjemplo: "002000"
- commitAt:
- amountPaid:
- currencyPaid:
- trace:stringNúmero de traza (Trace).Ejemplo: "000535"
- utcDate:stringTimestamp UTC del banco.Ejemplo: "1007151715"
- cardTypeForRpt:stringTipo de tarjeta (C=Crédito, D=Débito).Ejemplo: "C"
- visOrMccCard:stringFranquicia de la tarjeta.Ejemplo: "MCC"
- batchNumber:
- POST/api/v1/merchants/{merchantId}/transactions(Response (201))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (200))
confReceiptMethodCrixtoForValidation
objectDefine la configuracion para el método de recepción de los fondos en la validaciones: * `Si type=movil-pay`: Se recibe el dinero en la cuenta recaudadora usando pago móvil. * `Si type=transfer`: Se recibe el dinero en la cuenta recaudadora usando transferencias inmediatas este campo hace que sea necesario pasarle el campo `amountAccredit` . * `Si type=wallet`: Se recibe el dinero en la wallet de Spidi.
- type:
- amountAccredit:
container_session_id
stringID de la sesión contenedora cuando el pago se realizó vía container.
continueOnerror
booleanIndica si el procesamiento debe continuar con el resto de los ítems aunque alguno falle en operaciones de batch. - Si es `false`, se detiene en el primer error y las operaciones ya exitosas permanecen válidas. - Si es `true`, continúa procesando hasta el final y luego reporta las fallas acumuladas.
created_at
string (date-time)Fecha y hora de creación del recurso en formato ISO 8601.
- POST/api/v1/ext/agreements(Response (200))
- POST/api/v1/ext/payment-sessions/buttons(Response (200))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- POST/api/v1/ext/split-receiving-agreements(Response (200))
- GET/api/v1/ext/payment-stops(Response (200))
- POST/api/v1/ext/payment-stops(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (200))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (200))
created_by
stringIdentificador del usuario que creó el recurso administrable.
createdAt
string (date-time)Fecha y hora de creación en formato ISO 8601.
createDate
string (date-time)Fecha de creación.
creditSpidi_id
stringID de la liquidación al receptor del pago.
creditWebhook
objectSin descripción disponible.
- id:string
- amount_ves_credited:
- bank_commissions_ves:
- receive_date:
- bank_name:
- bank_reference_id:
- recipient:
crypto
booleanIndica si se permiten pagos con criptomonedas en la configuración correspondiente. La liquidación siempre ocurre en bolívares.
currency
stringMoneda en la que se realiza la transacción.
currency_crypto
stringMoneda cripto utilizada en el pago (por ejemplo, USDT).
currencyReference
stringMoneda de referencia que se fija para el pago. Usada para calcular el monto en bolívares con la tasa vigente.
cursor_by_stop
objectMapa de cursores por parada para continuar la paginación de sesiones en múltiples paradas, usando pares `stop_id → cursor` obtenidos de una respuesta previa.
customer_ref
stringReferencia del cliente asociada a una sesión o parada.
data
objectObjeto principal de datos de la operación, que contiene el cuerpo del recurso creado, consultado o afectado (acuerdo, sesión, parada, webhook, etc.).
- POST/api/v1/merchants(Response (201))
- POST/api/v1/merchants/auth/login(Response (200))
- POST/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/pairing(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/pairing/activate(Response (200))
- POST/api/v1/merchants/{merchantId}/transactions(Response (201))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (200))
- GET/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/settlements(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/settlements(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/settlements(Response (200))
- POST/api/v1/ext/agreements(Response (200))
- POST/api/v1/ext/partner(Response (201))
- POST/api/v1/ext/payment-sessions/buttons(Response (200))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Response (400))
- POST/api/v1/ext/payment-sessions/request/batch(Response (401))
- POST/api/v1/ext/payment-sessions/request/batch(Response (403))
- POST/api/v1/ext/payment-sessions/request/batch(Response (409))
- POST/api/v1/ext/payment-sessions/request/batch(Response (422))
- POST/api/v1/ext/payment-sessions/request/batch(Response (500))
- POST/api/v1/payment-session/{session_id}/expiration(Response (200))
- POST/api/v1/ext/split-receiving-agreements(Response (200))
- GET/api/v1/ext/payment-stops(Response (200))
- POST/api/v1/ext/payment-stops(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}(Response (200))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (200))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (200))
date
string (date)Fecha
debit_status
stringEstado del débito.
debitId
stringIdentificador del débito (string para path).
deeplinkConfig
objectConfiguración para el retorno a la app (Deep Linking). Estos campos se usan cuando la app merchant se ubica en el punto, pues al terminar la transacción de compra, el app financiero va a abrir la app en la pantalla específica esperada por parte del merchant.
- returnPackage:stringEjemplo: "com.tuapp.kiosco"
- returnActivity:stringEjemplo: "com.tuapp.kiosco.PaymentResultActivity"
- POST/api/v1/merchants/{merchantId}/transactions(Request)
- POST/api/v1/merchants/{merchantId}/transactions(Response (201))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (200))
default_bank_account_id
string (uuid)UUID de la cuenta bancaria por defecto que se utilizará para la liquidación.
- POST/api/v1/ext/agreements(Request)
- POST/api/v1/ext/agreements(Response (200))
- POST/api/v1/ext/split-receiving-agreements(Request)
- POST/api/v1/ext/split-receiving-agreements(Response (200))
- POST/api/v1/ext/split-receiving-agreements(Response (400))
- POST/api/v1/ext/split-receiving-agreements(Response (401))
- POST/api/v1/ext/split-receiving-agreements(Response (409))
- POST/api/v1/ext/split-receiving-agreements(Response (422))
- POST/api/v1/ext/split-receiving-agreements(Response (500))
deleted_at
string (date-time)Fecha y hora de eliminación expresada en formato ISO 8601.
description
stringDescripción del acuerdo o del concepto de pago asociado a una sesión.
- POST/api/v1/ext/agreements(Request)
- POST/api/v1/ext/agreements(Response (200))
- POST/api/v1/ext/payment-sessions/buttons(Request)
- POST/api/v1/ext/payment-sessions/buttons(Response (200))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Request)
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- POST/api/v1/ext/split-receiving-agreements(Request)
- POST/api/v1/ext/split-receiving-agreements(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (200))
destination_bank_account_id
stringUUID de la cuenta bancaria de destino para un banco de origen específico.
- POST/api/v1/ext/agreements(Request)
- POST/api/v1/ext/agreements(Response (200))
- POST/api/v1/ext/split-receiving-agreements(Request)
- POST/api/v1/ext/split-receiving-agreements(Response (200))
- POST/api/v1/ext/split-receiving-agreements(Response (400))
- POST/api/v1/ext/split-receiving-agreements(Response (401))
- POST/api/v1/ext/split-receiving-agreements(Response (409))
- POST/api/v1/ext/split-receiving-agreements(Response (422))
- POST/api/v1/ext/split-receiving-agreements(Response (500))
device_fingerprint
stringopcional
device_serial
stringSin descripción disponible.
distribution
arrayLista de reglas/destinatarios del split. Debe tener ≥ 1 ítem. La suma de amount_reference debe ser menor al amount total de la sesión, porque la diferencia restante se asigna automáticamente al owner, quien siempre debe recibir una parte del pago. (Requerido cuando split=true)
due_date_link
string (date-time)Fecha y hora límite de vencimiento de la Solicitud SPIDI (link).
due_date_reached_behavior
stringComportamiento configurado para cuando la sesión alcance su fecha de vencimiento.
due_date_session
string (date-time)Fecha y hora límite de vencimiento de la Solicitud SPIDI (sesión).
duplicates
arrayLista de IDs repetidos detectados al procesar una operación de reordenamiento o batch.
Dirección de correo electrónico.
error
objectObjeto de error que contiene información estructurada sobre el código y el mensaje de error cuando la operación no es exitosa. Eco del request: no.
errors
objectDetalles específicos de los errores de validación.
- POST/api/v1/merchants(Response (400))
- POST/api/v1/merchants/auth/login(Response (401))
- POST/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/pairing(Response (400))
- POST/api/v1/pos-terminals/{serialNumber}/pairing/activate(Response (400))
- POST/api/v1/merchants/{merchantId}/transactions(Response (400))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (404))
- POST/api/v1/merchants/{merchantId}/transactions/{orderId}/invalidation(Response (409))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (400))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (401))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (403))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (404))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (409))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/invalidation/commit(Response (409))
- GET/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/settlements(Response (400))
- POST/api/v1/pos-terminals/{serialNumber}/settlements(Response (400))
- GET/api/v1/pos-terminals/{serialNumber}/settlements/{batchNumber}(Response (404))
- POST/api/spidipagos/login(Response (400))
- POST/api/spidipagos/login(Response (401))
- POST/api/spidipagos/login(Response (422))
- POST/api/spidipagos/login(Response (429))
- POST/api/spidipagos/login(Response (500))
- POST/api/v1/ext/agreements(Response (400))
- POST/api/v1/ext/agreements(Response (401))
- POST/api/v1/ext/agreements(Response (403))
- POST/api/v1/ext/agreements(Response (409))
- POST/api/v1/ext/agreements(Response (422))
- POST/api/v1/ext/agreements(Response (429))
- POST/api/v1/ext/agreements(Response (500))
- POST/api/v1/ext/payment-sessions/buttons(Response (400))
- POST/api/v1/ext/payment-sessions/buttons(Response (401))
- POST/api/v1/ext/payment-sessions/buttons(Response (422))
- POST/api/v1/ext/payment-sessions/buttons(Response (500))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (400))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (401))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (403))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (404))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (422))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (500))
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Response (400))
- POST/api/v1/ext/payment-sessions/request/batch(Response (401))
- POST/api/v1/ext/payment-sessions/request/batch(Response (403))
- POST/api/v1/ext/payment-sessions/request/batch(Response (409))
- POST/api/v1/ext/payment-sessions/request/batch(Response (422))
- POST/api/v1/ext/payment-sessions/request/batch(Response (500))
- POST/api/v1/payment-session/{session_id}/expiration(Response (422))
- POST/api/v1/ext/split-receiving-agreements(Response (400))
- POST/api/v1/ext/split-receiving-agreements(Response (401))
- POST/api/v1/ext/split-receiving-agreements(Response (409))
- POST/api/v1/ext/split-receiving-agreements(Response (422))
- POST/api/v1/ext/split-receiving-agreements(Response (500))
- GET/api/v1/ext/payment-stops(Response (400))
- POST/api/v1/ext/payment-stops(Response (200))
- POST/api/v1/ext/payment-stops(Response (400))
- POST/api/v1/ext/payment-stops(Response (401))
- POST/api/v1/ext/payment-stops(Response (422))
- POST/api/v1/ext/payment-stops(Response (500))
- GET/api/v1/ext/payment-stops/{stop_id}(Response (404))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (400))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (401))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (422))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (500))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (400))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (403))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (404))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (500))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (400))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (404))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (201))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (207))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (400))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (401))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (409))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (422))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (429))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (500))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (200))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (207))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (400))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (401))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (409))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (422))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (429))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (500))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (400))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (401))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (403))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (422))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (500))
event
stringTipo de evento reportado en un webhook, indicando la acción ocurrida. Eco del request: no.
exchange_rate_from
stringMoneda base utilizada en la tasa de cambio aplicada (por ejemplo, una moneda fuerte desde la cual se convierte a VES). Este campo puede estar obsoleto en el nuevo estándar. Eco del request: no.
exchange_rate_to
stringMoneda destino utilizada en la tasa de cambio aplicada, típicamente la moneda local (VES) a la que se convierte. Este campo puede estar obsoleto en el nuevo estándar. Eco del request: no.
expirationBehavior
stringComportamiento aplicado a la sesión o enlace cuando se maneja su expiración. Eco del request: no.
expire_behavior_link
stringComportamiento configurado para la Solicitud SPIDI cuando alcanza su fecha de vencimiento.
expiredAt
string (date-time)Fecha y hora en que la Solicitud SPIDI pasó al estado 'expired', en formato ISO 8601. (incluye solo cuando la sesión expira)
expiresIn
integerTiempo en segundos antes de expirar.
failed_count
integerNúmero de sesiones que fallaron al crear en el batch.
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Response (400))
- POST/api/v1/ext/payment-sessions/request/batch(Response (401))
- POST/api/v1/ext/payment-sessions/request/batch(Response (403))
- POST/api/v1/ext/payment-sessions/request/batch(Response (409))
- POST/api/v1/ext/payment-sessions/request/batch(Response (422))
- POST/api/v1/ext/payment-sessions/request/batch(Response (500))
failure_url
string (uri)URL de redirección que se utiliza cuando un intento de pago falle.
field
stringError genérico de campo.
- POST/api/v1/ext/agreements(Response (400))
- POST/api/v1/ext/agreements(Response (401))
- POST/api/v1/ext/agreements(Response (403))
- POST/api/v1/ext/agreements(Response (409))
- POST/api/v1/ext/agreements(Response (422))
- POST/api/v1/ext/agreements(Response (429))
- POST/api/v1/ext/agreements(Response (500))
- POST/api/v1/ext/payment-sessions/buttons(Response (400))
- POST/api/v1/ext/payment-sessions/buttons(Response (401))
- POST/api/v1/ext/payment-sessions/buttons(Response (422))
- POST/api/v1/ext/payment-sessions/buttons(Response (500))
from_date
string (date-time)Fecha y hora mínima (inclusive) desde la cual devolver resultados. Formato ISO 8601 UTC.
has_next
booleanIndica si existe una página siguiente en los resultados de la paginación. Eco del request: no.
id
string (uuid)Identificador único en formato UUID.
- POST/api/v1/merchants(Response (201))
- POST/api/v1/merchants/{merchantId}/transactions(Response (201))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (200))
- GET/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/settlements(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/settlements(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/settlements(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/settlements/{batchNumber}(Response (200))
idempotency_key
stringError relacionado con la clave de idempotencia.
idempotency-key
string (uuid)Clave de idempotencia para evitar duplicados. Debe ser UUID v4.
identification
stringIdentificación del usuario o cliente.
identificationLegal
stringIdentificación legal puede ser RIF o CI
identifier
stringIdentificador del pagador, interpretado según el valor de identifier_label. Ejemplo: Nro de orden, Nombre, etc.
- POST/api/v1/ext/payment-sessions/buttons(Request)
- POST/api/v1/ext/payment-sessions/buttons(Response (200))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Request)
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (200))
identifier_label
stringEtiqueta que indica cómo debe interpretarse el valor enviado en identifier (ej. 'Nro de orden').
- POST/api/v1/ext/payment-sessions/buttons(Request)
- POST/api/v1/ext/payment-sessions/buttons(Response (200))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Request)
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (200))
imei
stringopcional_si_existe
immediate_debit
booleanIndica si permite pagos con débito inmediato.
inboundCrixto_id
stringID de la orden en Crixto
inboundCrixto_paymentDeeplink
stringDeeplink para realizar el pago en la app del proveedor (ej. Binance).
inboundCrixto_paymentMethod_commission
number (double)Monto en decimales de comisión aplicado por el procesador tecnológico (BinancePay, CrixtoPay, etc) por la validación, ejecución y aseguramiento de la transacción de pago.
inboundCrixto_paymentMethod_name
stringNombre del método de pago (ej. Binance Pay, Crixto Pay).
inboundCrixto_posType
stringNumero que indica la forma en que se reciben los pagos desde crixto 3 para recibir dinero en la wallet, 2 pago movil, ...
inboundCrixto_provider_commission
number (double)Monto en decimales de comisión retenido por el provedor (Crixto, Binance, etc) por la gestión de fondos o el uso de su infraestructura de billetera.
inboundCrixto_qrPayment
objectCódigo QR para realizar el pago
- img:stringImagen del código QR en formato base64Ejemplo: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALQAAAC0CAYAAAA9zQYyAAAAAklEQVR4AewaftIAAAdiSURBVO3BQY4cy5LAQDLR978yR0tfBZCoav2nGDezP1jrEg9rXeRhrYs8rHWRh7Uu8rDWRR7WusjDWhd5WOsiD2td5GGtizysdZGHtS7ysNZFHta6yMNaF/nhQyp/U8WkMlW8ofJGxRsqU8Wk8kbFpDJVTCpTxRsqf1PFJx7WusjDWhd5WOsiP3xZxTepvKEyVUwqU8UnVKaKE5WTihOV/6WKb1L5poe1LvKw1kUe1rrID79M5Y2KNypOVN5QOal4o+JE5Y2KE5W/SeWNit/0sNZFHta6yMNaF/nhH6cyVUwVb1RMKpPKVDGpTBWTylRxojJVfEJlqrjJw1oXeVjrIg9rXeSHf1zFpPJGxRsVv0nlDZWpYlI5UZkq/mUPa13kYa2LPKx1kR9+WcV/ScWJyonKVDFVfFPFJypOVD5R8V/ysNZFHta6yMNaF/nhy1T+JpWpYlI5UZkqJpWpYlKZKiaVqWJSmSomlaniDZWp4hMq/2UPa13kYa2LPKx1EfuDf5jKScUbKlPFpDJVTCrfVHGiMlWcqJxU/Mse1rrIw1oXeVjrIj98SGWqmFROKiaVNypOVKaKk4o3VKaKE5WTihOVqeJE5aTiRGWqOFGZKiaVk4pPPKx1kYe1LvKw1kV++FDFScWJyknFN6mcVPymihOVqWKqOFGZKt5QmSp+U8U3Pax1kYe1LvKw1kV++JDKVDGpTBVvqEwVk8pJxaQyVUwqU8VJxf8nKm+oTBW/6WGtizysdZGHtS7yw4cqTipOKt5QmSpOVKaKSWWqmFQ+oXJSMVVMKt+kMlW8UXGi8r/0sNZFHta6yMNaF7E/+EUqU8WkMlVMKlPFicobFZ9QOak4UZkqTlS+qWJSOamYVL6p4hMPa13kYa2LPKx1kR8+pDJVfFPFGxUnKm+onFS8ofKJijdUTlSmikllUnmj4kTlmx7WusjDWhd5WOsi9gcfUDmpmFSmihOVk4pJZap4Q+Wk4kTljYoTlaliUjmpeENlqjhRmSomlaniNz2sdZGHtS7ysNZF7A++SGWqOFGZKr5JZaqYVKaKE5WpYlI5qZhU3qh4Q+WkYlL5RMUbKlPFJx7WusjDWhd5WOsiP/wylU+onFScVJxUfELlmyreUJkqPlFxojJVTConFVPFNz2sdZGHtS7ysNZF7A9+kcpJxaQyVUwqU8UnVKaKSWWqmFSmihOVNyreUHmj4kTlpOJE5Y2KTzysdZGHtS7ysNZFfvgylaliUplUTlSmijdUpoqp4g2Vb6o4UZkq3qiYVD5RMalMFf9LD2td5GGtizysdZEfPqQyVZxUfJPKJ1SmiqniDZXfpDJVTBVvqJxUvKEyVUwqU8U3Pax1kYe1LvKw1kV++FDFpDJVTCpTxYnKScUbKn9TxYnKScUnVKaKSeUNlZOKk4pJZar4xMNaF3lY6yIPa13khw+pTBUnFScqU8WkMqlMFd+kMlWcVJyoTBVvqEwVJxXfVHGiMlVMKlPFNz2sdZGHtS7ysNZF7A8+oPJGxaQyVUwqb1RMKp+oOFE5qXhD5RMVk8pU8QmVqeINlanimx7WusjDWhd5WOsi9gd/kcpUMalMFd+k8kbFJ1SmihOVb6qYVN6oOFF5o2JSmSo+8bDWRR7WusjDWhexP/gilU9UTCpTxaQyVUwqv6niROVvqjhR+U0Vk8obFZ94WOsiD2td5GGti/zwyypOVE4qJpUTlU9UvKEyVZxUTCpTxYnKGyonFZPKScWkMqlMFZPKb3pY6yIPa13kYa2L/PCXqUwVJypTxYnKb1J5o2JS+aaKSeWkYlKZKk5UpopJZVI5qfimh7Uu8rDWRR7WusgPH1KZKiaVqWJSOamYVE4qTlSmiknlpGJSeaPiRGWqeKNiUjmpOFF5o+INlaniEw9rXeRhrYs8rHWRHz5U8YbKGyonFZ9QOamYVKaKE5WpYlI5UZkqTlTeUPmEylQxqUwVv+lhrYs8rHWRh7Uu8sMvq/hNKicVn1B5Q2WqeKPiROWk4hMVb6j8lzysdZGHtS7ysNZFfviQyt9UcVJxUnGi8obKJyomlaliqnhDZap4Q2Wq+ITKb3pY6yIPa13kYa2L/PBlFd+k8obKVHGiMlWcqEwV31QxqUwVJypTxaTyRsUnKk5UvulhrYs8rHWRh7Uu8sMvU3mj4o2KN1ROVKaKqeINlanib1KZKiaVSeUTKlPFpDJVfNPDWhd5WOsiD2td5Id/nMpU8YmKSeWk4hMqn1A5qZhUTiomlaliUvkveVjrIg9rXeRhrYv8cBmVk4pJ5aTiRGWqOFE5qThRmSomlU+o/Mse1rrIw1oXeVjrIj/8sorfVHGiclJxojJVvFFxonKi8psq3lB5Q2Wq+E0Pa13kYa2LPKx1kR++TOVvUpkqvqliUjlReaPiEyonKm+onFRMKm+onFR84mGtizysdZGHtS5if7DWJR7WusjDWhd5WOsiD2td5GGtizysdZGHtS7ysNZFHta6yMNaF3lY6yIPa13kYa2LPKx1kYe1LvJ/zXq8jxPRiswAAAAASUVORK5CYII="
- url:stringURL para realizar el pagoEjemplo: "https://app.binance.com/qr/dplk42fce9f3e97f43cead255ea26f43a458"
inboundCrixto_rateCryptoFiat
number (double)Tasa Cripto/Fiat usada durante la conversión de cripto-fiat, especificada 4 decimales
inboundCrixto_urlPayment
stringURL a la que se redirige en caso de éxito o si se genera un error.
inboundCrixto_webhook_url
stringURL a la que se enviará la información al finalizar el proceso.
inboundCrypto_amountPayByUserCrypto
number (double)Monto con 3 decimales del pago realizado por el usuario en la moneda cripto. Note que puede variar del monto original si se aplica una comisión por el pago.
inboundCrypto_amountPayByUserVes
number (double)Monto con 3 decimales del pago realizado por el usuario en la moneda VES. Note que puede variar del monto original si se aplica una comisión por el pago.
inboundCrypto_amountTransactionCrypto
number (double)Monto con 3 decimales de la transacción en la moneda cripto. Note que es el monto original sin incluir la comisión por el pago.
inboundCrypto_amountTransactionVes
number (double)Monto con 3 decimales de la transacción en la moneda VES. Note que es el monto original sin incluir la comisión por el pago.
inboundCrypto_details
objectDetalles de pago con criptomonedas (null si no aplica).
- provider_name:
- crypto_order_id:
- payment_method_name:
- amount_transaction_ves:
- amount_pay_by_user_crypto:
- currency_crypto:
- exchange_rate:
- paid_at:
inboundCrypto_id
stringIdentificador de la orden cripto generada por el proveedor.
inboundCrypto_paidAt
string (date-time)Fecha y hora en que se confirmó el pago cripto, en formato ISO 8601.
inboundCrypto_provider_name
stringNombre de la entidad o plataforma financiera que custodia los activos del usuario. Representa el ecosistema o 'banco digital' donde reside el saldo original (ej. Binance, Crixto).
inboundCrypto_status
stringEstado del pago cripto: 'EXPIRED' (el pago expiró), 'PAID' (el usuario realizó el pago) y 'PENDING' (a la espera del pago por parte del usuario).
inboundCrypto_statusConvertion
stringEstado de la transacción de conversión de cripto a fiat: 'PAID' (La transacción fue completada exitosamente), 'PENDING' (a la espera de la confirmación de la transacción) y 'ERROR' (la transacción falló).
inboundMobilePayment_reviewStatus
stringEstado de revisión del pago móvil.
inboundMobilePayment_status
stringEstado del pago. Al registrarse siempre asume 'PAID' indicando que fue conciliado exitosamente.
inboundType
stringEl discriminador del tipo de inbound. Cuando el valor es `crixto-binance-pay` se recibiran pagos de Binance Pay a través de Crixto
include_history
booleanIndica si debe incluirse el histórico de estados (`paid`, `expired`). Valor por defecto: true.
instrument
stringInstrumento de pago utilizado.
internal_reference
stringReferencia interna única utilizada por el sistema o el comercio para identificar la solicitud de pago o parada (propósito estrictamente técnico,no visible al usuario final). **Importancia para Paradas SPIDI:** - Permite conciliar y auditar operaciones entre tu sistema y SPIDI - Sirve para asociar solicitudes de pago con su Parada correspondiente - Puede vincularse a clientes, contratos o facturas en tu plataforma Se recomienda mantener este campo de forma consistente para facilitar la trazabilidad.
- POST/api/v1/ext/payment-sessions/request/batch(Request)
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- GET/api/v1/ext/payment-stops(Response (200))
- POST/api/v1/ext/payment-stops(Request)
- POST/api/v1/ext/payment-stops(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}(Response (200))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (200))
item_index
integerÍndice del ítem que falló en un batch.
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Response (400))
- POST/api/v1/ext/payment-sessions/request/batch(Response (401))
- POST/api/v1/ext/payment-sessions/request/batch(Response (403))
- POST/api/v1/ext/payment-sessions/request/batch(Response (409))
- POST/api/v1/ext/payment-sessions/request/batch(Response (422))
- POST/api/v1/ext/payment-sessions/request/batch(Response (500))
items
arrayListado de objetos para creación de paradas o sesiones (batch). Mínimo un ítem.
- POST/api/v1/ext/payment-sessions/request/batch(Request)
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Response (400))
- POST/api/v1/ext/payment-sessions/request/batch(Response (401))
- POST/api/v1/ext/payment-sessions/request/batch(Response (403))
- POST/api/v1/ext/payment-sessions/request/batch(Response (409))
- POST/api/v1/ext/payment-sessions/request/batch(Response (422))
- POST/api/v1/ext/payment-sessions/request/batch(Response (500))
- GET/api/v1/ext/payment-stops(Response (200))
- POST/api/v1/ext/payment-stops(Request)
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (200))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Request)
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Request)
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (200))
label
stringEtiqueta descriptiva del receptor en un split. (Opcional en distribution, Eco del request: sí)
landing_title
stringTítulo de la landing page creada por SPIDI.
last_expired_at
string (date-time)Fecha y hora de la última expiración en formato ISO 8601.
last_expired_by
stringOrigen de la expiración: api o system.
late_notice_message
stringMensaje que verá el pagador cuando la sesión haya vencido pero continúe activa (keep_active).
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Request)
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (200))
legalName
stringNombre legal del comercio.
limit
integerMáximo de elementos a devolver en una lista. Valor por defecto: 50.
link_amount
number (double)Monto en la moneda de referencia para una solicitud de pago.
link_status
stringEstado del solicitud de pago.
links_active
arrayLista de solicitudes de pago activas en la parada (Nota: Sugerido cambiar a 'requests_active').
links_active_count
integerNúmero de solicitudes de pago activas (Nota: Sugerido cambiar a 'requests_active_count').
manufacturer
stringSin descripción disponible.
memo
stringNota o referencia interna para el crédito.
merchant_id
string (uuid)Identificador único en formato UUID del comercio
merchant_name
stringNombre del comercio.
merchant_type
stringTipo de comercio
message
stringMensaje de confirmación o error legible.
- POST/api/v1/merchants(Response (400))
- POST/api/v1/merchants/auth/login(Response (401))
- POST/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/pairing(Response (400))
- POST/api/v1/pos-terminals/{serialNumber}/pairing/activate(Response (400))
- POST/api/v1/merchants/{merchantId}/transactions(Response (400))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (404))
- POST/api/v1/merchants/{merchantId}/transactions/{orderId}/invalidation(Response (409))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (400))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (401))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (403))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (404))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (409))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/invalidation/commit(Response (409))
- GET/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/settlements(Response (400))
- POST/api/v1/pos-terminals/{serialNumber}/settlements(Response (400))
- GET/api/v1/pos-terminals/{serialNumber}/settlements/{batchNumber}(Response (404))
- POST/api/spidipagos/login(Response (400))
- POST/api/spidipagos/login(Response (401))
- POST/api/spidipagos/login(Response (422))
- POST/api/spidipagos/login(Response (429))
- POST/api/spidipagos/login(Response (500))
- POST/api/v1/ext/agreements(Response (400))
- POST/api/v1/ext/agreements(Response (401))
- POST/api/v1/ext/agreements(Response (403))
- POST/api/v1/ext/agreements(Response (409))
- POST/api/v1/ext/agreements(Response (422))
- POST/api/v1/ext/agreements(Response (429))
- POST/api/v1/ext/agreements(Response (500))
- POST/api/v1/ext/partner(Response (201))
- POST/api/v1/ext/payment-sessions/buttons(Response (200))
- POST/api/v1/ext/payment-sessions/buttons(Response (400))
- POST/api/v1/ext/payment-sessions/buttons(Response (401))
- POST/api/v1/ext/payment-sessions/buttons(Response (422))
- POST/api/v1/ext/payment-sessions/buttons(Response (500))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (200))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (400))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (401))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (403))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (404))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (422))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (500))
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Response (400))
- POST/api/v1/ext/payment-sessions/request/batch(Response (401))
- POST/api/v1/ext/payment-sessions/request/batch(Response (403))
- POST/api/v1/ext/payment-sessions/request/batch(Response (409))
- POST/api/v1/ext/payment-sessions/request/batch(Response (422))
- POST/api/v1/ext/payment-sessions/request/batch(Response (500))
- POST/api/v1/payment-session/{session_id}/expiration(Response (200))
- POST/api/v1/payment-session/{session_id}/expiration(Response (422))
- POST/api/v1/ext/split-receiving-agreements(Response (400))
- POST/api/v1/ext/split-receiving-agreements(Response (401))
- POST/api/v1/ext/split-receiving-agreements(Response (409))
- POST/api/v1/ext/split-receiving-agreements(Response (422))
- POST/api/v1/ext/split-receiving-agreements(Response (500))
- GET/api/v1/ext/payment-stops(Response (200))
- GET/api/v1/ext/payment-stops(Response (400))
- POST/api/v1/ext/payment-stops(Response (200))
- POST/api/v1/ext/payment-stops(Response (400))
- POST/api/v1/ext/payment-stops(Response (401))
- POST/api/v1/ext/payment-stops(Response (422))
- POST/api/v1/ext/payment-stops(Response (500))
- GET/api/v1/ext/payment-stops/{stop_id}(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}(Response (404))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (200))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (400))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (401))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (422))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (500))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (200))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (400))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (403))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (404))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (500))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (400))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (404))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (201))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (207))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (400))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (401))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (409))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (422))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (429))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (500))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (200))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (207))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (400))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (401))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (409))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (422))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (429))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (500))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (200))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (400))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (401))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (403))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (422))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (500))
metadata
objectDatos adicionales definidos por el comercio. Eco del request: no.
metaPagination
objectMetadatos de paginación.
- totalCount:integerTotal de registros encontrados que coinciden con los criterios de búsqueda.Ejemplo: 150
- totalPages:integerTotal de páginas calculadas según el parámetro size.Ejemplo: 8
- currentPage:integerPágina de resultados actual.Ejemplo: 2
- size:integerCantidad de elementos solicitados por página.Ejemplo: 20
missing_actives
arraySolicitudes SPIDI activas no incluidas en la lista durante un reordenamiento.
mobile_payment
booleanPermitir pagos con pago móvil.
mode
stringModo de reordenamiento: 'append' (por defecto) o 'strict' (reemplazar lista).
model
stringSin descripción disponible.
name
stringSin descripción disponible.
next_cursor
stringCursor para continuar la paginación. (Eco del request: no)
not_active
arraySolicitudes SPIDI no activas en Parada.
not_found
arraySesiones no encontradas en Parada.
number
stringSin descripción disponible.
- GET/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/settlements(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/settlements(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/settlements(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/settlements/{batchNumber}(Response (200))
numeric_debitId
numberIdentificador del débito (numérico para response).
observations
stringMensaje libre para el partner (máx. 500 caracteres). (Requerido en distribution, Eco del request: sí)
offset
integerDesplazamiento para paginación (cantidad de elementos a saltar).
only_fields
stringComa-separado para limitar los campos devueltos en el payload.
op
stringOperación para batch: add | remove | replace | clear.
order
stringOrden de clasificación: asc (ascendente) o desc (descendente). Por defecto: desc.
order_index
integerPosición relativa de la sesión en la parada.
orderId
string (uuid)Identificador único de la orden generado por el comercio.
- POST/api/v1/merchants/{merchantId}/transactions(Request)
- POST/api/v1/merchants/{merchantId}/transactions(Response (201))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (200))
origin_bank_code
stringCódigo oficial del banco de origen.
- POST/api/v1/ext/agreements(Request)
- POST/api/v1/ext/agreements(Response (200))
- POST/api/v1/ext/split-receiving-agreements(Request)
- POST/api/v1/ext/split-receiving-agreements(Response (200))
- POST/api/v1/ext/split-receiving-agreements(Response (400))
- POST/api/v1/ext/split-receiving-agreements(Response (401))
- POST/api/v1/ext/split-receiving-agreements(Response (409))
- POST/api/v1/ext/split-receiving-agreements(Response (422))
- POST/api/v1/ext/split-receiving-agreements(Response (500))
originalOrderId
stringIdentificador de la orden original en caso de cancelación.
owner
objectDatos del crédito recibido por el owner.
page
integerNúmero de página solicitada (Request) o número de página devuelta.
page_size
integerCantidad de elementos por página solicitada (Request) o cantidad de elementos devueltos (Response). Eco del request: no.
pageBasedPaginationRequest
objectParámetros de paginación Page-Based (Velocidad 1).
- page:integerNúmero de la página de resultados a retornar.
- size:integerCantidad máxima de elementos a incluir en la página (límite operacional: 100).
- sort:stringCriterio de ordenamiento. Prefijo '-' para orden descendente. Campos múltiples separados por comas.
paid_at
string (date-time)Fecha y hora del pago en formato ISO 8601. Eco del request: no.
paid_origin
objectOrigen del pago cuando proviene de container. Incluye container_session_id.
paid_via
stringIndica el tipo de flujo de pago utilizado. Eco del request: no.
partner_email
string (email)Correo electrónico del partner.
partner_id
string (uuid)Identificador único del partner.
partner_name
stringNombre o razón social del partner
partner_observations
stringMensaje libre para el partner (máx. 500 caracteres). (Requerido en distribution, Eco del request: sí)
partner_phone
stringTeléfono del partner.
partner_phoneOrAccountForPayment
stringTeléfono o número de cuenta para el pago.
partner_rifNumber
stringRIF del partner
partner_shortName
stringNombre corto del partner. Se genera automáticamente a partir del owner que lo crea seguido de p1 p2 p3 etc
partner_type
stringTipo de usuario.
partners
arrayListado de créditos extra asociados a partners. (Nota: Posiblemente obsoleto). Eco del request: no.
password
stringContraseña de acceso del usuario.
- POST/api/v1/merchants(Request)
- POST/api/v1/merchants/auth/login(Request)
- POST/api/spidipagos/login(Request)
- POST/api/spidipagos/login(Response (400))
- POST/api/spidipagos/login(Response (401))
- POST/api/spidipagos/login(Response (422))
- POST/api/spidipagos/login(Response (429))
- POST/api/spidipagos/login(Response (500))
payer_identifier
stringIdentificador del pagador.
payer_name
stringNombre del pagador.
payment_details
objectDetalles del pago bancario. Es 'null' si no aplica. (Nota: Revisar si es objeto vacío o null). Eco del request: no.
- action_date:
- bank_name:
- bank_reference_id:
- amount_ves:
- bcv_rate_usd_ves:
- bcv_rate_eur_ves:
- rate_usdt_ves:
- rate_col_ves:
payment_method
stringMétodo de pago utilizado. Eco del request: no.
payment_methods
arrayMétodos de pago permitidos solicitados (Request) o devueltos (Response). Eco del request: no.
payment_url
stringURL de la página segura SPIDI donde quien paga realiza el pago.
- POST/api/v1/ext/payment-sessions/buttons(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (200))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (200))
paymentDate
Fecha en que se realizo el pago
paymentMerchant_status
stringIndica el status del pago. ```PENDING```: la orden fue creada y el POS aún no ha confirmado el pago. ```DISCARDED```: el sistema merchant descartó la orden antes de la confirmación del POS (si el POS confirma el pago después, este estado es sobrescrito a PAID). ```PAID```: el POS confirmó exitosamente el pago. ```VOID_PENDING```: se solicitó la anulación de un pago ya confirmado y se espera la confirmación del POS. ```VOIDED```: el POS confirmó la anulación del pago.
per_stop
objectConfiguración de filtros y paginación por parada. Eco del request: no.
phone
stringNúmero de teléfono.
phoneNumber
stringNúmero de teléfono.
phoneNumberLocal
stringNúmero de teléfono local.
posBatchId
integerEste campo será un número autoincremental gestionado directamente desde el POS. El POS debe enviarlo para identificar correctamente el número de lote de las operaciones.
previous_status
stringEstado anterior de la sesión antes de expirar o fallar. Eco del request: no.
problemDetails
objectDetalles del problema. Implementación del estándar RFC 9457 extendido para incluir lista de errores detallados y soporte de retrocompatibilidad multiformato.
- status:integerEl código de estado HTTP generado por el servidor de origen.
- title:stringUn resumen breve y legible por humanos sobre el tipo de problema.
- type:string (uri-reference)Una referencia URI que identifica el tipo de problema.
- detail:stringUna explicación legible por humanos específica para esta ocurrencia del problema.
- message:Este campo se incluyo para que jose puediera crear el endpoint de forma mas sencilla sin embargo se debe priorizar el uso de 'detail' y 'errors' solo se mantendra hasta que jose pueda hacer la migracion.
- instance:string (uri-reference)Una referencia URI que identifica la ocurrencia específica del problema.
- errors:arrayLista de errores específicos de validación con punteros JSON (RFC 6901).
processed_count
integerConteo de ítems procesados. Eco del request: no.
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Response (400))
- POST/api/v1/ext/payment-sessions/request/batch(Response (401))
- POST/api/v1/ext/payment-sessions/request/batch(Response (403))
- POST/api/v1/ext/payment-sessions/request/batch(Response (409))
- POST/api/v1/ext/payment-sessions/request/batch(Response (422))
- POST/api/v1/ext/payment-sessions/request/batch(Response (500))
processedAt
string (date-time)Fecha y hora de procesamiento en formato ISO 8601.
processedAtNoUtc
string (date-time)Fecha y hora de procesamiento en formato local no utc.
provider
stringSin descripción disponible.
q
stringBúsqueda por texto en stop_title y/o internal_reference (contiene).
qr_payment_url
stringCadena en base64 que representa la imagen de un QR que apunta al payment_url.
qrImgBase64
stringImagen del código QR en formato Base64.
rate_col_ves
number (decimal(10,4))Tasa de cambio COP a VES.
rate_usdt_ves
number (decimal(10,4))Tasa de cambio USDT a VES.
reason
stringRazón de expiración o fallo.
receipt_url
string (uri)URL del comprobante de pago SPIDI.
receiptMethodCrixto
stringDefine el método de recepción de los fondos: * `movil-pay`: Se recibe el dinero en la cuenta recaudadora usando pago móvil. * `transfer`: Se recibe el dinero en la cuenta recaudadora usando tranferencia inmediata. * `wallet`: Se recibe el dinero en la wallet de Spidi.
receive_date
string (date-time)Fecha y hora en que se acreditó el pago (ISO 8601).
receiver_credit.created
string (date-time)Fecha asociada a la liquidación del receptor del pago.
receiverCredits
objectDetalles de la liquidación de créditos (Owner y Partners).
- owner:objectCrédito asignado al dueño de la cuenta principal.
- receiver_id:
- memo:
- spidi_credit_id:
- amount_ves_credited:
- bank_commissions_ves:
- receive_date:
- bank_name:
- bank_reference_id:
- partners:arrayLista de créditos asignados a partners (split).
receiverCreditsSummary
objectResumen agregado de liquidaciones al o los receptores.
- total_credits:
- total_amount_ves_credited:
- total_bank_commissions_ves:
recipient
objectSin descripción disponible.
- id:
- type:
- split_recipient_agreement_id:
- partner:object
- observations:
- name:
- rif_number:
recipientId
stringIdentificador del receptor del crédito.
recipientType
stringTipo del receptor del crédito.
referenceByUser
stringReferencia proporcionada por el usuario para identificar el pago o transacción.
referencePayment
stringReferencia para identificar el pago o transacción.
removed
arraySesiones desasociadas de activos en Parada (op=remove).
reorder_session_ids
arrayNuevo orden deseado. Deben ser `session_id` **activos** en esa Parada (ver `mode`)
replaced_previous
arraySesiones que dejaron de estar activas en Parada (op=replace).
requested
objectEco de parámetros aplicados en la consulta.
results
arrayResultados por stop_id en operaciones batch o consultas múltiples.
- POST/api/v1/ext/payment-stops(Response (200))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (201))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (207))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (200))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (207))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (200))
rif
stringSin descripción disponible.
search
stringTexto para buscar por referencias internas u otros campos indexados.
serialPos
stringSerial del POS
serialSettlement
stringSerial del terminal que debe ejecutar el cierre.
session_durationMinutes
integerDuración en minutos de la sesión.
session_id
stringIdentificador único de la sesión de pago, accedible a través del payment_url.
- POST/api/v1/ext/payment-sessions/buttons(Response (200))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (200))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (400))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (401))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (403))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (404))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (422))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (500))
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- POST/api/v1/payment-session/{session_id}/expiration(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (200))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (200))
session_ids
arrayIDs de sesiones involucradas.
session_origin
stringOrigen de la sesión: 'button' (Botón de pago) o 'request' (Solicitud SPIDI).
sessionPayment
objectDetalles del pago y estado de la sesión.
- payment_method:stringMétodo de pago: "crypto", "immediate_debit" o "mobile_payment".
- spidi_transaction_id:integerID de la transacción en Spidi (null si no se ha completado).
- spidi_transaction_url:stringURL del comprobante de pago (null si no se ha completado).
- due_date_session:stringFecha límite para completar el pago (ISO 8601).
- due_date_reached_behavior:stringComportamiento al expirar: "keep_active" o "expire".
- late_notice_message:stringMensaje para mostrar cuando el pago está atrasado.
- expired_at:stringFecha hora ISO 8601 de la expiración más reciente.
- last_expired_by:
- reason:
- user_message:stringÚltimo Mensaje para el usuario.
- crypto_details:
- payment_details:objectDetalles del pago bancario (null si no aplica).
- receiver_credits:
- receiver_credits_summary:
sessionPaymentWebhook
objectSin descripción disponible.
- id:
- origin:
- agreement_id:
- currency_reference:
- amount_reference:
- identifier_label:
- identifier:
- description:
- payment_method:
sessionSpidi_id
stringID de la sesión original en SPIDI.
settlementSummary
objectSin descripción disponible.
- batchNumber:
- transactionCount:integerEjemplo: 12
- closedAt:string (date-time)Ejemplo: "2023-04-04T15:26:51.187Z"
- currencyReference:
- terminal:
- debitBatch:stringFalta ser definido por Carlos Cardenas
signature
stringFirma opcional del payload.
sort
stringCampo de ordenación.
SPIDI-Signature
stringFirma HMAC-SHA256 del cuerpo. (Header HTTP 'SPIDI-Signature').
SPIDI-Timestamp
string (date-time)Timestamp del evento. (Header HTTP 'SPIDI-Timestamp').
split
objectConfiguración de división de pagos (Request) / Eco del request del split (Response).
- document:
- distribution:
- POST/api/v1/ext/agreements(Request)
- POST/api/v1/ext/agreements(Response (200))
- POST/api/v1/ext/agreements(Response (400))
- POST/api/v1/ext/agreements(Response (401))
- POST/api/v1/ext/agreements(Response (403))
- POST/api/v1/ext/agreements(Response (409))
- POST/api/v1/ext/agreements(Response (422))
- POST/api/v1/ext/agreements(Response (429))
- POST/api/v1/ext/agreements(Response (500))
- POST/api/v1/ext/payment-sessions/buttons(Request)
- POST/api/v1/ext/payment-sessions/buttons(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Request)
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
split_general_info
objectInformación general del documento asociado al split.
splitDocument
objectInformación del documento proporcionado por el owner a los partners para dejar evidencia del split. **Notas importantes:** - Esta información **no implica cálculo fiscal** por parte de SPIDI; es solo comunicación entre owner y partners. - `splitDocument_url` puede ser público con hash o una URL autenticada. - SPIDI **no interpreta ni calcula IVA** a partir de esta información; solo lo transporta.
- name:
- type:
- date:
- url:
- observations:
splitDocument_date
string (date)Fecha de emisión del documento en formato ISO 8601 (YYYY-MM-DD).
splitDocument_name
stringNombre del documento asociado a la transacción split (por ejemplo: factura/recibo/contrato D001-00045678).
splitDocument_observations
stringObservaciones libres del owner (máx. 500 caracteres).
splitDocument_type
stringFormato libre del owner donde especifica el tipo de documento.
splitDocument_url
string (uri)Enlace para visualizar/descargar el documento del split. Puede ser público con hash o una URL autenticada.
status
stringEstado actual de la sesión. El valor failed solo se aplica para sesiones creadas con botón de pago.
- POST/api/v1/merchants(Response (201))
- POST/api/v1/merchants(Response (400))
- POST/api/v1/merchants/auth/login(Response (200))
- POST/api/v1/merchants/auth/login(Response (401))
- POST/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/pairing(Response (200))
- POST/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/pairing(Response (400))
- POST/api/v1/pos-terminals/{serialNumber}/pairing/activate(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/pairing/activate(Response (400))
- POST/api/v1/merchants/{merchantId}/transactions(Response (201))
- POST/api/v1/merchants/{merchantId}/transactions(Response (400))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (200))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (404))
- POST/api/v1/merchants/{merchantId}/transactions/{orderId}/invalidation(Response (200))
- POST/api/v1/merchants/{merchantId}/transactions/{orderId}/invalidation(Response (409))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (400))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (401))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (403))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (404))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (409))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/invalidation/commit(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/invalidation/commit(Response (409))
- GET/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/settlements(Response (200))
- GET/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/settlements(Response (400))
- GET/api/v1/pos-terminals/{serialNumber}/settlements(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/settlements(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/settlements(Response (400))
- GET/api/v1/pos-terminals/{serialNumber}/settlements/{batchNumber}(Response (404))
- POST/api/v1/ext/agreements(Response (200))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (200))
- POST/api/v1/payment-session/{session_id}/expiration(Response (200))
- GET/api/v1/ext/payment-stops(Response (200))
- POST/api/v1/ext/payment-stops(Request)
- POST/api/v1/ext/payment-stops(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}(Response (200))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Request)
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (200))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Request)
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (200))
statusHttp_code
integerCódigo de estado HTTP interno de la transacción.
statusHttp_shortDescription
stringEstado textual de la operación.
statusInboundCrixtoOrder
stringEstado del pago de crixto
stop
objectSin descripción disponible.
- stop_id:
- stop_url:
- stop_title:
- internal_reference:
- empty_state_message:
- status:
- created_at:
stop_emptyStateMessage
stringMensaje personalizado mostrado al cliente cuando la Parada no tiene solicitudes de pago activas (estado Empty). Ejemplo: 'No tienes pagos pendientes' o 'Actualmente no hay deudas asociadas'.
stop_id
string (uuid)Identificador único de la Parada SPIDI en formato UUID. Este ID identifica de forma permanente el espacio donde el cliente puede consultar y gestionar todas sus solicitudes de pago.
- GET/api/v1/ext/payment-stops(Response (200))
- POST/api/v1/ext/payment-stops(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}(Response (200))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (200))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (200))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Request)
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (201))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (207))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Request)
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (200))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (207))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (200))
stop_ids
arrayLista de IDs de Paradas a consultar.
stop_status
stringEstado de la Parada SPIDI. **Estados disponibles:** - **active**: La parada está activa. Si tiene al menos un enlace de pago activo, se muestran los pagos disponibles en una lista con su identificador, monto y estado. Si no tiene solicitudes de pago activas (estado Empty), muestra el mensaje configurado en `empty_state_message`. - **disabled**: La parada está deshabilitada temporalmente. Los clientes no pueden acceder a ella, pero puede reactivarse cambiando el estado a `active`. **Nota:** Aunque no aparece en el enum, existe un estado **deleted** que indica que la parada fue eliminada definitivamente y no puede recuperarse.
stop_statusInitial
stringEstado inicial de la parada
stop_title
stringTítulo visible de la Parada SPIDI mostrado al cliente. Generalmente se usa el nombre del cliente, contrato o servicio asociado.
stop_url
string (uri)URL permanente y única de la Parada SPIDI. El cliente puede visitar esta URL en cualquier momento para consultar y pagar todas sus solicitudes de pago activas o históricas, sin necesidad de recibir nuevos enlaces cada vez.
success
booleanIndica si la operación fue exitosa. True si el endpoint se procesó de forma exitosa. False de lo contrario
- POST/api/spidipagos/login(Response (400))
- POST/api/spidipagos/login(Response (401))
- POST/api/spidipagos/login(Response (422))
- POST/api/spidipagos/login(Response (429))
- POST/api/spidipagos/login(Response (500))
- POST/api/v1/ext/agreements(Response (200))
- POST/api/v1/ext/agreements(Response (400))
- POST/api/v1/ext/agreements(Response (401))
- POST/api/v1/ext/agreements(Response (403))
- POST/api/v1/ext/agreements(Response (409))
- POST/api/v1/ext/agreements(Response (422))
- POST/api/v1/ext/agreements(Response (429))
- POST/api/v1/ext/agreements(Response (500))
- POST/api/v1/ext/partner(Response (201))
- POST/api/v1/ext/payment-sessions/buttons(Response (200))
- POST/api/v1/ext/payment-sessions/buttons(Response (400))
- POST/api/v1/ext/payment-sessions/buttons(Response (401))
- POST/api/v1/ext/payment-sessions/buttons(Response (422))
- POST/api/v1/ext/payment-sessions/buttons(Response (500))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (200))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (400))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (401))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (403))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (404))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (422))
- GET/api/v1/ext/payment-sessions/status/{session_id}(Response (500))
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Response (400))
- POST/api/v1/ext/payment-sessions/request/batch(Response (401))
- POST/api/v1/ext/payment-sessions/request/batch(Response (403))
- POST/api/v1/ext/payment-sessions/request/batch(Response (409))
- POST/api/v1/ext/payment-sessions/request/batch(Response (422))
- POST/api/v1/ext/payment-sessions/request/batch(Response (500))
- POST/api/v1/payment-session/{session_id}/expiration(Response (200))
- POST/api/v1/payment-session/{session_id}/expiration(Response (422))
- POST/api/v1/ext/split-receiving-agreements(Response (200))
- POST/api/v1/ext/split-receiving-agreements(Response (400))
- POST/api/v1/ext/split-receiving-agreements(Response (401))
- POST/api/v1/ext/split-receiving-agreements(Response (409))
- POST/api/v1/ext/split-receiving-agreements(Response (422))
- POST/api/v1/ext/split-receiving-agreements(Response (500))
- GET/api/v1/ext/payment-stops(Response (200))
- GET/api/v1/ext/payment-stops(Response (400))
- POST/api/v1/ext/payment-stops(Response (200))
- POST/api/v1/ext/payment-stops(Response (400))
- POST/api/v1/ext/payment-stops(Response (401))
- POST/api/v1/ext/payment-stops(Response (422))
- POST/api/v1/ext/payment-stops(Response (500))
- GET/api/v1/ext/payment-stops/{stop_id}(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}(Response (404))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (200))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (400))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (401))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (422))
- PATCH/api/v1/ext/payment-stops/{stop_id}(Response (500))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (200))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (400))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (403))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (404))
- DELETE/api/v1/ext/payment-stops/{stop_id}(Response (500))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (200))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (400))
- GET/api/v1/ext/payment-stops/{stop_id}/payment-sessions(Response (404))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (201))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (207))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (400))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (401))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (409))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (422))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (429))
- POST/api/v1/ext/payment-stops/payment-sessions/batch(Response (500))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (200))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (207))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (400))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (401))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (409))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (422))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (429))
- PATCH/api/v1/ext/payment-stops/payment-sessions/reorder(Response (500))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (200))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (400))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (401))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (403))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (422))
- POST/api/v1/ext/payment-stops/payment-sessions/query(Response (500))
success_url
string (uri)URL de redirección que se utiliza cuando un intento de pago es exitoso.
successDetails
objectDetalles del éxito. Estándar basado en la estructura de 'Problem Details' (RFC 9457) para estandarizar las respuestas exitosas en toda la arquitectura de microservicios.
- status:integerEl código de estado HTTP generado por el servidor de origen (ej. 200, 201).
- title:stringUn resumen breve y legible por humanos sobre el tipo de éxito.
- detail:stringUna explicación legible por humanos específica para esta ocurrencia del éxito.
- data:Contenedor de información que puede almacenar un objeto único o una lista de objetos.
successDetailsArray
objectVariante de SuccessDetails donde 'data' es estrictamente un arreglo de objetos.
- status:integer
- title:string
- detail:string
- data:arrayRepresenta una colección de entidades de negocio.
successDetailsObject
objectVariante de SuccessDetails donde 'data' es estrictamente un objeto único.
- status:integer
- title:string
- detail:string
- data:objectRepresenta una entidad única de negocio.
successDetailsSimple
objectDetalles del éxito sin datos adicionales (solo título y detalle).
- status:integerEl código de estado HTTP generado por el servidor de origen (ej. 200, 201).
- title:stringUn resumen breve y legible por humanos sobre el tipo de éxito.
- detail:stringUna explicación legible por humanos específica para esta ocurrencia del éxito.
successful_count
integerNúmero de sesiones creadas exitosamente.
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Response (400))
- POST/api/v1/ext/payment-sessions/request/batch(Response (401))
- POST/api/v1/ext/payment-sessions/request/batch(Response (403))
- POST/api/v1/ext/payment-sessions/request/batch(Response (409))
- POST/api/v1/ext/payment-sessions/request/batch(Response (422))
- POST/api/v1/ext/payment-sessions/request/batch(Response (500))
taxId
stringRIF o identificación fiscal del comercio.
terminal
objectSin descripción disponible.
- id:stringEjemplo: "TMS ID"
- affiliateCode:stringEjemplo: "0010800050"
- number:
- serial:
- bankId:stringEjemplo: "3"
- bankCode:
- GET/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/settlements(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/settlements(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/settlements(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/settlements/{batchNumber}(Response (200))
terminal_id
string (uuid)Id único del terminal en formato UUID.
terminal_number
stringNumero de terminal.
terminal_serial
stringSerial del terminal físico.
terminal_status
stringSin descripción disponible.
timestamp
string (date-time)Fecha y hora del evento (ISO 8601).
title
stringTítulo visible.
- POST/api/v1/merchants(Response (201))
- POST/api/v1/merchants(Response (400))
- POST/api/v1/merchants/auth/login(Response (200))
- POST/api/v1/merchants/auth/login(Response (401))
- POST/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/pairing(Response (200))
- POST/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/pairing(Response (400))
- POST/api/v1/pos-terminals/{serialNumber}/pairing/activate(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/pairing/activate(Response (400))
- POST/api/v1/merchants/{merchantId}/transactions(Response (201))
- POST/api/v1/merchants/{merchantId}/transactions(Response (400))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (200))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (404))
- POST/api/v1/merchants/{merchantId}/transactions/{orderId}/invalidation(Response (200))
- POST/api/v1/merchants/{merchantId}/transactions/{orderId}/invalidation(Response (409))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (400))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (401))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (403))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (200))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (404))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (409))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/invalidation/commit(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/invalidation/commit(Response (409))
- GET/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/settlements(Response (200))
- GET/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/settlements(Response (400))
- GET/api/v1/pos-terminals/{serialNumber}/settlements(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/settlements(Response (200))
- POST/api/v1/pos-terminals/{serialNumber}/settlements(Response (400))
- GET/api/v1/pos-terminals/{serialNumber}/settlements/{batchNumber}(Response (404))
- POST/api/v1/ext/agreements(Request)
- POST/api/v1/ext/agreements(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Request)
- POST/api/v1/ext/split-receiving-agreements(Request)
- POST/api/v1/ext/split-receiving-agreements(Response (200))
- POST/api/v1/ext/split-receiving-agreements(Response (400))
- POST/api/v1/ext/split-receiving-agreements(Response (401))
- POST/api/v1/ext/split-receiving-agreements(Response (409))
- POST/api/v1/ext/split-receiving-agreements(Response (422))
- POST/api/v1/ext/split-receiving-agreements(Response (500))
to_date
string (date-time)Fecha/hora máxima (inclusive) para filtrar. Formato ISO 8601 UTC.
token
stringToken de autorización **JWT** para autenticar requests posteriores. * El token es un **JWT (JSON Web Token)** codificado en Base64. * Debe incluirse en el header `Authorization: Bearer {token}` de requests posteriores. * Tiene un tiempo de expiración definido por seguridad. * Contiene información del usuario autenticado y permisos.
tokenType
stringTipo de token de autenticación.
total
integerTotal de elementos que cumplen los filtros.
total_amount_ves_credited
number (double)Monto total acreditado en VES.
total_bank_commissions_ves
number (double)Total de comisiones bancarias en VES.
total_credits
integerNúmero total de créditos/liquidaciones realizados.
total_estimate
integerEstimación rápida del total.
transactionSpidi_id
numberID de la transacción en SPIDI.
transactionSpidi_url
string (uri)URL del comprobante de pago en SPIDI (Comparar con 'receipt_url').
type
stringError relacionado con el campo type.
- POST/api/v1/merchants(Response (400))
- POST/api/v1/merchants/auth/login(Response (401))
- POST/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/pairing(Response (400))
- POST/api/v1/pos-terminals/{serialNumber}/pairing/activate(Response (400))
- POST/api/v1/merchants/{merchantId}/transactions(Response (400))
- GET/api/v1/merchants/{merchantId}/transactions/{orderId}(Response (404))
- POST/api/v1/merchants/{merchantId}/transactions/{orderId}/invalidation(Response (409))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (400))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (401))
- GET/api/v1/pos-terminals/{serialNumber}/transactions(Response (403))
- GET/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}(Response (404))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/commit(Response (409))
- POST/api/v1/pos-terminals/{serialNumber}/transactions/{orderId}/invalidation/commit(Response (409))
- GET/api/v1/merchants/{merchantId}/pos-terminals/{serialNumber}/settlements(Response (400))
- POST/api/v1/pos-terminals/{serialNumber}/settlements(Response (400))
- GET/api/v1/pos-terminals/{serialNumber}/settlements/{batchNumber}(Response (404))
- POST/api/v1/ext/agreements(Response (400))
- POST/api/v1/ext/agreements(Response (401))
- POST/api/v1/ext/agreements(Response (403))
- POST/api/v1/ext/agreements(Response (409))
- POST/api/v1/ext/agreements(Response (422))
- POST/api/v1/ext/agreements(Response (429))
- POST/api/v1/ext/agreements(Response (500))
- POST/api/v1/ext/payment-sessions/buttons(Request)
- POST/api/v1/ext/payment-sessions/buttons(Response (200))
- POST/api/v1/ext/payment-sessions/request/batch(Request)
- POST/api/v1/ext/payment-sessions/request/batch(Response (200))
updated_after
string (date-time)Retorna elementos con updated_at posterior a esta fecha. Formato ISO 8601.
updated_at
string (date-time)Fecha y hora de última actualización (ISO 8601).
urlRedirection
string (uri)URL de redireción en caso de que se tenga exito o falle
urlWebhookPayStatusChange
string (uri)URL para recibir notificaciones del cambio en el status del pago
user_message
stringMensaje para mostrar al usuario según estado.
username
stringSin descripción disponible.
userSpidi_crixtoConfig
objectConfiguración para crixto del usuario SPIDI
- userSpidiId:
- isActive:booleanIndica si la configuracion de crixto del usuario SPIDI esta activaEjemplo: true
userSpidi_id
stringIdentificador único de tipo UUID para el usuario SPIDI
userSpidi_username
stringNombre de usuario o identificador único del comercio.
uuid
string (uuid)Identificador único en formato UUID.