Skip to content

Reseller API and portal

Sell Egyptian brand gift cards on your platform

One API call issues a code, paid from your prefunded wallet at the price we agreed. The reseller portal shows your orders, your ledger and your keys.

  • Test and live keys
  • Safe retries
  • Statements as CSV
A developer viewing the reseller API on a laptop

Getting started

From test key to live orders

Step 1

Get a test key

Test keys start with qrk_test_ and never activate a real code.

Step 2

Build against the docs

Interactive docs with a Try it panel at reseller.qboon.net.

Step 3

Fund your wallet

We credit your prefunded wallet. Every order draws from it.

Step 4

Go live

Create a live key in the portal and switch it in.

The reseller portal wallet ledger
The reseller portal

Your orders and money in one place

See every order and its status. The wallet ledger lists each top-up, order, reversal, fee and adjustment. Download a statement as CSV for your accountant.

Keys Create and revoke test and live keys yourself.
Team Invite colleagues as admins or viewers.
A reseller's own app selling gift cards
Your customers, your app

They buy from you, not from us

Sell the cards in your app, website or wallet under your own brand. Your customers see your checkout and get their code where they already are.

One request, one code

Resell these cards through our API

One call and you're reselling. We charge your wallet and hand back the code and PIN in the same response, or tell you why not.

Safe retries Send an Idempotency-Key with each order. If the call times out, repeat it with the same key and you get the same result, never a second charge.
Under 50 seconds An order is issued within 50 seconds or not at all.
# Issue one 500 EGP code
curl -X POST "$QBOON_API/orders" \
  -H "X-Api-Key: qrk_test_…" \
  -H "Idempotency-Key: 7f3c…" \
  -d '{"brandId":"br_metro","denominationInCents":50000,"currency":"EGP"}'

# 201 Created
{
  "status": "ISSUED",
  "brandId": "br_metro",
  "faceValueInCents": 50000,
  "netCostInCents": 47500,
  "issuedCode": {
    "multicode": "…",
    "pin": "…",
    "expiryDate": "2027-09-28"
  }
}

Questions

Good to know

What happens if my wallet runs low?

The order is refused with an insufficient funds error and nothing is charged. Your balance, reserved amount and available amount are always in the API and the portal.

Can I test before going live?

Which brands can I sell?

A developer viewing the reseller API on a laptop

Start with test keys

Tell us about your platform and we'll send test keys and your price list.