Skip to main content
Pick your integration mode first. Embed iframe is faster (~30 min); headless API gives full UI control. See Choosing an integration mode if you’re undecided. This Quickstart covers the common starting steps for both.

1. Sign up and grab a sandbox API key

  1. Visit portal.barker.money/register
  2. Verify your email
  3. The portal issues a sandbox key (bk_test_xxxxx) instantly. Copy it — it’s shown once.
Sandbox keys point at a per-partner sandbox engine on testnets (Base Sepolia / Arbitrum Sepolia / Sepolia). Same API surface as production, same chain_id field semantics, but no real funds at risk.

Get test funds

In Portal → Sandbox you can:
  • Mint mock USDC to your test wallet (1 click, capped per day)
  • See the sandbox base URL and remind yourself how bk_test_* keys behave
  • Send a test inbound webhook (handy for verifying your HMAC handler before going live)
Use the faucet to fund your test wallet, then call approve + deposit on the sandbox engine the same way you would in production. Round-trip a redeem to confirm.

2. List products

curl https://api.barker.money/api/partner/products \
  -H "X-Api-Key: bk_test_xxxxx"
Response:
{
  "success": true,
  "data": [
    {
      "slug": "acme-usdc-base",
      "partner": "Acme Pay",
      "chain": "base",
      "engine_contract_address": "0x1234567890123456789012345678901234567890",
      "asset_symbol": "USDC",
      "status": "active",
      "latest_metrics": {
        "as_of_date": "2026-05-03",
        "engine_total_assets": "1245678.000000",
        "underlying_apy": "0.0612",
        "net_apy_for_user": "0.0551"
      }
    }
  ]
}
Response also includes barker_fee_bps / partner_fee_bps fields (configured per partner contract). See API Reference for the full schema.

3. Use the JS SDK (optional)

npm install @barker/sdk-js
import { createBarkerClient } from "@barker/sdk-js";

const barker = createBarkerClient({
  apiKey: process.env.BARKER_API_KEY!, // bk_test_* or bk_live_*
});

const { data } = await barker.GET("/api/partner/products");
console.log(data);
The SDK reads the key prefix to determine sandbox vs production behavior automatically — same base URL for both.

4. Move to production

When you’re ready to deploy a real engine for your users:
  1. Open the portal API Keys page → “Promote to Production”
  2. Manual review (typically a few hours)
  3. Switch to a bk_live_xxxxx key — same code, same base URL.

Rate limit

  • Sandbox keys: 100 req/min
  • Production keys: 1000 req/min
Both are anti-abuse — there is no usage billing.

Continue with your integration mode