Campos del pago (schema Payment)
El schema Payment del endpoint GET /orders/info/{identifier} devuelve ~25 campos. Muchos tienen nombres obvios, pero otros necesitan contexto. Esta página los aclara.
Identificación
Sección titulada «Identificación»identifier(UUID4) — ID único del pago asignado por B4bit Pay. Úselo como clave externa en su sistema.reference(string) — Su propio ID interno (el que pasó al crear la orden). Sirve para correlacionar.merchant_device_id(int) ymerchant_device(string) — ID y nombre del dispositivo que cobró.
status— enum de 11 valores (NR,PE,AC,IA,CO,CA,EX,OC,FA,DE,CM). Ver estados de pago.created_at,edited_at— timestamps ISO 8601 UTC.expired_time— cuándo expira la orden si no se paga (ISO 8601).
Importes
Sección titulada «Importes»fiat_amount— importe en USDC equivalente alexpected_output_amountque pasó al crear la orden (B4bit convierte con el rate bloqueado al crear).crypto_amount— cantidad total de cripto que debe recibir para liquidar esa orden.unconfirmed_amount— visto en mempool, sin confirmaciones blockchain.confirmed_amount— con ≥1 confirmación blockchain.received_amount— importe recibido, también en USDC (suma confirmada convertida al rate).percentage— % delcrypto_amountrecibido ya. Útil para mostrar barra de progreso al cliente.
Moneda / red
Sección titulada «Moneda / red»currency_id— símbolo granular de B4bit Pay (por ejemploUSDC_POLYGON_NXTB). En el webhook se llamacurrencysin_id.fiat— divisa fiat de la orden (MXN, EUR, etc.). En el webhook se llamafiat_currency.language— idioma de la pasarela (por defectoES).
Blockchain
Sección titulada «Blockchain»address— dirección destino donde el cliente envía la cripto.tag_memo— TAG / MEMO obligatorio en XRP / XLM / ALGO. Si es null, la moneda no lo requiere.rbf(boolean) — “Replace By Fee”. Solo puede sertrueen BTC. Indica que una transacción pendiente podría ser reemplazada por otra con fee más alta. Asuma pago no estable mientrasrbf=true.
Flags de seguridad
Sección titulada «Flags de seguridad»safe(boolean) — ★ el campo más importante después destatus.trueindica que el pago tiene suficientes confirmaciones para considerarse estable. Úselo como señal para liberar producto/servicio.good_fee(boolean) — indica si el fee de red de la transacción entrante es adecuado. Sifalse, la confirmación podría tardar más.balance_based(string) — campo interno relacionado con transacciones que consumen balance pre-cargado. Para merchants estándar, irrelevante.
URLs de redirección (solo respuesta del create, no del info)
Sección titulada «URLs de redirección (solo respuesta del create, no del info)»web_url— URL de la pasarela hospedada (para Redirect Gateway).url_ok,url_ko,url_standby— redirects configurados por el merchant.
Notas y metadatos
Sección titulada «Notas y metadatos»notes— descripción del producto/servicio.internal_data— campo libre que usted puede usar para meta propia (hasta 1024 chars).
Transacciones
Sección titulada «Transacciones»transactions— array de objetos con cada transacción blockchain detectada:confirmed(boolean)currencyamounttx_hash(solo lectura)block(número de bloque donde se confirmó)created_at
Campo crítico en resumen
Sección titulada «Campo crítico en resumen»Si solo va a persistir 4 campos, persista:
identifier— para lookups futuros.status— estado actual.safe— señal de “puedo liberar”.edited_at— para deduplicar webhooks y ordenar cambios.