Appearance
Getting started
The BudgetBakers partner platform gives your product bank data: your users connect their bank accounts through a hosted flow, and you read accounts and transactions over a REST API — with signed webhooks telling you when things happen. This page takes you from zero to your first authenticated API call.
1. Create your partner account
Register in the partner portal (Google sign-in). Registration is instant and provisions sandbox access immediately — no card, no business verification. Those come later, only when you go live.
2. Get your sandbox API key
In the portal, open API keys and create a sandbox key. The full key — bb_test_ followed by 32 characters — is shown exactly once at creation; store it in your secret manager. Only a fingerprint is kept on our side, so a lost key means minting a new one (keys rotate with zero downtime — see Authentication).
3. Make your first call
Every request authenticates with the X-Api-Key header. Ask the API who you are:
sh
curl https://aisp-partner.bbapi.io/v2/partner/config \
-H "X-Api-Key: {{BB_API_KEY}}"json
{
"partnerId": "2f5a1c3e-9b7d-4e21-a6c8-0d4f5e6a7b8c",
"name": "Acme Lending",
"mode": "sandbox",
"capabilities": { "refresh": true, "reconnect": true, "enrichment": false }
}capabilities is worth reading once at startup: calling a capability that is disabled for your plan returns 403 capability_disabled.
4. See the sandbox banks
sh
curl https://aisp-partner.bbapi.io/v2/providers \
-H "X-Api-Key: {{BB_API_KEY}}"In sandbox mode you get the fictional *_xf providers (e.g. Sandbox Bank XF). They behave like real banks — OAuth screens, accounts, transactions, failure scenarios — but with test data and no real credentials.
Each sandbox bank (country XF) plays one scenario:
| Provider code | Scenario |
|---|---|
sandbox_pms_xf | Happy path: login, accounts, balances, transactions |
sandbox_multi_account_pms_xf | Three accounts (EUR, USD, CZK) on one connection |
sandbox_no_accounts_pms_xf | Login succeeds, the bank shares no account |
sandbox_no_transactions_pms_xf | Accounts without transactions |
sandbox_partial_data_pms_xf | Two accounts; transactions of one fail to load |
sandbox_delayed_pms_xf | The bank takes about 5 seconds per call |
sandbox_auth_denied_pms_xf | The user denies access on the bank's screen |
sandbox_consent_revoked_pms_xf | The bank later rejects the token refresh, as after a revoked consent |
sandbox_server_error_pms_xf | Login succeeds, the account list fails with a server error |
Sandbox banks are for bb_test_… keys. A bb_live_… key does not list them, the hosted bank picker of a live session does not offer them, and a connection to one (say, a sandbox provider id left in your config) is refused with 403 sandbox_provider_not_allowed.
Sandbox vs live
The mode is selected by the API key, nothing else:
| Key prefix | Mode | Banks | Billing |
|---|---|---|---|
bb_test_… | sandbox | fictional *_xf providers | free |
bb_live_… | live | real banks | metered |
Sandbox is a complete, permanent environment — keep using it for CI and staging after you go live. Live keys become available once the go-live checks in the portal pass (card verification, automated business check, terms acceptance); your code stays identical, only the key changes.
Pick your quickstart
| Platform | Guide | What you build |
|---|---|---|
| Node.js / TypeScript | Quickstart | server integration with @budgetbakers/partner-sdk |
| Python | Quickstart | server integration with budgetbakers-partner-sdk |
| Kotlin / Java | Quickstart | server integration with com.budgetbakers:partner-sdk on the JVM |
A mobile app needs no SDK of its own: it opens the hosted flow in the system browser and catches the return link, while your backend (one of the server quickstarts) holds the API key. See Mobile apps.
Next steps
- The hosted connect flow — how sessions, redirects and connection states work.
- Mobile apps - opening the hosted flow from iOS and Android.
- Authentication & API keys — key lifecycle, scoping, rate limits.
- Webhooks — signed events and how to verify them.
- Error handling — the error envelope and all machine codes.
- Go-live checklist — the gates and integration readiness.
- Downloads — SDK packages and the example integration.