Look up a quote
Retrieve one quote by its id or its QTE- reference: where it stands and, once paid, who paid and how far the cards have got.
HMAC-signed request with a unique Idempotency-Key header. Authentication
$afropin->brand->quotes->get($quoteId, $params)afropin.brand.quotes.get(quoteId, params)afropin.brand.quotes.get(quote_id, params)afropin.brand().quotes().get(quoteId, params)Path parameters
The quote's id or reference.
Quote object
The quote's ID.
Its QTE- reference, shown to the buyer and on your Campaigns page. Works wherever an ID does.
The reference you sent, for example your own order or deal number.
open until the buyer starts paying, paying while they are at the payment page, paid for a moment once paid, then sent when the cards start going out. review means it was paid but the cards couldn't be sent; the money is on your issuing balance and our team contacts you. expired is an unpaid quote past expires_at; cancelled one you withdrew.
The mode of the key that made it. Test quotes are paid at once with no money taken, and send test cards.
Where it was made: through the API, or on your Campaigns page.
The product quoted, from your issuing catalog.
The product's name.
The product's currency.
The value of each gift card.
How many gift cards.
The discount given.
card_value × quantity: what the cards are worth.
What the buyer pays: face_total less the discount.
The business the quote is for.
Your note to the buyer, shown on the payment page.
The hosted page where the buyer pays. Send it to them, or let us email it with send_email. null once the quote can no longer be paid.
recipients when the cards go to a list of people (yours, or one the buyer uploaded), buyer when every card goes to the buyer. null until the buyer chooses.
How many people are on the list, when there is one. The list itself is never returned.
name and email of whoever paid, once paid.
Once sent, the progress of the cards: status (queued, sending, stopped, done), total, sent and failed. Follow the same send on your Bulk send page.
The webhook told about this quote's changes.
The end of the last day the quote can be paid.
When it was paid.
When it was made.
Response 200
{
"ok": true,
"data": {
"id": "7d0e4f2a-1c9b-4e83-a5d6-2b8f0c3e9a14",
"reference": "QTE-K7Q2M9XW",
"external_reference": "deal-2041",
"status": "sent",
"mode": "live",
"source": "api",
"catalog_id": "3f8a1c2e-6b4d-4f90-8e7a-5c1d9b2e4f63",
"pin_type": "Grams Fresh Bakes",
"currency": "NGN",
"card_value": 10000,
"quantity": 50,
"discount_percent": 5,
"face_total": 500000,
"price": 475000,
"company": "Acme Ltd",
"message": "Staff appreciation week",
"pay_url": null,
"delivery": "recipients",
"recipients_count": 50,
"buyer": {
"name": "Bola Ade",
"email": "[email protected]"
},
"cards": {
"status": "sending",
"total": 50,
"sent": 12,
"failed": 0
},
"webhook_id": "ca1d075c-f6b0-4d4a-b498-d126239ee0a4",
"expires_at": "2026-11-19T22:59:59.000000Z",
"paid_at": "2026-11-06T10:02:41.000000Z",
"created_at": "2026-11-05T09:14:22.000000Z"
}
}
Errors
Failed requests return a stable code with a translated message. Branch on code, never on the message.
wrong_account_type
Your account type cannot use this endpoint
issuing_disabled
Issuing PINs is not switched on for your account. Contact support
quote_not_found
No quote of yours has this id or reference
rate_limited
Too many requests. Wait a moment and try again
internal_error
Something went wrong on our side. Try again; if it keeps happening, contact support
{
"ok": false,
"error": {
"code": "quote_not_found",
"message": "No quote of yours has this id or reference",
"fields": null
}
}
All error codes →