En resumen
Una orden de pago representa un único cobro de fiat esperado. Cuando utiliza la vía de cuenta virtual de un solo uso, cada orden está respaldada por una cuenta bancaria dedicada válida para un solo pago. Los endpoints de Órdenes de Pago le permiten listar y hacer seguimiento de cada orden a nivel de wallet maestra o acotadas a una dirección secundaria específica.
Una orden de pago representa un único cobro de fiat esperado. Cuando utiliza la vía de cuenta virtual de un solo uso, cada orden está respaldada por una cuenta bancaria dedicada válida para un solo pago. Los endpoints de Órdenes de Pago le permiten listar y hacer seguimiento de cada orden a nivel de wallet maestra o acotadas a una dirección secundaria específica.
Requisitos previos
Antes de usar la API de Órdenes de Pago, asegúrate de tener:1
API Key
Obtén tu API key desde el Panel de Blockradar. Ve a Developers para generar una.
2
Wallet creada
Crea una wallet desde el panel (consulta Crear una Billetera Principal). Necesitarás el
walletId para las operaciones de órdenes de pago.3
Cumplimiento aprobado
Completa el proceso de debida diligencia en el Panel: My wallets > Settings > Compliance
4
Función habilitada
Solicita la activación de la función de cuentas virtuales tras la aprobación de cumplimiento. Escribe a [email protected] o usa el chat en vivo del panel.
5
Entorno mainnet
Las cuentas virtuales solo están disponibles en MAINNET. Los entornos testnet no admiten operaciones con cuentas virtuales.
6
Soporte de stablecoin
Depositar fiat y convertirlo a una stablecoin es una función de pago. Asegúrate de que tu plan incluya acceso a stablecoins. Actualiza desde Panel → Settings → Subscription.
Cómo funciona
Se crea una orden de pago cada vez que un cliente inicia un depósito en fiat. Para la víaone_time_virtual_account, Blockradar emite una nueva cuenta bancaria virtual vinculada a esa orden y a su conjunto de montos. Una vez que el cliente paga, la orden avanza por su ciclo de vida y la stablecoin correspondiente se emite y se liquida en la wallet o dirección vinculada.
Orden creada
Se genera una orden con una referencia, un monto esperado y su vía de cobro.
Cuenta emitida
Para la vía de cuenta virtual de un solo uso, se adjunta una cuenta bancaria de un solo uso en
paymentInstructions.Pago recibido
El cliente paga la cuenta antes de
expiresAt; la orden pasa a processing y luego a paid.Liquidación
La stablecoin equivalente se emite y se liquida en la wallet o dirección secundaria vinculada.
Estado de la orden
Cada orden informa su estado actual dentro del ciclo de vida. Use el parámetro de consultastatus para filtrar los resultados.
Vías de cobro
El camporail identifica cómo se cobra la orden. Las cuentas virtuales de un solo uso utilizan la vía one_time_virtual_account.
Flujo de creación vinculado a una sesión
Inicie la creación de la orden de pago solicitando una cotización conassetId,
currency, amount y rail. Cuando el depósito pertenezca a un cliente
existente, incluya también customerId para que se pueda reutilizar el KYC del
proveedor ya guardado. El adaptador del proveedor infiere el corredor de KYC a
partir de la moneda fiat seleccionada. La cotización devuelve un sessionId y
sessionExpiresAt. La sesión vincula la wallet, el activo de la wallet, la
moneda fiat, el monto, la vía, el proveedor, la ruta de conversión, el cliente y
el corredor de KYC durante 20 minutos.
Recomendamos usar el sessionId devuelto en cada solicitud posterior:
- Inicialice el formulario con
additionalDataRequirements.datacuando no seanull. Contiene los valores reutilizables ya guardados para el cliente, el proveedor y el corredor. - Recopile los valores faltantes que exija
additionalDataRequirements.schema. - Si el esquema contiene un
x-resolution, llame aPOST /v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolveconsessionIdy eladditionalDataactual. - Combine los valores resueltos en
additionalData. - Cree la orden con
sessionId,additionalDatay cualquier campo opcional de la orden, comoreferenceometadata.
Quote request
Quote session
Resolve requirements
Create payment order
idDocument.number es el NIN de 11 dígitos del cliente y taxId.value es su
BVN de 11 dígitos. Los requisitos varían según el proveedor, el corredor y el
tipo de entidad, por lo que siempre debe renderizar el esquema que devuelve la
cotización en lugar de codificar estos campos de forma fija.
Cuando la orden se crea con KYC en línea, Blockradar lo guarda asociado al
cliente del negocio, al proveedor seleccionado y al corredor. Una cotización
posterior con el mismo customerId y corredor devuelve el KYC guardado en
additionalDataRequirements.data. Enviar un KYC modificado en una orden
posterior actualiza el perfil guardado del corredor; no se necesita un endpoint
de KYC independiente.
Por compatibilidad con versiones anteriores, sessionId es opcional. Si lo
omite, envíe los valores originales de assetId, currency, amount y rail
en las solicitudes de resolución de requisitos y de creación de la orden. Cuando
sessionId está presente, los valores almacenados en la sesión son los que
prevalecen.
Listar órdenes de pago de la wallet maestra
Devuelve una lista paginada de todas las órdenes de pago creadas bajo una wallet maestra. Use los parámetros de consulta para filtrar por estado, vía, moneda, activo, rango de fechas o búsqueda de texto libre.GET /v1/wallets/{id}/deposit/fiat/orders
Parámetros de consulta
Ejemplo de respuesta
Listar órdenes de pago de la dirección secundaria
Devuelve las órdenes de pago acotadas a una única dirección secundaria. La respuesta incluye los mismos campos de la orden más detalles adicionales de liquidación, proveedor y cliente.GET /v1/wallets/{walletId}/addresses/{addressId}/deposit/fiat/orders
Parámetros de ruta
Parámetros de consulta
Ejemplo de respuesta
Campos de respuesta
Los campos
amountFiatReceived, amountSettled, providerReference, provider y customer se devuelven en el endpoint de dirección secundaria y se completan a medida que la orden avanza por la liquidación.Referencia de API
Descubrimiento y configuración
Wallet maestra
Dirección secundaria
Recuperar, actualizar y cancelar una orden solo requieren el ID de la orden, por
lo que no existe un equivalente para direcciones secundarias. Usa los endpoints
de la wallet maestra anteriores para cualquier orden, incluidas las creadas
contra una dirección secundaria.La API también expone una operación Find Fiat Deposit
(
POST /v1/wallets/{id}/deposit/fiat/finder) que localiza un depósito en fiat y
sus detalles de procesamiento a partir de una referencia de pago. Es útil para
conciliar un pago que un cliente afirma haber enviado con la orden a la que
pertenece.
