BitelioBitelio

Registrar el coste de una entrega

Solo desde el servidor del comercio, con clave secreta y permisos retention:view, retention:edit y settings:manage. Importa una línea de factura del proveedor para una entrega externa que ya se haya intentado. Identifica la entrega por deliveryId o providerMessageId; si envías ambos deben coincidir. amountMinor es una cadena entera en unidades mínimas de la moneda. Un coste cero requiere justificante explícito. La misma referencia e importe se pueden reenviar sin duplicar el coste; cambiar un coste ya registrado o reutilizar la referencia genera COST_RECEIPT_CONFLICT (400). La fuente queda identificada como MERCHANT_PROVIDER_RECEIPT: Bitelio no consulta ni verifica automáticamente la factura del proveedor. Una confirmación de entrega no acredita el coste. No se convierten monedas. Los costes que faltan permanecen pendientes y el informe se actualiza en segundo plano. Límite compartido de 120 solicitudes por minuto y proyecto. El parámetro id identifica la entrega; no es necesario repetirlo en el cuerpo.

POST
/v1/retention/messages/{id}/cost-receipt

Authorization

ApiKeyAuth

AuthorizationBearer <token>

Autenticación mediante clave de API. Las claves secretas (sk_*) son obligatorias en todos los endpoints excepto /v1/track. Las claves públicas (pk_*) solo funcionan con el endpoint /v1/track para el seguimiento de eventos desde el cliente. El proyecto se deriva automáticamente de la clave.

In: header

Path Parameters

id*string
Lengthlength <= 100

Request Body

application/json

receiptId*string
Length1 <= length <= 200
currency*string
Match^[A-Z]{3}$
amountMinor*string
Match^(0|[1-9]\d{0,13})$
providerMessageId?string
Length1 <= length <= 500
[key: string]?never

Response Body

application/json

curl -X POST "https://bitelio-api.heltia.com/v1/retention/messages/string/cost-receipt" \  -H "Content-Type: application/json" \  -d '{    "receiptId": "invoice-2026-10:line-14",    "currency": "EUR",    "amountMinor": "7"  }'
{
  "deliveryId": "string",
  "recorded": true
}
Empty
Empty
Empty
Empty
Empty
Empty