TBBN.Merchant Platform docs
Getting started

From zero to a linked seller

No approval is required to explore the sandbox. This walks through the same flow tools/seed runs against a live stack.

1. Get a sandbox key

Sandbox keys are unlimited and rate-limited only — no production data, no billing. Production keys (sk_live_...) only become available once your merchant application is approved — see the merchant integration walkthrough.

2. Make your first call

Resolve the current principal from your bearer token:

curl
curl https://sandbox-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://sandbox-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://sandbox-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