Flow

🚧

Fiat Account Invoices

Fiat account invoices have a maximal time life of 60 minutes.

Flow

Septs by steps

  1. Call the add invoice endpoint

  2. When the Webhook is called you received funds.

  3. Notify the user that own this account that he received funds.

Invoice States Table

IDNameDescripton
0OPENInvoice is waiting to be paid
1SETTLEDInvoice is settled
2CANCELInvoice is canceled/expired
3ACCEPTEDPayment has arrived at the node. Invoice needs to be manually settled for the payment to complete

📘

Accepted State

The accepted state is present in the lightning network but is not used by hub invoices.

For hub implementations only OPEN, SETTLED and CANCEL apply.

❗️

Note: Round invoice amounts to whole satoshis

Some wallets (e.g., Chivo, Binance) don't support millisatoshi precision and will round down non-zero MSAT values, causing payment failures or underpayment. When creating an invoice, make sure amount (in msat) is a multiple of 1000 — i.e., round up to the next whole satoshi.

Example:

// ❌ Avoid — not a whole sat
{
  "amount": 1234567     // 1,234.567 sats
}

// ✅ Do this — whole sats only
{
  "amount": 1235000     // 1,235 sats
}

Our fiat flows already apply this rounding automatically.