TBBNMerchantDocs
Getting started

From zero to a linked seller

You can build in test mode while your Merchant application is being reviewed. This walks through a first integration: a test key, your first call, and your first sellers.

1. Get a test key

Sign in to your Merchant Dashboard, switch on Test mode and create a test key under API keys — see Test mode. Everything a test key creates stays in your test account, where you can see it: no live data, no billing. Live keys (sk_live_...) only become available once your merchant application is approved — see the merchant integration walkthrough. Test and live share the same base URL, https://api.tbbnetwork.com— which mode you're in is determined entirely by the key prefix (sk_sandbox_... vs sk_live_...).

2. Make your first call

Resolve the current principal from your bearer token:

curl
curl https://api.tbbnetwork.com/v1/auth/me \ -H "Authorization: Bearer sk_sandbox_..."

3. Link or headlessly create your sellers

TBBN accounts can only be created directly, on tbbnetwork.com — a merchant can no longer create one on a seller's behalf. You have two options instead: have the seller approve an OAuth account-linking handshake (see the merchant integration walkthrough), or — if your plan tier allows it — create a "headless" seller with no linked TBBN account at all:

POST /merchant/sellers/headless
curl -X POST https://api.tbbnetwork.com/merchant/sellers/headless \
  -H "Authorization: Bearer sk_sandbox_..." \
  -H "Idempotency-Key: 5f2f...b91" \
  -H "Content-Type: application/json" \
  -d '{
    "merchantId": "mer_01hxyz...",
    "merchantSellerRef": "your-internal-seller-id-001",
    "name": "Alex Seller"
  }'

No email/phone matching is attempted for a headless seller — there is no existing account to match against.

4. Use an SDK instead

TypeScript — @tbbn/sdk-typescript
import { TbbnClient } from '@tbbn/sdk-typescript';

const client = new TbbnClient({
  baseUrl: 'https://api.tbbnetwork.com',
  apiKey: 'sk_sandbox_...',
});

const seller = await client.sellers.createHeadless({
  merchantId: 'mer_01hxyz...',
  merchantSellerRef: 'your-internal-seller-id-001',
  name: 'Alex Seller',
});

Next steps