BlockonomicsAPI Reference

Payment Intents

List, create or get payment intent details.

4 endpoints

object

The payment_intent object

A PaymentIntent represents an object that tracks a fiat amount to be collected. Payer can pay in one or several payments via different crypto.

Attributes

idstring

Unique ID, starting with pi_. Also the payer's credential for the Payer API.

store_idinteger

ID of the store the intent belongs to.

amountstring

Amount to collect in currency, with at most 2 decimals.

currencystring

Fiat currency code.

statusstring

unpaid: no payment detected. processing: a payment is detected but not confirmed yet. underpaid: confirmed payments cover part of amount and nothing else is in progress. paid: confirmed payments cover amount. Fulfil the order only on paid.

Allowed: unpaidprocessingunderpaidpaid

due_amountstring

Amount remaining to pay in currency.

extra_datastring

Custom data to associate with the intent. Never shown to the payer.

created_atinteger

When the intent was created, as a Unix timestamp in seconds.

paymentsarray of objects

Payments detected on this intent, oldest first. Each entry is the payment quote the payment was sent to. Quotes that were never paid are not listed.

▶Show item fields
idstring

Unique ID, starting with pq_.

amountstring

Fiat amount this quote covers, in the intent's currency. This is the intent's due_amount when the quote was created.

crypto_amountstring

Amount to send, in the crypto's base units: satoshis for BTC (8 decimals), 6 decimals for EVM coins.

paid_crypto_amountstring

Amount received, in base units. "0" until a payment is detected. Can be less or more than crypto_amount.

cryptostring

Crypto to pay in.

Allowed: BTCUSDT

addressstring

Address to send crypto_amount to. Each BTC quote has its own address. USDT quotes use the store's USDT wallet address.

statusstring

pending: waiting for payment. unconfirmed: payment detected, no confirmations yet. partially_confirmed: payment has confirmations but is not final. confirmed: payment is final and credited to the intent. failed: the USDT transaction reverted on-chain and is not credited.

Allowed: pendingunconfirmedpartially_confirmedconfirmedfailed

txidstring

Hash of the payment transaction.

expires_timestampinteger

When the price lock ends, as a Unix timestamp in seconds. Once it has passed, create a quote again before paying.

paid_timestampinteger

Time when payment's was detected, as a Unix timestamp in seconds.

Example object

{
  "id": "pi_5GfD5m1b8khzFSLza91VR6",
  "store_id": 1243,
  "amount": "10.00",
  "currency": "USD",
  "status": "paid",
  "due_amount": "0.00",
  "extra_data": "order-1234",
  "created_at": 1793615164,
  "payments": [
    {
      "id": "pq_8GgAyuReWzLbJtEQrTNaT5",
      "amount": "10.00",
      "crypto_amount": "12966",
      "paid_crypto_amount": "0",
      "crypto": "BTC",
      "address": "bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh",
      "status": "pending",
      "expires_timestamp": 1793615475
    }
  ]
}
object

The payment_intent_callback object

The GET request sent to your store's callback URL each time a payment moves a payment intent to processing, underpaid or paid.

Attributes

idstring

ID of the payment intent.

statusstring

The intent's new status.

Allowed: processingunderpaidpaid

amountstring

Total amount of the intent in currency.

currencystring

Fiat currency code.

due_amountstring

Amount remaining to pay in currency

extra_datastring

Your extra_data, base64-encoded. Empty if the intent has none.

Example object

{
  "id": "pi_5GfD5m1b8khzFSLza91VR6",
  "status": "paid",
  "amount": "10.00",
  "currency": "USD",
  "due_amount": "0.00",
  "extra_data": "b3JkZXItMTIzNA=="
}