{
"detail": "Invalid request parameters",
"error_code": "VALIDATION_ERROR",
"errors": [
{
"field": "amount",
"message": "Amount must be a positive decimal string",
"type": "value_error"
}
]
}
{
"detail": "Invalid API key",
"error_code": "UNAUTHORIZED"
}
{
"detail": "API key does not have permission for this operation",
"error_code": "FORBIDDEN"
}
{
"detail": "Resource not found",
"error_code": "NOT_FOUND"
}
Connected Accounts
Create an account
Create an account under your platform. The account starts with nothing enabled: the capabilities you request here decide which requirements it is given, and a person enables each capability once those requirements are satisfied. Requires an active connect capability on your own platform, and an account cannot create accounts of its own. See Create an account.
{
"detail": "Invalid request parameters",
"error_code": "VALIDATION_ERROR",
"errors": [
{
"field": "amount",
"message": "Amount must be a positive decimal string",
"type": "value_error"
}
]
}
{
"detail": "Invalid API key",
"error_code": "UNAUTHORIZED"
}
{
"detail": "API key does not have permission for this operation",
"error_code": "FORBIDDEN"
}
{
"detail": "Resource not found",
"error_code": "NOT_FOUND"
}
Authorizations
Authorization
string
header
required
Bearer token authentication. Pass your API key as Authorization: Bearer sk_.... See Authentication for keys, scopes, and sandbox vs production.
Scopes
connected_accounts:write
Headers
X-Account-Id
string
Account ID when acting on behalf of a sub-account.
Body
application/json
contact_email
string<email>
required
Email address of the person or business behind the account. Trimmed and lowercased before it is stored.
Example:
"ada@adastores.example"
display_name
string | null
Name you want the account listed under. Becomes the account's name, and is null until the account holder sets one during onboarding if you omit it.
Example:
"Ada Stores"
first_name
string | null
A given name used only to label the account. It does not add a person to the account and does not satisfy persons.name: add the representative through fields.persons on Update an account. Whitespace-only values are stored as null.
Maximum string length: 255
Example:
"Ada"
last_name
string | null
A family name used only to label the account. Like first_name, it does not add a person to the account. Whitespace-only values are stored as null.
Maximum string length: 255
Example:
"Okafor"
country
string | null
Two-letter ISO 3166-1 country code for the account. Decides which requirements the account is given, so set it when you already know it. Falls back to your own platform's country.
Example:
"NG"
entity_type
enum<string> | null
What kind of legal person the account is, which together with country decides the requirements it is given. company: a registered entity, asked for registration and ownership details. individual: a natural person, asked only for their own identity.
Available options:
company,
individual
Example:
"company"
configuration
object | null
Personas the account is being created for, keyed by name (merchant, recipient). No persona is ever applied automatically, recipient included. An account created with no configuration holds neither and cannot hold any capability; the personas and capabilities in your Connect setup are not applied to an API create. Only the setup's international payouts default is, when payouts is requested. Sending an empty object is rejected with 422 VALIDATION_ERROR; omit the field entirely for a persona-less account instead. A capability is only ever named inside the persona object it belongs to, in its capabilities, so naming one always names its persona in the same request; there is no way to name a capability without also naming a persona, and no way to infer one from a bare capability name. A capability nested under the wrong persona for it is rejected with 400 capability_configuration_mismatch. There is no field to apply a configuration after creation other than naming it again on update, so decide every persona the account will ever need up front, or add one later on POST /v1/accounts/{account_id}. An unrecognised key is rejected with 400 invalid_configuration.
Fee arrangement for the account. Defaults to Bachs collecting its fee out of the charge.
Show child attributes
dashboard
enum<string>
default:none
Whether the person behind the account can log in to see their money. none: nobody logs in. light: they log in at connect.bachs.io, with your branding and no password. full: they log in to the Bachs dashboard at app.bachs.io with a Bachs login, and are invited by email when the account goes live. You can raise the mode later, but not lower it. See Give an account a dashboard.
Available options:
none,
light,
full
Example:
"light"
dashboard_features
object
What the person may change from their dashboard. Every switch starts off. Send only the switches you want to change; the rest keep their value. view_payments is always on and cannot be sent. These switches limit the person only, never your API key. See Give an account a dashboard.
Show child attributes
Example:
{ "payout_schedule": true }
Response
Account created, with the requirements the requested capabilities just surfaced.
id
string
Unique identifier for the account.
Example:
"acct_7KpQ2mNv4XbR9dLc"
name
string | null
The account's display name.
Example:
"Ada Stores"
owner_user_id
string
The user that owns the account. For an account you own this is a service user Bachs created; you never authenticate as it.
Example:
"usr_7b3e19d24c0a"
parent_organization_id
string | null
The platform this account is connected to, or null when it is a platform in its own right.
Example:
"acct_7KpQ2mNv4XbR9dLc"
country
string | null
Two-letter ISO 3166-1 country code. Decides which requirements the account is given.
Example:
"NG"
entity_type
enum<string> | null
What kind of legal person the account is, which together with country decides the requirements it is given. company: a registered entity, asked for registration and ownership details. individual: a natural person, asked only for their own identity.
Available options:
company,
individual
Example:
"company"
fee_handling
enum<string>
Who absorbs processing fees at checkout. account_pays_fee: deducted from the amount you receive. customer_pays_fee: added to what the customer pays.
Available options:
account_pays_fee,
customer_pays_fee
Example:
"account_pays_fee"
enabled_payment_methods
object | null
One entry per exact corridor (USD_CARD, NGN_CARD, NGN_BANK_TRANSFER, MOMO_GHS to MOMO_ZMW, CRYPTO). See payment method support. Each value has an enabled boolean; CRYPTO additionally carries a currencies map since it covers several asset/network pairs.
adaptive_pricing
boolean
When true, customers are shown prices in their local currency where one is available.
Example:
true
balance_currencies
string[]
Currencies this account is configured to hold a balance in.
Example:
["NGN", "USD"]
phone_number
string | null
Contact phone number, including country code.
Example:
"+2348012345678"
company_name
string | null
Registered company name, when the account is a company.
Example:
"Ada Stores Limited"
enabled_capabilities
string[] | null
Names of the capabilities currently active on this account. A convenience view of capabilities.
Example:
["transfers", "payouts"]
capabilities
object | null
Each capability's status, keyed by capability name. Populated on single-account reads only; null on list items.
Show child attributes
requirements
object | null
Outstanding requirements for this account. Populated on single-account reads only; null on list items.
Show child attributes
is_active
boolean
When false, the account is deactivated and cannot authenticate or move funds.
Example:
true
created_at
string
When the account was created, ISO 8601 in UTC.
Example:
"2026-08-01T09:12:44.000Z"
updated_at
string
When the account was last updated, ISO 8601 in UTC.
Example:
"2026-08-07T11:04:22.518Z"
responsibilities
object | null
Fee arrangement for an account you own. null when this object is not an account you own.
Show child attributes
configuration
object | null
Personas applied to this account, keyed by name (merchant, recipient), each with an empty object as its value. Populated on single-account reads, where it is {} when none apply; null on list items.
All five switches. view_payments is true in light and full mode. In none mode every switch reads false, because nobody logs in; the switches you set come back if you raise the mode.
not_invited: nobody has logged in yet. invited: a full invite is out, and nobody has accepted it yet. active: the person behind the account has logged in at least once, or accepted the full invite.
Available options:
not_invited,
invited,
active
Example:
"not_invited"
liveness_owed
boolean | null
true when the person behind the account still needs to do the selfie video check. Send them a liveness account link. Only on a single-account read. See The selfie video check.
Example:
false
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Bachs","description":"Payments and billing infrastructure for internet businesses. Accept payments globally through hosted or overlay checkout, run subscriptions and free trials, and settle in your currency. REST API with a full sandbox.","colors":{"primary":"#5266eb","light":"#8fb6fb","dark":"#5266eb"},"logo":{"light":"https://mintcdn.com/bachs/8QOZkInmSDP5Ad7N/logo.png?fit=max\u0026auto=format\u0026n=8QOZkInmSDP5Ad7N\u0026q=85\u0026s=9d4369b7a7ceeb9d196f647822f4ea01","dark":"https://mintcdn.com/bachs/8QOZkInmSDP5Ad7N/logo-dark.png?fit=max\u0026auto=format\u0026n=8QOZkInmSDP5Ad7N\u0026q=85\u0026s=a6ad42659c02e7126806019cafab7bae"},"favicon":"https://mintcdn.com/bachs/OmvT4wSHNg_ay0Sy/favicon.png?fit=max\u0026auto=format\u0026n=OmvT4wSHNg_ay0Sy\u0026q=85\u0026s=fa1681d092d772a654316ae4012045fb","api":{"openapi":"docs/openapi/openapi.json","playground":{"display":"interactive"},"examples":{"defaults":"all","languages":["bash","javascript","python","go"],"prefill":true,"autogenerate":true}},"appearance":{"default":"dark","strict":false},"background":{"color":{"light":"#fbfcfd","dark":"#1e1e2a"}},"navbar":{"links":[{"href":"https://cal.com/bolu-dada/bachs","label":"Book a Demo"}],"primary":{"type":"button","label":"Get Started","href":"https://app.bachs.io/signup"}},"footer":{"socials":{"x":"https://x.com/bachs_hq","website":"https://bachs.io"},"links":[{"header":"Bachs","items":[{"label":"Dashboard","href":"https://app.bachs.io"},{"label":"llms.txt","href":"https://docs.bachs.io/llms.txt"},{"label":"Support","href":"mailto:support@bachs.io"}]}]},"seo":{"metatags":{"google-site-verification":"xCFt-c27YambrzzvRTU4CiqeElNFKGVJZw_8o9IgpdA"}},"fonts":{"heading":{"family":"Geist","weight":600},"body":{"family":"Geist"}},"styling":{"codeblocks":"dark","latex":true},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"variables":{"api-url":"https://api.bachs.io"},"markdown":{"instructions":["Money is always a decimal string at the currency's precision (for example \"29.00\"), paired with an ISO 4217 currency field. Never use minor units.","Build against the sandbox first: base URL https://sandbox-api.bachs.io with sk_sandbox_ keys. Production is https://api.bachs.io with sk_live_ keys; going live is a key swap.","Treat webhooks (for example collection.succeeded) as the source of truth for fulfilment, never client-side events or redirects.","Subscriptions are created by completing a checkout for a recurring product. There is no direct create-subscription endpoint.","IDs carry resource prefixes (cust_, prod_, sub_, chk_, inv_, ref_) and timestamps are ISO 8601 UTC."]},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"bachs","hasAudioNarration":false,"actualSubdomain":"bachs","customDomains":["docs.bachs.io"],"gitSource":{"type":"github","owner":"bachsdev","repo":"bachs-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"entitlements":{},"buildId":"6af7a15776407ecc270c8b4c","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"API reference","count":98},{"language":"default","tag":"Developers","count":60},{"language":"default","tag":"Webhooks","count":46},{"language":"default","tag":"Connect (Sub accounts)","count":37},{"language":"default","tag":"Get started","count":31},{"language":"default","tag":"Events","count":29},{"language":"default","tag":"Payments","count":26},{"language":"default","tag":"Payouts","count":16},{"language":"default","tag":"Subscriptions","count":14},{"language":"default","tag":"Endpoint API","count":14}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"@import url(\"https://fonts.googleapis.com/css2?family=Geist+Mono:wght@400;500;600\u0026display=swap\");@font-face{font-family:\"Geist Pixel\";src:url(\"/fonts/GeistPixel-Square.woff2\") format(\"woff2\");font-weight:400;font-display:swap}code,pre,kbd,samp,.font-mono{font-family:\"Geist Mono\", ui-monospace, Consolas, monospace}.pixel{font-family:\"Geist Pixel\", \"Geist Mono\", monospace;font-weight:400;letter-spacing:0.01em}#navbar img{height:24px;width:auto}.section-cover{border-radius:1rem;width:100%;max-width:600px;height:auto;display:block}.home-hero{background:#5266eb url(\"/images/home/pixels.svg\") center / cover no-repeat;color:#fff;border-radius:1.5rem}.home-hero h1,.home-hero p{color:#fff}.home-btn{display:inline-block;background:#1e1e2a;color:#fff!important;font-weight:600;border-radius:0.6rem;padding:0.8rem 1.3rem;text-decoration:none!important}.home-btn:hover{background:#0b1a6e}.home-btn-ghost{background:rgba(255, 255, 255, 0.14);border:1px solid rgba(255, 255, 255, 0.4)}.home-btn-ghost:hover{background:rgba(255, 255, 255, 0.24)}body:has(.home) #header{display:none}.home{max-width:1160px;margin:0 auto;padding:1.5rem 1.5rem 5rem}.home>h2{margin:3.5rem 0 1.25rem;font-size:1.75rem;font-weight:600;letter-spacing:-0.01em;color:#1e1e2a}.dark .home>h2{color:#f4f5f9}.home{overflow-x:clip}.home-hero{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;padding:3.5rem 3rem;overflow:hidden}.home-eyebrow{font-family:\"Geist Mono\", monospace;font-size:0.8rem;letter-spacing:0.12em;text-transform:uppercase;opacity:0.8;margin:0 0 1rem}.home-hero h1{font-size:3rem;line-height:1.08;font-weight:600;letter-spacing:-0.02em;margin:0 0 1.25rem}.home-hero h1 .pixel{font-size:0.92em}.home-copy>p:not(.home-eyebrow){font-size:1.125rem;line-height:1.6;opacity:0.92;margin:0 0 1.75rem;max-width:34rem}.home-actions{display:flex;gap:0.75rem;flex-wrap:wrap}.home-collage{position:relative;height:400px}.shot{position:absolute;border-radius:12px;box-shadow:0 24px 60px rgba(11, 26, 110, 0.45);background:#fff center / cover no-repeat}.shot-checkout{right:0;bottom:0;width:80%;aspect-ratio:1200 / 788;background-image:url(\"/images/home/hero-checkout.webp\")}.shot-event{right:-3%;top:0;width:34%;aspect-ratio:620 / 941;opacity:0.78;background-image:url(\"/images/home/hero-event.webp\")}.shot-balance{left:0;top:5%;width:44%;aspect-ratio:900 / 725;opacity:0.78;background-image:url(\"/images/home/hero-balance.webp\")}@media (min-width: 1280px){body:not(:has(.home)) #content-container{max-width:1080px}}.shot-row{display:grid;grid-template-columns:1fr 1.5fr;gap:2.5rem;align-items:center}.shot-row>div>:first-child{margin-top:0}.mdx-content img[src*=\"images/product/\"]{max-width:820px;margin-left:auto;margin-right:auto}.shot-row img{margin:0;width:100%;height:auto!important;aspect-ratio:auto!important}.shot-row [data-as=\"p\"],.build [data-as=\"p\"]{display:block;margin:0 0 1rem}.card.rounded-2xl{border-radius:0.6rem}.card .px-6.py-5{padding:1rem 1.25rem}.card h2.not-prose{color:#5266eb;font-weight:500;font-size:0.95rem}.dark .card h2.not-prose{color:#8f9cf7}.card .prose{font-size:0.875rem;line-height:1.45}@media (max-width: 760px){.shot-row{grid-template-columns:minmax(0, 1fr)}}.home-tasks,.home-products{display:grid;grid-template-columns:repeat(4, 1fr);gap:2rem}.home-tasks{margin-top:3rem}.home-tasks h3,.home-products h3{font-size:0.95rem;font-weight:600;margin:0 0 0.75rem;color:#1e1e2a}.dark .home-tasks h3,.dark .home-products h3{color:#f4f5f9}.home-tasks a{display:block;margin:0 0 0.55rem;color:#5266eb;font-weight:500;text-decoration:none}.dark .home-tasks a{color:#8f9cf7}.home-products a{display:block;margin:0 0 1rem;text-decoration:none}.home-products strong{display:block;font-weight:600;color:#5266eb}.dark .home-products strong{color:#8f9cf7}.home-products span{display:block;font-size:0.9rem;line-height:1.45;color:#62647b}.dark .home-products span{color:#b4b8cc}.home-tasks a:hover,.home-products a:hover strong{text-decoration:underline}.build{display:grid;grid-template-columns:1fr 1.5fr;gap:2rem;align-items:start;border:1px solid rgba(112, 115, 147, 0.2);border-radius:1.25rem;padding:1.75rem;background:#f4f5f9}.dark .build{background:rgba(255, 255, 255, 0.03);border-color:rgba(255, 255, 255, 0.1)}.build h3{margin:0 0 0.75rem;font-size:1.25rem}.build>div:first-child p{color:#62647b}.dark .build>div:first-child p{color:#b4b8cc}.build>div:first-child p a{color:#5266eb;font-weight:600}.build .code-group,.build .code-block{margin:0!important}@media (max-width: 760px){.home-hero,.build{grid-template-columns:1fr}.home-tasks,.home-products{grid-template-columns:1fr 1fr}.home-hero{padding:2rem 1.5rem}.home-hero h1{font-size:2.1rem}.home{padding:0.5rem 1rem 4rem}.home-collage{height:auto}.shot-balance,.shot-event{display:none}.shot-checkout{position:relative;width:100%}}.project-modal-overlay{display:none}.project-modal-overlay:target{display:flex;position:fixed;top:var(--scroll-mt, 6rem);right:0;bottom:0;left:0;align-items:center;justify-content:center;z-index:999;padding:24px;pointer-events:none}.project-modal-box{width:100%;max-width:560px;max-height:100%;overflow-y:auto;border-radius:1rem;padding:2rem 1.5rem 1.5rem;position:relative;box-shadow:0 20px 50px rgba(0, 0, 0, 0.25);pointer-events:auto;scrollbar-width:thin;scrollbar-color:rgba(0, 0, 0, 0.25) transparent}.dark .project-modal-box{box-shadow:0 20px 50px rgba(0, 0, 0, 0.5);scrollbar-color:rgba(255, 255, 255, 0.25) transparent}.project-modal-box::-webkit-scrollbar{width:8px}.project-modal-box::-webkit-scrollbar-track{background:transparent}.project-modal-box::-webkit-scrollbar-thumb{background:rgba(0, 0, 0, 0.2);border-radius:9999px}.dark .project-modal-box::-webkit-scrollbar-thumb{background:rgba(255, 255, 255, 0.2)}.project-modal-close{position:absolute;top:0.75rem;right:0.75rem;width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;border-radius:9999px;font-size:1.25rem;line-height:1;text-decoration:none}.project-modal-close:hover{background:rgba(128, 128, 128, 0.15)}.project-modal-box .prose{--tw-prose-body: inherit}.project-modal-box .prose>*:first-child{margin-top:0}.project-modal-box .prose>*:last-child{margin-bottom:0}"},{"filePath":"figures.css","content":"/* cyrillic-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');\n unicode-range: U+1F00-1FFF;\n}\n/* greek */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2');\n unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');\n unicode-range: U+1F00-1FFF;\n}\n/* greek */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2');\n unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');\n unicode-range: U+1F00-1FFF;\n}\n/* greek */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2');\n unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n.pshot{--ink: #1a1a27;--body: #2f2f42;--cap: #72728c;--line: rgba(167, 167, 184, .32);--fill: #f0f0f3;--tint: #f3f3fb;--accent: #4c5fd5;--green: #188554;position:relative;padding:4px 0 28px;font:400 13.5px/1.45 Inter, system-ui, sans-serif;color:var(--body)}.pshot *{box-sizing:border-box;margin:0}.pshot b{font-weight:600;color:var(--ink)}.pshot .card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.pshot .float{position:absolute;z-index:1;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 22px 44px -16px rgba(15, 18, 40, .38), 0 2px 6px rgba(15, 18, 40, .08)}.pshot .pad{padding:18px 20px}.pshot .h{font-size:17px;font-weight:600;color:var(--ink);letter-spacing:-.01em}.pshot .cap{color:var(--cap);font-size:12.5px}.pshot .row{display:flex;align-items:center;justify-content:space-between;gap:12px}.pshot .btn{display:inline-block;padding:8px 18px;border-radius:999px;background:var(--accent);color:#fff;font-weight:500}.pshot .btn.off{background:#b9c1f6}.pshot .chip{display:inline-block;padding:2px 9px;border-radius:999px;background:var(--fill);font-size:12px;font-weight:500}.pshot .tag{display:inline-block;padding:1px 7px;border-radius:5px;background:var(--accent);color:#fff;font-size:10.5px;font-weight:600;letter-spacing:.05em}.pshot .win-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:1px solid var(--line);background:#fafafc}.pshot .win-bar i{width:8px;height:8px;border-radius:50%;background:#dcdde6}.pshot .win-url{margin:0 auto;padding:2px 40px;border-radius:6px;background:var(--fill);font-size:11px;color:var(--cap)}.pshot .split2{display:grid;grid-template-columns:1fr 1.15fr}.pshot .summary{background:var(--tint);padding:22px 20px 26px}.pshot .price{font-size:26px;font-weight:600;color:var(--ink);letter-spacing:-.02em;margin-top:2px}.pshot .picker{display:inline-flex;align-items:center;gap:6px;margin-top:14px;padding:6px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;font-weight:500;color:var(--ink)}.pshot .totals{margin-top:18px;border-top:1px solid var(--line)}.pshot .totals .row{padding:9px 0;border-bottom:1px solid var(--line)}.pshot .methods{padding:18px 18px 20px}.pshot .expires{display:table;margin:0 0 12px auto;padding:3px 10px;border-radius:999px;background:#fff4e5;color:#a8640b;font-size:12px;font-weight:500}.pshot .mlist{border:1px solid var(--line);border-radius:12px;overflow:hidden}.pshot .m{display:flex;align-items:center;gap:10px;padding:11px 12px;border-top:1px solid var(--line);color:var(--ink)}.pshot .m:first-child{border-top:0}.pshot .m.on{flex-wrap:wrap;box-shadow:inset 0 0 0 1.5px var(--accent);border-radius:12px}.pshot .radio{flex:none;width:15px;height:15px;border-radius:50%;border:1.5px solid #b9b9c8}.pshot .on .radio{border:5px solid var(--accent)}.pshot .m .note{flex-basis:100%;padding:9px 11px;border:1px solid var(--line);border-radius:9px;color:var(--cap);font-size:12.5px}.pshot .m .btn{flex-basis:100%;text-align:center}.pshot .secure{margin-top:12px;text-align:center;color:var(--cap);font-size:12px}.pshot .menu{padding:5px}.pshot .menu div{display:flex;align-items:center;gap:9px;padding:6px 10px;border-radius:7px;color:var(--ink);font-weight:500}.pshot .menu .sel{background:var(--fill)}.pshot .flag{width:18px;height:12px;border-radius:2px;flex:none}.pshot .tabs{display:flex;gap:20px;margin-top:14px;border-bottom:1px solid var(--line);font-weight:500;color:#3d3f52}.pshot .tabs span{padding-bottom:9px}.pshot .tabs .sel{color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent)}.pshot .list{margin-top:14px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.pshot .item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid var(--line)}.pshot .item:first-child{border-top:0}.pshot .item.done{background:#f7f7fb}.pshot .num{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12px;border:1px solid #dcdde8;color:var(--cap);background:#fff}.pshot .done .num{border-color:#8f9cf7;background:#eef0fe;color:var(--accent)}.pshot .item .grow{flex:1}.pshot .item small{display:block;color:var(--cap);font-size:12px}.pshot .ok{color:var(--green);font-weight:500;font-size:12.5px}.pshot .bar{height:4px;border-radius:4px;background:#e6e7ef;margin-top:8px}.pshot .bar i{display:block;height:100%;border-radius:4px;background:var(--accent)}.pshot .field{margin-top:12px}.pshot .input{margin-top:5px;padding:8px 11px;border:1px solid var(--line);border-radius:8px;color:var(--ink)}.pshot .group{margin-top:10px;font-size:12px;font-weight:600;color:var(--ink)}.pshot .check{display:flex;align-items:center;gap:8px;margin-top:6px}.pshot .box{flex:none;width:15px;height:15px;border-radius:4px;border:1.5px solid #c3c6dd}.pshot .box.on{border:0;background:var(--accent) url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\") center / 13px no-repeat}.pshot .kv .row{padding:9px 0;border-top:1px solid var(--line)}.pshot .pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.pshot code{font:12px \"Geist Mono\", ui-monospace, monospace;color:var(--ink)}@media (max-width: 760px){.pshot{padding-bottom:8px!important}.pshot .card,.pshot .term,.pshot .float{width:100%!important}.pshot .float{position:static;margin-top:12px;box-shadow:none}.pshot .spacer{display:none}}[role=\"tabpanel\"]:has(.pshot){overflow:visible}.pshot .opts{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.pshot .opt{padding:6px 12px;border:1px solid var(--line);border-radius:9px}.pshot .opt.sel{border-color:transparent;box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--accent);font-weight:500}.pshot .select{display:flex;justify-content:space-between;margin-top:5px;padding:8px 11px;border:1px solid var(--line);border-radius:6px;color:var(--ink)}.pshot .select::after{content:\"\\2304\";color:var(--cap)}.pshot .toggle{flex:none;width:30px;height:17px;border-radius:999px;background:#d9d9e2;position:relative}.pshot .toggle::after{content:\"\";position:absolute;left:2px;top:2px;width:13px;height:13px;border-radius:50%;background:#fff}.pshot .choice{display:flex;align-items:center;gap:10px;margin-top:8px;padding:10px 12px;border:1px solid var(--line);border-radius:10px}.pshot .choice.on{border-color:transparent;box-shadow:inset 0 0 0 1.5px var(--accent)}.pshot .choice small{display:block;color:var(--cap);font-size:12px}.pshot .center{text-align:center;margin-top:14px}.pshot .item .grow.cap{white-space:nowrap}.pshot .toggle.on{background:var(--accent)}.pshot .toggle.on::after{left:15px}.pshot .toggle.dim{opacity:.45}.pshot table{width:100%;border-collapse:collapse}.pshot th{text-align:left;font-weight:400;color:var(--cap);font-size:12px;padding:7px 10px;border-bottom:1px solid var(--line)}.pshot td{padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.pshot tr:last-child td{border-bottom:0}.pshot .badge{padding:2px 7px;border-radius:6px;font-size:11.5px;font-weight:500;background:#e8f6ee;color:var(--green)}.pshot .badge.red{background:#fdecec;color:#c8323c}.pshot .filters{display:flex;gap:6px;margin-top:12px}.pshot .filters span{padding:6px 10px;border:1px solid var(--line);border-radius:8px;color:var(--cap);font-size:12.5px}.pshot .grid3{display:grid;grid-template-columns:repeat(3, 1fr);gap:10px;margin-top:12px}.pshot .grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pshot .mini{border:1px solid var(--line);border-radius:10px;padding:11px 12px}.pshot .mini .t{font-size:12px;font-weight:500;color:var(--ink);text-decoration:underline dotted #b9b9c8;text-underline-offset:3px}.pshot .bars{display:flex;align-items:flex-end;gap:6px;height:74px;margin-top:10px}.pshot .bars i{flex:1;border-radius:4px 4px 0 0;background:#c9cef8}.pshot .bars i:last-child{background:var(--accent)}.pshot .dot{display:inline-block;width:9px;height:6px;border-radius:3px;margin-right:6px}.pshot .dim-page{background:#e9eaf0}.pshot .sandbox{padding:7px 14px;background:#fff7e0;color:#8a5a00;font-size:11.5px;text-align:center}.pshot .drag{color:#b4b6c6;letter-spacing:-2px;margin-right:4px}.pshot .x{margin-left:auto;color:var(--cap)}.pshot .plus{margin-left:auto;color:var(--accent);font-size:16px}.pshot .badge,.pshot code{white-space:nowrap}.pshot .badge.blue{background:#eef0fe;color:var(--accent)}.pshot .btn.red{background:#b42318}.pshot .label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--cap)}.pshot .btn,.pshot .nowrap{white-space:nowrap}.pshot .code{margin-top:6px;padding:10px 12px;border-radius:8px;background:var(--fill);font:11.5px/1.55 \"Geist Mono\", ui-monospace, monospace;color:#8a2a2a;white-space:pre;overflow:hidden}.pshot .side{padding:7px 10px;border-radius:7px;color:var(--body)}.pshot .side.on{background:var(--fill);color:var(--ink);font-weight:500}.pshot.narrow{max-width:620px}.pshot .badge.grey{background:var(--fill);color:var(--cap)}.pshot .notice{margin-top:10px;padding:10px 12px;border-radius:9px;background:#fff4e5;color:#8a5a00;font-size:12.5px}.pshot.diag{max-width:820px;margin:0 auto;padding-bottom:8px}.pshot .term{border-radius:12px;background:#16172a;color:#e9eaf5;overflow:hidden}.pshot .tbar{padding:8px 14px;font-size:12px;color:#a9acc6;background:rgba(255, 255, 255, .04)}.pshot .term pre{margin:0;padding:12px 14px;font:11.5px/1.6 \"Geist Mono\", ui-monospace, monospace;white-space:pre;color:#e9eaf5;overflow:hidden}.pshot .badge.amber{background:#fff4e5;color:#a8640b}.pshot .steps4{display:flex;gap:6px;margin-top:12px}.pshot .steps4 i{flex:1;height:3px;border-radius:2px;background:#e6e7ef}.pshot .steps4 i.on{background:var(--accent)}.pshot .fbox{margin-top:12px;padding:9px 12px;border:1px solid var(--line);border-radius:10px}.pshot .tick{width:44px;height:44px;margin:16px auto 8px;border-radius:50%;border:2px solid var(--accent);color:var(--accent);display:grid;place-items:center;font-size:20px}.pshot .tl{margin-top:12px;padding:8px 12px;border-radius:10px;background:var(--fill)}.pshot .tl div{display:flex;align-items:center;gap:10px;padding:5px 0}.pshot .tl .grow{flex:1}.pshot .tl i{width:8px;height:8px;border-radius:50%;background:#cfd0dc}.pshot .tl .d i{background:#376c47}.pshot .tl .c i{background:#fff;box-shadow:0 0 0 2px #376c47}"}],"page":{"pagePath":"api-reference/accounts/create-an-account","slug":"/api-reference/accounts/create-an-account","pageMetadata":{"title":"Create an account","description":"Create an account under your platform. The account starts with nothing enabled: the capabilities you request here decide which requirements it is given, and a person enables each capability once those requirements are satisfied. Requires an active `connect` capability on your own platform, and an account cannot create accounts of its own. See [Create an account](/connect/accounts).","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts","href":"/api-reference/accounts/create-an-account","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n a: \"a\",\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Create an account under your platform. The account starts with nothing enabled: the capabilities you request here decide which requirements it is given, and a person enables each capability once those requirements are satisfied. Requires an active \", _jsx(_components.code, {\n children: \"connect\"\n }), \" capability on your own platform, and an account cannot create accounts of its own. See \", _jsx(_components.a, {\n href: \"/connect/accounts\",\n children: \"Create an account\"\n }), \".\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"codeStyling":"dark","config":{},"pageMetadata":{"title":"Create an account","description":"Create an account under your platform. The account starts with nothing enabled: the capabilities you request here decide which requirements it is given, and a person enables each capability once those requirements are satisfied. Requires an active `connect` capability on your own platform, and an account cannot create accounts of its own. See [Create an account](/connect/accounts).","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts","href":"/api-reference/accounts/create-an-account","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Accounts"],"summary":"Create an account","description":"Create an account under your platform. The account starts with nothing enabled: the capabilities you request here decide which requirements it is given, and a person enables each capability once those requirements are satisfied. Requires an active `connect` capability on your own platform, and an account cannot create accounts of its own. See [Create an account](/connect/accounts).","operationId":"createConnectedAccount","security":["e362a39e-cbc8-4a2c-bdc6-66a4a9fbbabe"],"parameters":["9b171349-f320-4d71-aeaa-558d3b72224a"],"requestBody":"81d0f76c-7ab6-4c89-865f-65c8d9629c55","responses":{"201":"60658abc-1daf-4ab7-8e93-76282521426c","400":"22006379-6114-414b-a553-4b59f56bafc6","401":"779f15b8-f9e0-4f51-91e2-073edee0f2bd","403":"3ebf036d-69cb-4112-861e-7905a9207ac4","404":"5249814e-6e6e-4ba9-96d6-3e56f434050b"},"method":"post","type":"path","servers":["b6bdb0c4-2e36-4f68-8a92-7d4f6baca10a","05c29608-074a-41fe-8247-0f116f352743"],"path":"/v1/accounts","baseUrlOptions":["https://api.bachs.io","https://sandbox-api.bachs.io"],"title":"Create an account","codeSamples":[],"requestExampleLanguages":["bash","javascript","python","go"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[{"body.contact_email":"ada@adastores.example","body.display_name.oneOf.0":"Ada Stores","body.first_name.oneOf.0":"Ada","body.last_name.oneOf.0":"Okafor","body.country.oneOf.0":"NG","body.entity_type.oneOf.0":"company","body.configuration.oneOf.0.recipient.capabilities.oneOf.0.payouts.requested":true,"body.configuration.oneOf.0.recipient.capabilities.oneOf.0.transfers.requested":true,"body.responsibilities.fees.collector":"bachs"}]},"dependencies":{"parameters":{"9b171349-f320-4d71-aeaa-558d3b72224a":{"name":"X-Account-Id","in":"header","required":false,"schema":{"type":"string","isRequired":false,"description":"Account ID when acting on behalf of a sub-account.","uniqueKey":"","typeLabel":"string"},"description":"Account ID when acting on behalf of a sub-account."}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["contact_email"],"properties":{"contact_email":{"type":"string","format":"email","description":"Email address of the person or business behind the account. Trimmed and lowercased before it is stored.","example":"ada@adastores.example","isRequired":true,"uniqueKey":"contact_email","typeLabel":"string\u003cemail>"},"display_name":{"oneOf":[{"type":"string","description":"Name you want the account listed under. Becomes the account's `name`, and is `null` until the account holder sets one during onboarding if you omit it.","example":"Ada Stores","uniqueKey":"display_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Name you want the account listed under. Becomes the account's `name`, and is `null` until the account holder sets one during onboarding if you omit it.","example":"Ada Stores","uniqueKey":"display_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"display_name","typeLabel":"string | null"},"first_name":{"oneOf":[{"type":"string","maxLength":255,"description":"A given name used only to label the account. It does not add a person to the account and does not satisfy `persons.name`: add the representative through `fields.persons` on [Update an account](/connect/accounts#update-an-account). Whitespace-only values are stored as `null`.","example":"Ada","uniqueKey":"first_name.oneOf.0","typeLabel":"string"},{"type":"null","maxLength":255,"description":"A given name used only to label the account. It does not add a person to the account and does not satisfy `persons.name`: add the representative through `fields.persons` on [Update an account](/connect/accounts#update-an-account). Whitespace-only values are stored as `null`.","example":"Ada","uniqueKey":"first_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"first_name","typeLabel":"string | null"},"last_name":{"oneOf":[{"type":"string","maxLength":255,"description":"A family name used only to label the account. Like `first_name`, it does not add a person to the account. Whitespace-only values are stored as `null`.","example":"Okafor","uniqueKey":"last_name.oneOf.0","typeLabel":"string"},{"type":"null","maxLength":255,"description":"A family name used only to label the account. Like `first_name`, it does not add a person to the account. Whitespace-only values are stored as `null`.","example":"Okafor","uniqueKey":"last_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"last_name","typeLabel":"string | null"},"country":{"oneOf":[{"type":"string","description":"Two-letter ISO 3166-1 country code for the account. Decides which requirements the account is given, so set it when you already know it. Falls back to your own platform's country.","example":"NG","uniqueKey":"country.oneOf.0","typeLabel":"string"},{"type":"null","description":"Two-letter ISO 3166-1 country code for the account. Decides which requirements the account is given, so set it when you already know it. Falls back to your own platform's country.","example":"NG","uniqueKey":"country.oneOf.1","typeLabel":"null"}],"uniqueKey":"country","typeLabel":"string | null"},"entity_type":{"oneOf":[{"type":"string","enum":["company","individual"],"description":"What kind of legal person the account is, which together with `country` decides the requirements it is given. `company`: a registered entity, asked for registration and ownership details. `individual`: a natural person, asked only for their own identity.","example":"company","uniqueKey":"entity_type.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["company","individual"],"description":"What kind of legal person the account is, which together with `country` decides the requirements it is given. `company`: a registered entity, asked for registration and ownership details. `individual`: a natural person, asked only for their own identity.","example":"company","uniqueKey":"entity_type.oneOf.1","typeLabel":"null"}],"uniqueKey":"entity_type","typeLabel":"enum\u003cstring> | null"},"configuration":{"oneOf":[{"type":"object","additionalProperties":{"type":"object","description":"A named persona, and the capabilities requested under it. `capabilities` omitted requests every capability that persona allows on create (never on update); `{}` requests none.","properties":{"capabilities":{"oneOf":[{"type":"object","additionalProperties":{"type":"object","properties":{"requested":{"type":"boolean","default":false,"description":"Set to `true` to request this capability for the account, which applies the configuration the capability belongs to and surfaces the requirements it needs. Requesting authorizes nothing on its own. On update, set to `false` to withdraw a capability that has not gone live yet. See [Withdraw a capability](/connect/capabilities#withdraw-a-capability).","example":true,"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.0.additionalProperties.requested","typeLabel":"boolean"},"international":{"oneOf":[{"type":"boolean","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.0.additionalProperties.international.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.0.additionalProperties.international.oneOf.1","typeLabel":"null"}],"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.0.additionalProperties.international","typeLabel":"boolean | null"}},"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.0.additionalProperties","typeLabel":"object"},"description":"Capabilities requested under this persona, keyed by name. Omitting this on create requests every capability the persona allows; omitting it on update just applies the persona and requests nothing. Send `{}` to apply the persona and request nothing, on either endpoint. An unrecognised or inactive capability name is rejected with `400 unknown_capability`.","example":{"card_collection":{"requested":true}},"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":{"type":"object","properties":{"requested":{"type":"boolean","default":false,"description":"Set to `true` to request this capability for the account, which applies the configuration the capability belongs to and surfaces the requirements it needs. Requesting authorizes nothing on its own. On update, set to `false` to withdraw a capability that has not gone live yet. See [Withdraw a capability](/connect/capabilities#withdraw-a-capability).","example":true,"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.1.additionalProperties.requested","typeLabel":"boolean"},"international":{"oneOf":[{"type":"boolean","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.1.additionalProperties.international.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.1.additionalProperties.international.oneOf.1","typeLabel":"null"}],"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.1.additionalProperties.international","typeLabel":"boolean | null"}},"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.1.additionalProperties","typeLabel":"object"},"description":"Capabilities requested under this persona, keyed by name. Omitting this on create requests every capability the persona allows; omitting it on update just applies the persona and requests nothing. Send `{}` to apply the persona and request nothing, on either endpoint. An unrecognised or inactive capability name is rejected with `400 unknown_capability`.","example":{"card_collection":{"requested":true}},"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.1","typeLabel":"null"}],"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities","typeLabel":"object | null"}},"uniqueKey":"configuration.oneOf.0.additionalProperties","typeLabel":"object"},"description":"Personas the account is being created for, keyed by name (`merchant`, `recipient`). No persona is ever applied automatically, `recipient` included. An account created with no `configuration` holds neither and cannot hold any capability; the personas and capabilities in your Connect setup are not applied to an API create. Only the setup's international payouts default is, when `payouts` is requested. Sending an empty object is rejected with `422 VALIDATION_ERROR`; omit the field entirely for a persona-less account instead. A capability is only ever named inside the persona object it belongs to, in its `capabilities`, so naming one always names its persona in the same request; there is no way to name a capability without also naming a persona, and no way to infer one from a bare capability name. A capability nested under the wrong persona for it is rejected with `400 capability_configuration_mismatch`. There is no field to apply a configuration after creation other than naming it again on update, so decide every persona the account will ever need up front, or add one later on `POST /v1/accounts/{account_id}`. An unrecognised key is rejected with `400 invalid_configuration`.","example":{"merchant":{"capabilities":{"card_collection":{"requested":true}}}},"minProperties":1,"uniqueKey":"configuration.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":{"type":"object","description":"A named persona, and the capabilities requested under it. `capabilities` omitted requests every capability that persona allows on create (never on update); `{}` requests none.","properties":{"capabilities":{"oneOf":[{"type":"object","additionalProperties":{"type":"object","properties":{"requested":{"type":"boolean","default":false,"description":"Set to `true` to request this capability for the account, which applies the configuration the capability belongs to and surfaces the requirements it needs. Requesting authorizes nothing on its own. On update, set to `false` to withdraw a capability that has not gone live yet. See [Withdraw a capability](/connect/capabilities#withdraw-a-capability).","example":true,"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.0.additionalProperties.requested","typeLabel":"boolean"},"international":{"oneOf":[{"type":"boolean","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.0.additionalProperties.international.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.0.additionalProperties.international.oneOf.1","typeLabel":"null"}],"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.0.additionalProperties.international","typeLabel":"boolean | null"}},"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.0.additionalProperties","typeLabel":"object"},"description":"Capabilities requested under this persona, keyed by name. Omitting this on create requests every capability the persona allows; omitting it on update just applies the persona and requests nothing. Send `{}` to apply the persona and request nothing, on either endpoint. An unrecognised or inactive capability name is rejected with `400 unknown_capability`.","example":{"card_collection":{"requested":true}},"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":{"type":"object","properties":{"requested":{"type":"boolean","default":false,"description":"Set to `true` to request this capability for the account, which applies the configuration the capability belongs to and surfaces the requirements it needs. Requesting authorizes nothing on its own. On update, set to `false` to withdraw a capability that has not gone live yet. See [Withdraw a capability](/connect/capabilities#withdraw-a-capability).","example":true,"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.1.additionalProperties.requested","typeLabel":"boolean"},"international":{"oneOf":[{"type":"boolean","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.1.additionalProperties.international.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.1.additionalProperties.international.oneOf.1","typeLabel":"null"}],"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.1.additionalProperties.international","typeLabel":"boolean | null"}},"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.1.additionalProperties","typeLabel":"object"},"description":"Capabilities requested under this persona, keyed by name. Omitting this on create requests every capability the persona allows; omitting it on update just applies the persona and requests nothing. Send `{}` to apply the persona and request nothing, on either endpoint. An unrecognised or inactive capability name is rejected with `400 unknown_capability`.","example":{"card_collection":{"requested":true}},"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.1","typeLabel":"null"}],"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities","typeLabel":"object | null"}},"uniqueKey":"configuration.oneOf.1.additionalProperties","typeLabel":"object"},"description":"Personas the account is being created for, keyed by name (`merchant`, `recipient`). No persona is ever applied automatically, `recipient` included. An account created with no `configuration` holds neither and cannot hold any capability; the personas and capabilities in your Connect setup are not applied to an API create. Only the setup's international payouts default is, when `payouts` is requested. Sending an empty object is rejected with `422 VALIDATION_ERROR`; omit the field entirely for a persona-less account instead. A capability is only ever named inside the persona object it belongs to, in its `capabilities`, so naming one always names its persona in the same request; there is no way to name a capability without also naming a persona, and no way to infer one from a bare capability name. A capability nested under the wrong persona for it is rejected with `400 capability_configuration_mismatch`. There is no field to apply a configuration after creation other than naming it again on update, so decide every persona the account will ever need up front, or add one later on `POST /v1/accounts/{account_id}`. An unrecognised key is rejected with `400 invalid_configuration`.","example":{"merchant":{"capabilities":{"card_collection":{"requested":true}}}},"minProperties":1,"uniqueKey":"configuration.oneOf.1","typeLabel":"null"}],"uniqueKey":"configuration","typeLabel":"object | null"},"responsibilities":{"type":"object","description":"Fee arrangement for the account. Defaults to Bachs collecting its fee out of the charge.","properties":{"fees":{"type":"object","description":"Who collects the Bachs processing fee on this account's charges. Defaults to `bachs`.","properties":{"collector":{"type":"string","enum":["platform","bachs"],"default":"bachs","description":"`bachs`: the fee comes out of the charge and the account settles net. `platform`: the platform absorbs the fee on this account's charges and the account settles gross.","example":"platform","uniqueKey":"responsibilities.fees.collector","typeLabel":"enum\u003cstring>"}},"uniqueKey":"responsibilities.fees","typeLabel":"object"}},"uniqueKey":"responsibilities","typeLabel":"object"},"dashboard":{"type":"string","enum":["none","light","full"],"default":"none","description":"Whether the person behind the account can log in to see their money. `none`: nobody logs in. `light`: they log in at connect.bachs.io, with your branding and no password. `full`: they log in to the Bachs dashboard at app.bachs.io with a Bachs login, and are invited by email when the account goes live. You can raise the mode later, but not lower it. See [Give an account a dashboard](/connect/seller-dashboard).","example":"light","uniqueKey":"dashboard","typeLabel":"enum\u003cstring>"},"dashboard_features":{"type":"object","additionalProperties":false,"properties":{"payout_schedule":{"type":"boolean","description":"Let the person change how often they are paid out.","uniqueKey":"dashboard_features.payout_schedule","typeLabel":"boolean"},"manual_payouts":{"type":"boolean","description":"Let the person withdraw by hand.","uniqueKey":"dashboard_features.manual_payouts","typeLabel":"boolean"},"change_payout_destination":{"type":"boolean","description":"Let the person add and change the bank account, mobile money or wallet they are paid to.","uniqueKey":"dashboard_features.change_payout_destination","typeLabel":"boolean"},"refunds":{"type":"boolean","description":"Let the person refund their own payments.","uniqueKey":"dashboard_features.refunds","typeLabel":"boolean"}},"description":"What the person may change from their dashboard. Every switch starts off. Send only the switches you want to change; the rest keep their value. `view_payments` is always on and cannot be sent. These switches limit the person only, never your API key. See [Give an account a dashboard](/connect/seller-dashboard).","example":{"payout_schedule":true},"uniqueKey":"dashboard_features","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"contact_email":"ada@adastores.example","display_name":"Ada Stores","first_name":"Ada","last_name":"Okafor","country":"NG","entity_type":"company","configuration":{"recipient":{"capabilities":{"payouts":{"requested":true},"transfers":{"requested":true}}}},"responsibilities":{"fees":{"collector":"bachs"}}},"examples":{"Example":{"title":"Example","value":{"contact_email":"ada@adastores.example","display_name":"Ada Stores","first_name":"Ada","last_name":"Okafor","country":"NG","entity_type":"company","configuration":{"recipient":{"capabilities":{"payouts":{"requested":true},"transfers":{"requested":true}}}},"responsibilities":{"fees":{"collector":"bachs"}}}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"60658abc-1daf-4ab7-8e93-76282521426c":{"description":"Account created, with the requirements the requested capabilities just surfaced.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier for the account.","example":"acct_7KpQ2mNv4XbR9dLc","uniqueKey":"id","typeLabel":"string"},"name":{"oneOf":[{"type":"string","description":"The account's display name.","example":"Ada Stores","uniqueKey":"name.oneOf.0","typeLabel":"string"},{"type":"null","description":"The account's display name.","example":"Ada Stores","uniqueKey":"name.oneOf.1","typeLabel":"null"}],"uniqueKey":"name","typeLabel":"string | null"},"owner_user_id":{"type":"string","description":"The user that owns the account. For an account you own this is a service user Bachs created; you never authenticate as it.","example":"usr_7b3e19d24c0a","uniqueKey":"owner_user_id","typeLabel":"string"},"parent_organization_id":{"oneOf":[{"type":"string","description":"The platform this account is connected to, or `null` when it is a platform in its own right.","example":"acct_7KpQ2mNv4XbR9dLc","uniqueKey":"parent_organization_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The platform this account is connected to, or `null` when it is a platform in its own right.","example":"acct_7KpQ2mNv4XbR9dLc","uniqueKey":"parent_organization_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"parent_organization_id","typeLabel":"string | null"},"country":{"oneOf":[{"type":"string","description":"Two-letter ISO 3166-1 country code. Decides which requirements the account is given.","example":"NG","uniqueKey":"country.oneOf.0","typeLabel":"string"},{"type":"null","description":"Two-letter ISO 3166-1 country code. Decides which requirements the account is given.","example":"NG","uniqueKey":"country.oneOf.1","typeLabel":"null"}],"uniqueKey":"country","typeLabel":"string | null"},"entity_type":{"oneOf":[{"type":"string","enum":["company","individual"],"description":"What kind of legal person the account is, which together with `country` decides the requirements it is given. `company`: a registered entity, asked for registration and ownership details. `individual`: a natural person, asked only for their own identity.","example":"company","uniqueKey":"entity_type.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["company","individual"],"description":"What kind of legal person the account is, which together with `country` decides the requirements it is given. `company`: a registered entity, asked for registration and ownership details. `individual`: a natural person, asked only for their own identity.","example":"company","uniqueKey":"entity_type.oneOf.1","typeLabel":"null"}],"uniqueKey":"entity_type","typeLabel":"enum\u003cstring> | null"},"fee_handling":{"type":"string","enum":["account_pays_fee","customer_pays_fee"],"description":"Who absorbs processing fees at checkout. `account_pays_fee`: deducted from the amount you receive. `customer_pays_fee`: added to what the customer pays.","example":"account_pays_fee","uniqueKey":"fee_handling","typeLabel":"enum\u003cstring>"},"enabled_payment_methods":{"oneOf":[{"type":"object","additionalProperties":true,"description":"One entry per exact corridor (`USD_CARD`, `NGN_CARD`, `NGN_BANK_TRANSFER`, `MOMO_GHS` to `MOMO_ZMW`, `CRYPTO`). See [payment method support](/guides/payments/payment-method-support). Each value has an `enabled` boolean; `CRYPTO` additionally carries a `currencies` map since it covers several asset/network pairs.","uniqueKey":"enabled_payment_methods.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"One entry per exact corridor (`USD_CARD`, `NGN_CARD`, `NGN_BANK_TRANSFER`, `MOMO_GHS` to `MOMO_ZMW`, `CRYPTO`). See [payment method support](/guides/payments/payment-method-support). Each value has an `enabled` boolean; `CRYPTO` additionally carries a `currencies` map since it covers several asset/network pairs.","uniqueKey":"enabled_payment_methods.oneOf.1","typeLabel":"null"}],"uniqueKey":"enabled_payment_methods","typeLabel":"object | null"},"adaptive_pricing":{"type":"boolean","description":"When `true`, customers are shown prices in their local currency where one is available.","example":true,"uniqueKey":"adaptive_pricing","typeLabel":"boolean"},"balance_currencies":{"type":"array","items":{"type":"string","uniqueKey":"balance_currencies.items.[INDEX]","typeLabel":"string"},"description":"Currencies this account is configured to hold a balance in.","example":["NGN","USD"],"uniqueKey":"balance_currencies","typeLabel":"string[]"},"phone_number":{"oneOf":[{"type":"string","description":"Contact phone number, including country code.","example":"+2348012345678","uniqueKey":"phone_number.oneOf.0","typeLabel":"string"},{"type":"null","description":"Contact phone number, including country code.","example":"+2348012345678","uniqueKey":"phone_number.oneOf.1","typeLabel":"null"}],"uniqueKey":"phone_number","typeLabel":"string | null"},"company_name":{"oneOf":[{"type":"string","description":"Registered company name, when the account is a company.","example":"Ada Stores Limited","uniqueKey":"company_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Registered company name, when the account is a company.","example":"Ada Stores Limited","uniqueKey":"company_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"company_name","typeLabel":"string | null"},"enabled_capabilities":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"enabled_capabilities.oneOf.0.items.[INDEX]","typeLabel":"string"},"description":"Names of the capabilities currently active on this account. A convenience view of `capabilities`.","example":["transfers","payouts"],"uniqueKey":"enabled_capabilities.oneOf.0","typeLabel":"string[]"},{"type":"null","items":{"type":"string"},"description":"Names of the capabilities currently active on this account. A convenience view of `capabilities`.","example":["transfers","payouts"],"uniqueKey":"enabled_capabilities.oneOf.1","typeLabel":"null"}],"uniqueKey":"enabled_capabilities","typeLabel":"string[] | null"},"capabilities":{"oneOf":[{"type":"object","additionalProperties":{"type":"object","properties":{"status":{"type":"string","enum":["active","pending","restricted","unrequested","unsupported"],"description":"Whether the account may perform this action. `active`: enabled, and the only value that authorizes anything. `pending`: requested or submitted, awaiting review. `restricted`: not enabled, and the default. `unrequested`: the account has no record for this capability, which differs from `restricted` in that it was never asked for. `unsupported`: the account is not eligible for this capability.","example":"active","uniqueKey":"capabilities.oneOf.0.additionalProperties.status","typeLabel":"enum\u003cstring>"},"requested":{"type":"boolean","description":"Whether the account ever requested this capability. A `restricted` capability that was requested is in progress; one that was never requested is outside the account's setup.","example":true,"uniqueKey":"capabilities.oneOf.0.additionalProperties.requested","typeLabel":"boolean"},"status_details":{"oneOf":[{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable reason the capability is not active. Branch on this rather than on `message`.","example":"platform_disabled","uniqueKey":"capabilities.oneOf.0.additionalProperties.status_details.oneOf.0.items.[INDEX].code","typeLabel":"string"},"resolution":{"oneOf":[{"type":"string","description":"What has to happen for the capability to become active.","example":"Contact support to re-enable this capability.","uniqueKey":"capabilities.oneOf.0.additionalProperties.status_details.oneOf.0.items.[INDEX].resolution.oneOf.0","typeLabel":"string"},{"type":"null","description":"What has to happen for the capability to become active.","example":"Contact support to re-enable this capability.","uniqueKey":"capabilities.oneOf.0.additionalProperties.status_details.oneOf.0.items.[INDEX].resolution.oneOf.1","typeLabel":"null"}],"uniqueKey":"capabilities.oneOf.0.additionalProperties.status_details.oneOf.0.items.[INDEX].resolution","typeLabel":"string | null"},"message":{"oneOf":[{"type":"string","description":"Human-readable explanation, safe to show the account holder.","example":"This capability was disabled by the platform.","uniqueKey":"capabilities.oneOf.0.additionalProperties.status_details.oneOf.0.items.[INDEX].message.oneOf.0","typeLabel":"string"},{"type":"null","description":"Human-readable explanation, safe to show the account holder.","example":"This capability was disabled by the platform.","uniqueKey":"capabilities.oneOf.0.additionalProperties.status_details.oneOf.0.items.[INDEX].message.oneOf.1","typeLabel":"null"}],"uniqueKey":"capabilities.oneOf.0.additionalProperties.status_details.oneOf.0.items.[INDEX].message","typeLabel":"string | null"}},"uniqueKey":"capabilities.oneOf.0.additionalProperties.status_details.oneOf.0.items.[INDEX]","typeLabel":"object"},"description":"Why the capability is not active. `null` when the capability is `active`, meaning there is nothing to explain.","uniqueKey":"capabilities.oneOf.0.additionalProperties.status_details.oneOf.0","typeLabel":"object[]"},{"type":"null","items":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable reason the capability is not active. Branch on this rather than on `message`.","example":"platform_disabled"},"resolution":{"oneOf":[{"type":"string","description":"What has to happen for the capability to become active.","example":"Contact support to re-enable this capability."},{"type":"null","description":"What has to happen for the capability to become active.","example":"Contact support to re-enable this capability."}]},"message":{"oneOf":[{"type":"string","description":"Human-readable explanation, safe to show the account holder.","example":"This capability was disabled by the platform."},{"type":"null","description":"Human-readable explanation, safe to show the account holder.","example":"This capability was disabled by the platform."}]}}},"description":"Why the capability is not active. `null` when the capability is `active`, meaning there is nothing to explain.","uniqueKey":"capabilities.oneOf.0.additionalProperties.status_details.oneOf.1","typeLabel":"null"}],"uniqueKey":"capabilities.oneOf.0.additionalProperties.status_details","typeLabel":"object[] | null"},"international":{"type":"boolean","description":"Only on `payouts`, and left out of every other capability. `true` when the account can be paid out to mobile money and to banks outside Nigeria. See [International payouts](/connect/capabilities#international-payouts).","example":false,"uniqueKey":"capabilities.oneOf.0.additionalProperties.international","typeLabel":"boolean"}},"uniqueKey":"capabilities.oneOf.0.additionalProperties","typeLabel":"object"},"description":"Each capability's status, keyed by capability name. Populated on single-account reads only; `null` on list items.","uniqueKey":"capabilities.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":{"type":"object","properties":{"status":{"type":"string","enum":["active","pending","restricted","unrequested","unsupported"],"description":"Whether the account may perform this action. `active`: enabled, and the only value that authorizes anything. `pending`: requested or submitted, awaiting review. `restricted`: not enabled, and the default. `unrequested`: the account has no record for this capability, which differs from `restricted` in that it was never asked for. `unsupported`: the account is not eligible for this capability.","example":"active","uniqueKey":"capabilities.oneOf.1.additionalProperties.status","typeLabel":"enum\u003cstring>"},"requested":{"type":"boolean","description":"Whether the account ever requested this capability. A `restricted` capability that was requested is in progress; one that was never requested is outside the account's setup.","example":true,"uniqueKey":"capabilities.oneOf.1.additionalProperties.requested","typeLabel":"boolean"},"status_details":{"oneOf":[{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable reason the capability is not active. Branch on this rather than on `message`.","example":"platform_disabled","uniqueKey":"capabilities.oneOf.1.additionalProperties.status_details.oneOf.0.items.[INDEX].code","typeLabel":"string"},"resolution":{"oneOf":[{"type":"string","description":"What has to happen for the capability to become active.","example":"Contact support to re-enable this capability.","uniqueKey":"capabilities.oneOf.1.additionalProperties.status_details.oneOf.0.items.[INDEX].resolution.oneOf.0","typeLabel":"string"},{"type":"null","description":"What has to happen for the capability to become active.","example":"Contact support to re-enable this capability.","uniqueKey":"capabilities.oneOf.1.additionalProperties.status_details.oneOf.0.items.[INDEX].resolution.oneOf.1","typeLabel":"null"}],"uniqueKey":"capabilities.oneOf.1.additionalProperties.status_details.oneOf.0.items.[INDEX].resolution","typeLabel":"string | null"},"message":{"oneOf":[{"type":"string","description":"Human-readable explanation, safe to show the account holder.","example":"This capability was disabled by the platform.","uniqueKey":"capabilities.oneOf.1.additionalProperties.status_details.oneOf.0.items.[INDEX].message.oneOf.0","typeLabel":"string"},{"type":"null","description":"Human-readable explanation, safe to show the account holder.","example":"This capability was disabled by the platform.","uniqueKey":"capabilities.oneOf.1.additionalProperties.status_details.oneOf.0.items.[INDEX].message.oneOf.1","typeLabel":"null"}],"uniqueKey":"capabilities.oneOf.1.additionalProperties.status_details.oneOf.0.items.[INDEX].message","typeLabel":"string | null"}},"uniqueKey":"capabilities.oneOf.1.additionalProperties.status_details.oneOf.0.items.[INDEX]","typeLabel":"object"},"description":"Why the capability is not active. `null` when the capability is `active`, meaning there is nothing to explain.","uniqueKey":"capabilities.oneOf.1.additionalProperties.status_details.oneOf.0","typeLabel":"object[]"},{"type":"null","items":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable reason the capability is not active. Branch on this rather than on `message`.","example":"platform_disabled"},"resolution":{"oneOf":[{"type":"string","description":"What has to happen for the capability to become active.","example":"Contact support to re-enable this capability."},{"type":"null","description":"What has to happen for the capability to become active.","example":"Contact support to re-enable this capability."}]},"message":{"oneOf":[{"type":"string","description":"Human-readable explanation, safe to show the account holder.","example":"This capability was disabled by the platform."},{"type":"null","description":"Human-readable explanation, safe to show the account holder.","example":"This capability was disabled by the platform."}]}}},"description":"Why the capability is not active. `null` when the capability is `active`, meaning there is nothing to explain.","uniqueKey":"capabilities.oneOf.1.additionalProperties.status_details.oneOf.1","typeLabel":"null"}],"uniqueKey":"capabilities.oneOf.1.additionalProperties.status_details","typeLabel":"object[] | null"},"international":{"type":"boolean","description":"Only on `payouts`, and left out of every other capability. `true` when the account can be paid out to mobile money and to banks outside Nigeria. See [International payouts](/connect/capabilities#international-payouts).","example":false,"uniqueKey":"capabilities.oneOf.1.additionalProperties.international","typeLabel":"boolean"}},"uniqueKey":"capabilities.oneOf.1.additionalProperties","typeLabel":"object"},"description":"Each capability's status, keyed by capability name. Populated on single-account reads only; `null` on list items.","uniqueKey":"capabilities.oneOf.1","typeLabel":"null"}],"uniqueKey":"capabilities","typeLabel":"object | null"},"requirements":{"oneOf":[{"type":"object","description":"Outstanding requirements for this account. Populated on single-account reads only; `null` on list items.","properties":{"currently_due":{"type":"array","items":{"type":"string","uniqueKey":"requirements.oneOf.0.currently_due.items.[INDEX]","typeLabel":"string"},"description":"Field keys required now.","example":["company.registration_number"],"uniqueKey":"requirements.oneOf.0.currently_due","typeLabel":"string[]"},"eventually_due":{"type":"array","items":{"type":"string","uniqueKey":"requirements.oneOf.0.eventually_due.items.[INDEX]","typeLabel":"string"},"description":"Field keys required later, once a threshold or stage is reached.","example":[],"uniqueKey":"requirements.oneOf.0.eventually_due","typeLabel":"string[]"},"past_due":{"type":"array","items":{"type":"string","uniqueKey":"requirements.oneOf.0.past_due.items.[INDEX]","typeLabel":"string"},"description":"Field keys that were required by a date now passed.","example":[],"uniqueKey":"requirements.oneOf.0.past_due","typeLabel":"string[]"},"pending_verification":{"type":"array","items":{"type":"string","uniqueKey":"requirements.oneOf.0.pending_verification.items.[INDEX]","typeLabel":"string"},"description":"Field keys provided and being checked.","example":["persons.per_3a91c0d7.id_document"],"uniqueKey":"requirements.oneOf.0.pending_verification","typeLabel":"string[]"},"errors":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string","description":"The field key that was rejected.","example":"persons.per_3a91c0d7.id_document","uniqueKey":"requirements.oneOf.0.errors.items.[INDEX].field","typeLabel":"string"},"code":{"oneOf":[{"type":"string","description":"Machine-readable rejection reason.","example":"unreadable","uniqueKey":"requirements.oneOf.0.errors.items.[INDEX].code.oneOf.0","typeLabel":"string"},{"type":"null","description":"Machine-readable rejection reason.","example":"unreadable","uniqueKey":"requirements.oneOf.0.errors.items.[INDEX].code.oneOf.1","typeLabel":"null"}],"uniqueKey":"requirements.oneOf.0.errors.items.[INDEX].code","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","description":"Human-readable rejection reason, safe to show the account holder.","example":"The document image was too blurry to read.","uniqueKey":"requirements.oneOf.0.errors.items.[INDEX].reason.oneOf.0","typeLabel":"string"},{"type":"null","description":"Human-readable rejection reason, safe to show the account holder.","example":"The document image was too blurry to read.","uniqueKey":"requirements.oneOf.0.errors.items.[INDEX].reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"requirements.oneOf.0.errors.items.[INDEX].reason","typeLabel":"string | null"}},"uniqueKey":"requirements.oneOf.0.errors.items.[INDEX]","typeLabel":"object"},"description":"Fields that were provided and then rejected, as distinct from fields that are missing.","uniqueKey":"requirements.oneOf.0.errors","typeLabel":"object[]"},"entries":{"type":"array","items":{"type":"object","description":"One outstanding requirement and what it holds up. The buckets say what is missing; this says what breaks while it is. Prefer this over the buckets when an account holds more than one capability.","properties":{"field":{"type":"string","description":"Canonical field key.","example":"company.registration_number","uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].field","typeLabel":"string"},"status":{"type":"string","description":"The bucket this entry is in.","enum":["currently_due","eventually_due","past_due","pending_verification"],"example":"currently_due","uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"restricts_capabilities":{"type":"array","items":{"type":"string","uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].restricts_capabilities.items.[INDEX]","typeLabel":"string"},"description":"Capabilities this field blocks. Empty when no capability the account holds requires it.","example":["payouts"],"uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].restricts_capabilities","typeLabel":"string[]"},"errors":{"type":"array","items":{"type":"object","properties":{"code":{"oneOf":[{"type":"string","uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].errors.items.[INDEX].code.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].errors.items.[INDEX].code.oneOf.1","typeLabel":"null"}],"uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].errors.items.[INDEX].code","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].errors.items.[INDEX].reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].errors.items.[INDEX].reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].errors.items.[INDEX].reason","typeLabel":"string | null"}},"uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"description":"Verification or rejection errors for this field.","uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].errors","typeLabel":"object[]"},"resolution":{"type":"string","enum":["api","review"],"description":"Who can act on this field. `api`: yours to supply, through the account update or the persons subresource. `review`: already provided and sitting with us, so re-sending it achieves nothing. Treat an unrecognized value as not yours to resolve.","example":"api","uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].resolution","typeLabel":"enum\u003cstring>"},"deadline":{"oneOf":[{"type":"string","format":"date-time","description":"When this field must be resolved by, if a deadline was set.","uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].deadline.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"When this field must be resolved by, if a deadline was set.","uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].deadline.oneOf.1","typeLabel":"null"}],"uniqueKey":"requirements.oneOf.0.entries.items.[INDEX].deadline","typeLabel":"string\u003cdate-time> | null"}},"uniqueKey":"requirements.oneOf.0.entries.items.[INDEX]","typeLabel":"object"},"description":"Per-field view of the same requirements, each carrying the capabilities it blocks.","uniqueKey":"requirements.oneOf.0.entries","typeLabel":"object[]"},"values":{"type":"array","items":{"type":"object","description":"One field's current value, for reading back what the account already provided and prefilling an edit form.","properties":{"field":{"type":"string","description":"Canonical key for the field, the same key you submit it under.","example":"business_profile.url","uniqueKey":"requirements.oneOf.0.values.items.[INDEX].field","typeLabel":"string"},"label":{"type":"string","description":"Human-readable name for the field, safe to show the account holder verbatim.","example":"Business website","uniqueKey":"requirements.oneOf.0.values.items.[INDEX].label","typeLabel":"string"},"group":{"oneOf":[{"type":"string","description":"Which onboarding section the field is shown in: `identity_verification`, `business_ownership`, `product_information`, or `bank_verification`. Note this is a coarser grouping than the `group` on a checklist field. `null` when the field maps to no section.","example":"product_information","uniqueKey":"requirements.oneOf.0.values.items.[INDEX].group.oneOf.0","typeLabel":"string"},{"type":"null","description":"Which onboarding section the field is shown in: `identity_verification`, `business_ownership`, `product_information`, or `bank_verification`. Note this is a coarser grouping than the `group` on a checklist field. `null` when the field maps to no section.","example":"product_information","uniqueKey":"requirements.oneOf.0.values.items.[INDEX].group.oneOf.1","typeLabel":"null"}],"uniqueKey":"requirements.oneOf.0.values.items.[INDEX].group","typeLabel":"string | null"},"provided":{"type":"boolean","description":"Whether the account has a value for this field. A sensitive field reports `provided: true` with no `value`.","example":true,"uniqueKey":"requirements.oneOf.0.values.items.[INDEX].provided","typeLabel":"boolean"},"sensitive":{"type":"boolean","description":"When `true`, the value is never echoed back: `value` stays `null` and `display` reads `Provided`. Identity documents and bank account numbers are sensitive, so an edit form has to collect them again rather than prefill them.","example":false,"uniqueKey":"requirements.oneOf.0.values.items.[INDEX].sensitive","typeLabel":"boolean"},"value":{"oneOf":[{"description":"The raw value, suitable for prefilling an edit form. Always `null` when `sensitive` is `true`.","example":"https://adastores.example","uniqueKey":"requirements.oneOf.0.values.items.[INDEX].value.oneOf.0","typeLabel":"any"},{"description":"The raw value, suitable for prefilling an edit form. Always `null` when `sensitive` is `true`.","example":"https://adastores.example","type":"null","uniqueKey":"requirements.oneOf.0.values.items.[INDEX].value.oneOf.1","typeLabel":"null"}],"uniqueKey":"requirements.oneOf.0.values.items.[INDEX].value","typeLabel":"any | null"},"display":{"oneOf":[{"type":"string","description":"One-line summary of the value for a review card. `Provided` for a sensitive field, and `null` when nothing has been provided.","example":"https://adastores.example","uniqueKey":"requirements.oneOf.0.values.items.[INDEX].display.oneOf.0","typeLabel":"string"},{"type":"null","description":"One-line summary of the value for a review card. `Provided` for a sensitive field, and `null` when nothing has been provided.","example":"https://adastores.example","uniqueKey":"requirements.oneOf.0.values.items.[INDEX].display.oneOf.1","typeLabel":"null"}],"uniqueKey":"requirements.oneOf.0.values.items.[INDEX].display","typeLabel":"string | null"},"reference_data":{"oneOf":[{"type":"object","additionalProperties":true,"description":"Resolved labels for a value that is stored as a code, such as the name behind a bank code, so a review card does not have to look them up. `null` when the field has nothing to resolve.","uniqueKey":"requirements.oneOf.0.values.items.[INDEX].reference_data.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"Resolved labels for a value that is stored as a code, such as the name behind a bank code, so a review card does not have to look them up. `null` when the field has nothing to resolve.","uniqueKey":"requirements.oneOf.0.values.items.[INDEX].reference_data.oneOf.1","typeLabel":"null"}],"uniqueKey":"requirements.oneOf.0.values.items.[INDEX].reference_data","typeLabel":"object | null"}},"uniqueKey":"requirements.oneOf.0.values.items.[INDEX]","typeLabel":"object"},"description":"Only present with `include=requirements.values`. Account-level fields and their current values, for reading back what was submitted and prefilling an edit. Sensitive fields are listed as provided and never echoed. People are returned separately under `persons`.","uniqueKey":"requirements.oneOf.0.values","typeLabel":"object[]"},"persons":{"type":"array","items":{"type":"object","additionalProperties":true,"uniqueKey":"requirements.oneOf.0.persons.items.[INDEX]","typeLabel":"object"},"description":"One entry per person on the account, rolled up rather than split into fields. Each entry carries `id`, `first_name`, `last_name`, `dob`, `address`, `address_reference_data`, `relationship`, `id_document_provided`, and `verification_status`. Identity documents are summarised by the `id_document_provided` flag and never returned. Only present with `include=requirements.values`.","uniqueKey":"requirements.oneOf.0.persons","typeLabel":"object[]"},"current_deadline":{"oneOf":[{"type":"string","format":"date-time","description":"The soonest deadline across everything outstanding, for a single banner. Null when no outstanding field carries one.","uniqueKey":"requirements.oneOf.0.current_deadline.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"The soonest deadline across everything outstanding, for a single banner. Null when no outstanding field carries one.","uniqueKey":"requirements.oneOf.0.current_deadline.oneOf.1","typeLabel":"null"}],"uniqueKey":"requirements.oneOf.0.current_deadline","typeLabel":"string\u003cdate-time> | null"}},"uniqueKey":"requirements.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"requirements.oneOf.1","typeLabel":"null"}],"uniqueKey":"requirements","typeLabel":"object | null"},"is_active":{"type":"boolean","description":"When `false`, the account is deactivated and cannot authenticate or move funds.","example":true,"uniqueKey":"is_active","typeLabel":"boolean"},"created_at":{"type":"string","description":"When the account was created, ISO 8601 in UTC.","example":"2026-08-01T09:12:44.000Z","uniqueKey":"created_at","typeLabel":"string"},"updated_at":{"type":"string","description":"When the account was last updated, ISO 8601 in UTC.","example":"2026-08-07T11:04:22.518Z","uniqueKey":"updated_at","typeLabel":"string"},"responsibilities":{"oneOf":[{"type":"object","description":"Fee arrangement for an account you own. `null` when this object is not an account you own.","properties":{"fees":{"type":"object","description":"Who collects the Bachs processing fee on this account's charges.","properties":{"collector":{"type":"string","enum":["platform","bachs"],"description":"`bachs`: the fee comes out of the charge and the account settles net. `platform`: the platform absorbs the fee and the account settles gross. Set when the account is created and immutable afterwards.","example":"bachs","uniqueKey":"responsibilities.oneOf.0.fees.collector","typeLabel":"enum\u003cstring>"}},"uniqueKey":"responsibilities.oneOf.0.fees","typeLabel":"object"}},"uniqueKey":"responsibilities.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"responsibilities.oneOf.1","typeLabel":"null"}],"uniqueKey":"responsibilities","typeLabel":"object | null"},"configuration":{"oneOf":[{"type":"object","additionalProperties":{"type":"object","description":"A named persona, and the capabilities requested under it. `capabilities` omitted requests every capability that persona allows on create (never on update); `{}` requests none.","properties":{"capabilities":{"oneOf":[{"type":"object","additionalProperties":{"type":"object","properties":{"requested":{"type":"boolean","default":false,"description":"Set to `true` to request this capability for the account, which applies the configuration the capability belongs to and surfaces the requirements it needs. Requesting authorizes nothing on its own. On update, set to `false` to withdraw a capability that has not gone live yet. See [Withdraw a capability](/connect/capabilities#withdraw-a-capability).","example":true,"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.0.additionalProperties.requested","typeLabel":"boolean"},"international":{"oneOf":[{"type":"boolean","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.0.additionalProperties.international.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.0.additionalProperties.international.oneOf.1","typeLabel":"null"}],"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.0.additionalProperties.international","typeLabel":"boolean | null"}},"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.0.additionalProperties","typeLabel":"object"},"description":"Capabilities requested under this persona, keyed by name. Omitting this on create requests every capability the persona allows; omitting it on update just applies the persona and requests nothing. Send `{}` to apply the persona and request nothing, on either endpoint. An unrecognised or inactive capability name is rejected with `400 unknown_capability`.","example":{"card_collection":{"requested":true}},"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":{"type":"object","properties":{"requested":{"type":"boolean","default":false,"description":"Set to `true` to request this capability for the account, which applies the configuration the capability belongs to and surfaces the requirements it needs. Requesting authorizes nothing on its own. On update, set to `false` to withdraw a capability that has not gone live yet. See [Withdraw a capability](/connect/capabilities#withdraw-a-capability).","example":true,"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.1.additionalProperties.requested","typeLabel":"boolean"},"international":{"oneOf":[{"type":"boolean","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.1.additionalProperties.international.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.1.additionalProperties.international.oneOf.1","typeLabel":"null"}],"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.1.additionalProperties.international","typeLabel":"boolean | null"}},"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.1.additionalProperties","typeLabel":"object"},"description":"Capabilities requested under this persona, keyed by name. Omitting this on create requests every capability the persona allows; omitting it on update just applies the persona and requests nothing. Send `{}` to apply the persona and request nothing, on either endpoint. An unrecognised or inactive capability name is rejected with `400 unknown_capability`.","example":{"card_collection":{"requested":true}},"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities.oneOf.1","typeLabel":"null"}],"uniqueKey":"configuration.oneOf.0.additionalProperties.capabilities","typeLabel":"object | null"}},"uniqueKey":"configuration.oneOf.0.additionalProperties","typeLabel":"object"},"description":"Personas applied to this account, keyed by name (`merchant`, `recipient`), each with an empty object as its value. Populated on single-account reads, where it is `{}` when none apply; `null` on list items.","example":{"merchant":{},"recipient":{}},"uniqueKey":"configuration.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":{"type":"object","description":"A named persona, and the capabilities requested under it. `capabilities` omitted requests every capability that persona allows on create (never on update); `{}` requests none.","properties":{"capabilities":{"oneOf":[{"type":"object","additionalProperties":{"type":"object","properties":{"requested":{"type":"boolean","default":false,"description":"Set to `true` to request this capability for the account, which applies the configuration the capability belongs to and surfaces the requirements it needs. Requesting authorizes nothing on its own. On update, set to `false` to withdraw a capability that has not gone live yet. See [Withdraw a capability](/connect/capabilities#withdraw-a-capability).","example":true,"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.0.additionalProperties.requested","typeLabel":"boolean"},"international":{"oneOf":[{"type":"boolean","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.0.additionalProperties.international.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.0.additionalProperties.international.oneOf.1","typeLabel":"null"}],"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.0.additionalProperties.international","typeLabel":"boolean | null"}},"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.0.additionalProperties","typeLabel":"object"},"description":"Capabilities requested under this persona, keyed by name. Omitting this on create requests every capability the persona allows; omitting it on update just applies the persona and requests nothing. Send `{}` to apply the persona and request nothing, on either endpoint. An unrecognised or inactive capability name is rejected with `400 unknown_capability`.","example":{"card_collection":{"requested":true}},"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":{"type":"object","properties":{"requested":{"type":"boolean","default":false,"description":"Set to `true` to request this capability for the account, which applies the configuration the capability belongs to and surfaces the requirements it needs. Requesting authorizes nothing on its own. On update, set to `false` to withdraw a capability that has not gone live yet. See [Withdraw a capability](/connect/capabilities#withdraw-a-capability).","example":true,"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.1.additionalProperties.requested","typeLabel":"boolean"},"international":{"oneOf":[{"type":"boolean","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.1.additionalProperties.international.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Only `payouts` takes it. `true` lets the account be paid out to mobile money and to banks outside Nigeria, and requests `payouts` too, so `requested` can be left out. `false` turns it off without withdrawing `payouts`. Left out, nothing about it changes. `requested: false` with `international: true` is rejected with `422 VALIDATION_ERROR`. On any other capability it is rejected with `400 capability_option_not_supported`, and only the account's platform can set it (`400 capability_option_platform_only`). See [International payouts](/connect/capabilities#international-payouts).","example":true,"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.1.additionalProperties.international.oneOf.1","typeLabel":"null"}],"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.1.additionalProperties.international","typeLabel":"boolean | null"}},"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.1.additionalProperties","typeLabel":"object"},"description":"Capabilities requested under this persona, keyed by name. Omitting this on create requests every capability the persona allows; omitting it on update just applies the persona and requests nothing. Send `{}` to apply the persona and request nothing, on either endpoint. An unrecognised or inactive capability name is rejected with `400 unknown_capability`.","example":{"card_collection":{"requested":true}},"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities.oneOf.1","typeLabel":"null"}],"uniqueKey":"configuration.oneOf.1.additionalProperties.capabilities","typeLabel":"object | null"}},"uniqueKey":"configuration.oneOf.1.additionalProperties","typeLabel":"object"},"description":"Personas applied to this account, keyed by name (`merchant`, `recipient`), each with an empty object as its value. Populated on single-account reads, where it is `{}` when none apply; `null` on list items.","example":{"merchant":{},"recipient":{}},"uniqueKey":"configuration.oneOf.1","typeLabel":"null"}],"uniqueKey":"configuration","typeLabel":"object | null"},"dashboard":{"type":"string","enum":["none","light","full"],"description":"The account's access mode. See [Give an account a dashboard](/connect/seller-dashboard).","example":"light","uniqueKey":"dashboard","typeLabel":"enum\u003cstring>"},"dashboard_features":{"type":"object","properties":{"view_payments":{"type":"boolean","uniqueKey":"dashboard_features.view_payments","typeLabel":"boolean"},"payout_schedule":{"type":"boolean","uniqueKey":"dashboard_features.payout_schedule","typeLabel":"boolean"},"manual_payouts":{"type":"boolean","uniqueKey":"dashboard_features.manual_payouts","typeLabel":"boolean"},"change_payout_destination":{"type":"boolean","uniqueKey":"dashboard_features.change_payout_destination","typeLabel":"boolean"},"refunds":{"type":"boolean","uniqueKey":"dashboard_features.refunds","typeLabel":"boolean"}},"description":"All five switches. `view_payments` is `true` in `light` and `full` mode. In `none` mode every switch reads `false`, because nobody logs in; the switches you set come back if you raise the mode.","example":{"view_payments":true,"payout_schedule":true,"manual_payouts":false,"change_payout_destination":false,"refunds":false},"uniqueKey":"dashboard_features","typeLabel":"object"},"dashboard_access":{"type":"string","enum":["not_invited","invited","active"],"description":"`not_invited`: nobody has logged in yet. `invited`: a `full` invite is out, and nobody has accepted it yet. `active`: the person behind the account has logged in at least once, or accepted the `full` invite.","example":"not_invited","uniqueKey":"dashboard_access","typeLabel":"enum\u003cstring>"},"liveness_owed":{"oneOf":[{"type":"boolean","description":"`true` when the person behind the account still needs to do the selfie video check. Send them a `liveness` account link. Only on a single-account read. See [The selfie video check](/connect/onboarding#the-selfie-video-check).","example":false,"uniqueKey":"liveness_owed.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"`true` when the person behind the account still needs to do the selfie video check. Send them a `liveness` account link. Only on a single-account read. See [The selfie video check](/connect/onboarding#the-selfie-video-check).","example":false,"uniqueKey":"liveness_owed.oneOf.1","typeLabel":"null"}],"uniqueKey":"liveness_owed","typeLabel":"boolean | null"}},"uniqueKey":"","typeLabel":"object"},"example":{"id":"acct_3Wq8ZfT1yHnJ5sVe","name":"Ada Stores","owner_user_id":"usr_5e0b74c8a213","parent_organization_id":"acct_7KpQ2mNv4XbR9dLc","country":"NG","fee_handling":"account_pays_fee","enabled_payment_methods":null,"adaptive_pricing":true,"balance_currencies":["NGN"],"phone_number":null,"company_name":null,"enabled_capabilities":[],"capabilities":{"payouts":{"status":"pending","requested":true,"status_details":null,"international":false},"transfers":{"status":"pending","requested":true,"status_details":null}},"requirements":{"currently_due":["persons","company.registered_name","company.registration_number","payout_destination"],"eventually_due":[],"past_due":[],"pending_verification":[],"errors":[]},"is_active":true,"created_at":"2026-08-07T11:04:22.518Z","updated_at":"2026-08-07T11:04:22.518Z","responsibilities":{"fees":{"collector":"bachs"}},"configuration":{"recipient":{}}},"examples":{"Example":{"title":"Example","value":{"id":"acct_3Wq8ZfT1yHnJ5sVe","name":"Ada Stores","owner_user_id":"usr_5e0b74c8a213","parent_organization_id":"acct_7KpQ2mNv4XbR9dLc","country":"NG","fee_handling":"account_pays_fee","enabled_payment_methods":null,"adaptive_pricing":true,"balance_currencies":["NGN"],"phone_number":null,"company_name":null,"enabled_capabilities":[],"capabilities":{"payouts":{"status":"pending","requested":true,"status_details":null,"international":false},"transfers":{"status":"pending","requested":true,"status_details":null}},"requirements":{"currently_due":["persons","company.registered_name","company.registration_number","payout_destination"],"eventually_due":[],"past_due":[],"pending_verification":[],"errors":[]},"is_active":true,"created_at":"2026-08-07T11:04:22.518Z","updated_at":"2026-08-07T11:04:22.518Z","responsibilities":{"fees":{"collector":"bachs"}},"configuration":{"recipient":{}}}}},"exampleType":"examples"}},"exampleType":"examples"},"22006379-6114-414b-a553-4b59f56bafc6":{"description":"Bad Request - Validation errors or invalid request format. Check the `details` object for field-specific validation errors. Common causes: missing required fields, invalid data types, values outside allowed ranges, or invalid formats.","content":{"application/json":{"schema":{"type":"object","description":"Standard error response format used across all API endpoints","properties":{"detail":{"type":"string","description":"Human-readable error message explaining what went wrong.","example":"Invalid request parameters","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"type":"string","description":"Machine-readable error code. Use this to handle errors programmatically. Common codes: VALIDATION_ERROR, UNAUTHORIZED, FORBIDDEN, NOT_FOUND, CONFLICT, TOO_MANY_REQUESTS, INTERNAL_SERVER_ERROR, BAD_GATEWAY, SERVICE_UNAVAILABLE.","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"errors":{"type":"array","description":"Optional field-level details on some validation errors. Other validation responses contain only detail and error_code. Entry fields depend on the validation source.","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that failed validation.","example":"amount","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"message":{"type":"string","description":"Description of the validation failure.","example":"Amount must be a positive decimal string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"type":{"type":"string","description":"Error type identifier.","example":"value_error","uniqueKey":"errors.items.[INDEX].type","typeLabel":"string"},"code":{"type":"string","description":"Optional requirement-field rejection code. Some validation entries provide code instead of type.","example":"currency_not_supported","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"}},"required":["field","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Optional link to documentation for this error; some errors omit it.","example":"https://docs.bachs.io/api-reference/error-reference#general","uniqueKey":"doc_url","typeLabel":"string"}},"required":["detail","error_code"],"uniqueKey":"","typeLabel":"object"},"example":{"detail":"Invalid request parameters","error_code":"VALIDATION_ERROR","errors":[{"field":"amount","message":"Amount must be a positive decimal string","type":"value_error"}]},"examples":{"Example":{"title":"Example","value":{"detail":"Invalid request parameters","error_code":"VALIDATION_ERROR","errors":[{"field":"amount","message":"Amount must be a positive decimal string","type":"value_error"}]}}},"exampleType":"examples"}},"headers":{"X-RateLimit-Limit":{"description":"Maximum number of requests allowed per minute","schema":{"type":"integer","example":100}},"X-RateLimit-Remaining":{"description":"Number of requests remaining in the current window","schema":{"type":"integer","example":95}},"X-RateLimit-Reset":{"description":"Unix timestamp when the rate limit window resets","schema":{"type":"integer","example":1706102400}}},"exampleType":"examples"},"779f15b8-f9e0-4f51-91e2-073edee0f2bd":{"description":"Unauthorized - Invalid, missing, or expired API key. Verify your API key is correctly formatted and included in the Authorization header as `Bearer sk_sandbox_...` or `Bearer sk_live_...`. Check that your key hasn't been revoked.","content":{"application/json":{"schema":{"type":"object","description":"Standard error response format used across all API endpoints","properties":{"detail":{"type":"string","description":"Human-readable error message explaining what went wrong.","example":"Invalid request parameters","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"type":"string","description":"Machine-readable error code. Use this to handle errors programmatically. Common codes: VALIDATION_ERROR, UNAUTHORIZED, FORBIDDEN, NOT_FOUND, CONFLICT, TOO_MANY_REQUESTS, INTERNAL_SERVER_ERROR, BAD_GATEWAY, SERVICE_UNAVAILABLE.","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"errors":{"type":"array","description":"Optional field-level details on some validation errors. Other validation responses contain only detail and error_code. Entry fields depend on the validation source.","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that failed validation.","example":"amount","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"message":{"type":"string","description":"Description of the validation failure.","example":"Amount must be a positive decimal string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"type":{"type":"string","description":"Error type identifier.","example":"value_error","uniqueKey":"errors.items.[INDEX].type","typeLabel":"string"},"code":{"type":"string","description":"Optional requirement-field rejection code. Some validation entries provide code instead of type.","example":"currency_not_supported","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"}},"required":["field","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Optional link to documentation for this error; some errors omit it.","example":"https://docs.bachs.io/api-reference/error-reference#general","uniqueKey":"doc_url","typeLabel":"string"}},"required":["detail","error_code"],"uniqueKey":"","typeLabel":"object"},"example":{"detail":"Invalid API key","error_code":"UNAUTHORIZED"},"examples":{"Example":{"title":"Example","value":{"detail":"Invalid API key","error_code":"UNAUTHORIZED"}}},"exampleType":"examples"}},"headers":{"X-RateLimit-Limit":{"description":"Maximum number of requests allowed per minute","schema":{"type":"integer","example":100}},"X-RateLimit-Remaining":{"description":"Number of requests remaining in the current window","schema":{"type":"integer","example":95}},"X-RateLimit-Reset":{"description":"Unix timestamp when the rate limit window resets","schema":{"type":"integer","example":1706102400}}},"exampleType":"examples"},"3ebf036d-69cb-4112-861e-7905a9207ac4":{"description":"Forbidden - API key does not have permission for the requested resource. Verify you're using the correct account's API key and that you're not trying to access another account's data.","content":{"application/json":{"schema":{"type":"object","description":"Standard error response format used across all API endpoints","properties":{"detail":{"type":"string","description":"Human-readable error message explaining what went wrong.","example":"Invalid request parameters","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"type":"string","description":"Machine-readable error code. Use this to handle errors programmatically. Common codes: VALIDATION_ERROR, UNAUTHORIZED, FORBIDDEN, NOT_FOUND, CONFLICT, TOO_MANY_REQUESTS, INTERNAL_SERVER_ERROR, BAD_GATEWAY, SERVICE_UNAVAILABLE.","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"errors":{"type":"array","description":"Optional field-level details on some validation errors. Other validation responses contain only detail and error_code. Entry fields depend on the validation source.","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that failed validation.","example":"amount","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"message":{"type":"string","description":"Description of the validation failure.","example":"Amount must be a positive decimal string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"type":{"type":"string","description":"Error type identifier.","example":"value_error","uniqueKey":"errors.items.[INDEX].type","typeLabel":"string"},"code":{"type":"string","description":"Optional requirement-field rejection code. Some validation entries provide code instead of type.","example":"currency_not_supported","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"}},"required":["field","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Optional link to documentation for this error; some errors omit it.","example":"https://docs.bachs.io/api-reference/error-reference#general","uniqueKey":"doc_url","typeLabel":"string"}},"required":["detail","error_code"],"uniqueKey":"","typeLabel":"object"},"example":{"detail":"API key does not have permission for this operation","error_code":"FORBIDDEN"},"examples":{"Example":{"title":"Example","value":{"detail":"API key does not have permission for this operation","error_code":"FORBIDDEN"}}},"exampleType":"examples"}},"headers":{"X-RateLimit-Limit":{"description":"Maximum number of requests allowed per minute","schema":{"type":"integer","example":100}},"X-RateLimit-Remaining":{"description":"Number of requests remaining in the current window","schema":{"type":"integer","example":95}},"X-RateLimit-Reset":{"description":"Unix timestamp when the rate limit window resets","schema":{"type":"integer","example":1706102400}}},"exampleType":"examples"},"5249814e-6e6e-4ba9-96d6-3e56f434050b":{"description":"Not Found - The requested resource does not exist. Verify the resource ID is correct and that it belongs to your account.","content":{"application/json":{"schema":{"type":"object","description":"Standard error response format used across all API endpoints","properties":{"detail":{"type":"string","description":"Human-readable error message explaining what went wrong.","example":"Invalid request parameters","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"type":"string","description":"Machine-readable error code. Use this to handle errors programmatically. Common codes: VALIDATION_ERROR, UNAUTHORIZED, FORBIDDEN, NOT_FOUND, CONFLICT, TOO_MANY_REQUESTS, INTERNAL_SERVER_ERROR, BAD_GATEWAY, SERVICE_UNAVAILABLE.","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"errors":{"type":"array","description":"Optional field-level details on some validation errors. Other validation responses contain only detail and error_code. Entry fields depend on the validation source.","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that failed validation.","example":"amount","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"message":{"type":"string","description":"Description of the validation failure.","example":"Amount must be a positive decimal string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"type":{"type":"string","description":"Error type identifier.","example":"value_error","uniqueKey":"errors.items.[INDEX].type","typeLabel":"string"},"code":{"type":"string","description":"Optional requirement-field rejection code. Some validation entries provide code instead of type.","example":"currency_not_supported","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"}},"required":["field","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Optional link to documentation for this error; some errors omit it.","example":"https://docs.bachs.io/api-reference/error-reference#general","uniqueKey":"doc_url","typeLabel":"string"}},"required":["detail","error_code"],"uniqueKey":"","typeLabel":"object"},"example":{"detail":"Resource not found","error_code":"NOT_FOUND"},"examples":{"Example":{"title":"Example","value":{"detail":"Resource not found","error_code":"NOT_FOUND"}}},"exampleType":"examples"}},"headers":{"X-RateLimit-Limit":{"description":"Maximum number of requests allowed per minute","schema":{"type":"integer","example":100}},"X-RateLimit-Remaining":{"description":"Number of requests remaining in the current window","schema":{"type":"integer","example":95}},"X-RateLimit-Reset":{"description":"Unix timestamp when the rate limit window resets","schema":{"type":"integer","example":1706102400}}},"exampleType":"examples"}},"security":{"e362a39e-cbc8-4a2c-bdc6-66a4a9fbbabe":{"ApiKeyAuth":{"type":"http","scheme":"bearer","bearerFormat":"API Key","description":"Bearer token authentication. Pass your API key as `Authorization: Bearer sk_...`. See [Authentication](/authentication) for keys, scopes, and sandbox vs production.","scopes":["connected_accounts:write"],"schemeName":"ApiKeyAuth"}}},"servers":{"b6bdb0c4-2e36-4f68-8a92-7d4f6baca10a":{"url":"https://api.bachs.io","description":"Production"},"05c29608-074a-41fe-8247-0f116f352743":{"url":"https://sandbox-api.bachs.io","description":"Sandbox"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"API Key","description":"Bearer token authentication. Pass your API key as `Authorization: Bearer sk_...`. See [Authentication](/authentication) for keys, scopes, and sandbox vs production.","scopes":["connected_accounts:write"],"schemeName":"ApiKeyAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer token authentication. Pass your API key as `Authorization: Bearer sk_...`. See [Authentication](/authentication) for keys, scopes, and sandbox vs production.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"ApiKeyAuth","name":"Authorization"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"docs/openapi/openapi.json"},"subdomain":"bachs","siteName":"Bachs","title":"Create an account - Bachs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-12T14:06:46.364Z","originalFileLocation":"api-reference/accounts/create-an-account.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Create an account under your platform. The account starts with nothing enabled: the capabilities you request here decide which requirements it is given, and a person enables each capability once those requirements are satisfied. Requires an active connect capability on your own platform, and an account cannot create accounts of its own. See Create an account.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Bachs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/bachs/G65YpENXbxC-6e23/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/bachs/G65YpENXbxC-6e23/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/bachs/G65YpENXbxC-6e23/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/bachs/G65YpENXbxC-6e23/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/bachs/G65YpENXbxC-6e23/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/bachs/G65YpENXbxC-6e23/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/bachs/G65YpENXbxC-6e23/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/bachs/G65YpENXbxC-6e23/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/bachs/G65YpENXbxC-6e23/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create an account - Bachs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Create an account under your platform. The account starts with nothing enabled: the capabilities you request here decide which requirements it is given, and a person enables each capability once those requirements are satisfied. Requires an active connect capability on your own platform, and an account cannot create accounts of its own. See Create an account.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Bachs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.bachs.io/api-reference/accounts/create-an-account\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://bachs.mintlify.site/_mintlify/api/og/v2?division=Connected+Accounts\u0026amp;title=Create+an+account\u0026amp;description=Create+an+account+under+your+platform.+The+account+starts+with+nothing+enabled%3A+the+capabilities+you+request+here+decide+which+requirements+it+is+given%2C+and+a+p\u0026amp;theme=6365cd32178e755cedc188f0\u0026amp;signature=df2f2f3e7d3ce44276384a75bf88580a9229759673a511d6667573a791b60604\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Create an account - Bachs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Create an account under your platform. The account starts with nothing enabled: the capabilities you request here decide which requirements it is given, and a person enables each capability once those requirements are satisfied. Requires an active connect capability on your own platform, and an account cannot create accounts of its own. See Create an account.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://bachs.mintlify.site/_mintlify/api/og/v2?division=Connected+Accounts\u0026amp;title=Create+an+account\u0026amp;description=Create+an+account+under+your+platform.+The+account+starts+with+nothing+enabled%3A+the+capabilities+you+request+here+decide+which+requirements+it+is+given%2C+and+a+p\u0026amp;theme=6365cd32178e755cedc188f0\u0026amp;signature=df2f2f3e7d3ce44276384a75bf88580a9229759673a511d6667573a791b60604\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/bachs/G65YpENXbxC-6e23/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Bachs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#5266eb\">\u003cmeta data-mint-head name=\"google-site-verification\" content=\"xCFt-c27YambrzzvRTU4CiqeElNFKGVJZw_8o9IgpdA\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.bachs.io/api-reference/accounts/create-an-account\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/accounts/create-an-account.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.bachs.io/#organization\",\"name\":\"Bachs\",\"url\":\"https://docs.bachs.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/bachs/8QOZkInmSDP5Ad7N/logo.png?fit=max\u0026auto=format\u0026n=8QOZkInmSDP5Ad7N\u0026q=85\u0026s=9d4369b7a7ceeb9d196f647822f4ea01\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.bachs.io#website\",\"name\":\"Bachs\",\"url\":\"https://docs.bachs.io\",\"publisher\":{\"@id\":\"https://docs.bachs.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.bachs.io/api-reference/accounts/create-an-account#webpage\",\"url\":\"https://docs.bachs.io/api-reference/accounts/create-an-account\",\"name\":\"Create an account\",\"description\":\"Create an account under your platform. The account starts with nothing enabled: the capabilities you request here decide which requirements it is given, and a person enables each capability once those requirements are satisfied. Requires an active connect capability on your own platform, and an account cannot create accounts of its own. See Create an account.\",\"dateModified\":\"2026-11-12T14:06:46.364Z\",\"isPartOf\":{\"@id\":\"https://docs.bachs.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.bachs.io/api-reference/accounts/create-an-account#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.bachs.io/api-reference/accounts/create-an-account#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Bachs\",\"item\":\"https://docs.bachs.io\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create an account\",\"item\":\"https://docs.bachs.io/api-reference/accounts/create-an-account\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.bachs.io/api-reference/accounts/create-an-account#apireference\",\"headline\":\"Create an account\",\"name\":\"Create an account\",\"description\":\"Create an account under your platform. The account starts with nothing enabled: the capabilities you request here decide which requirements it is given, and a person enables each capability once those requirements are satisfied. Requires an active connect capability on your own platform, and an account cannot create accounts of its own. See Create an account.\",\"url\":\"https://docs.bachs.io/api-reference/accounts/create-an-account\",\"mainEntityOfPage\":{\"@id\":\"https://docs.bachs.io/api-reference/accounts/create-an-account#webpage\"},\"dateModified\":\"2026-11-12T14:06:46.364Z\",\"publisher\":{\"@id\":\"https://docs.bachs.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.bachs.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Bachs\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Bachs\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/accounts/create-an-account.md","siteName":"Bachs","nav":{"global":null,"tabs":[{"tab":"Get started","pages":[{"title":"Get started","href":"/get-started"}]},{"tab":"Payments","pages":[{"title":"Payments","href":"/guides/payments/overview"}]},{"tab":"Billing","pages":[{"title":"Billing","href":"/guides/billing/overview"}]},{"tab":"Payouts","pages":[{"title":"Payouts","href":"/guides/payouts/overview"}]},{"tab":"Connect (Sub accounts)","pages":[{"title":"Connect (Sub accounts)","href":"/connect/overview"}]},{"tab":"Developers","pages":[{"title":"Developers","href":"/developers/overview"}]},{"tab":"API reference","groups":[{"group":"General","pages":[{"title":"Introduction","mode":"wide","href":"/api-reference/overview"},{"title":"API Standards","mode":"wide","href":"/api-reference/api-standards"},{"title":"Permissions","mode":"wide","href":"/api-reference/permissions"},{"title":"Success responses","mode":"wide","href":"/api-reference/success-responses"},{"title":"Error Reference","mode":"wide","href":"/api-reference/error-reference"},{"title":"Errors","mode":"wide","href":"/errors"},{"title":"Pagination","mode":"wide","href":"/guides/pagination"},{"title":"Idempotency","mode":"wide","href":"/guides/idempotency"}]},{"group":"Checkout Sessions","pages":[{"title":"The checkout session object","mode":"wide","href":"/api-reference/checkout-sessions/object"},{"title":"Create a checkout session","deprecated":null,"version":null,"sidebarTitle":"Create checkout session","openapi":"/docs/openapi/openapi.json post /v1/checkout-sessions","href":"/api-reference/payments/create-checkout-session"},{"title":"Retrieve a checkout session","description":"Retrieve the details of a checkout session by its ID, including resolved product line items and charge information.\n\nThe `charge` field is `null` while the session is `OPEN` and populated once the customer submits a payment.\n\nRequires `payments:read` scope.","deprecated":null,"version":null,"sidebarTitle":"Get checkout session","openapi":"/docs/openapi/openapi.json get /v1/checkout-sessions/{checkout_id}","href":"/api-reference/checkout-sessions/get-checkout-session"}]},{"group":"Connected Accounts","pages":[{"title":"Create an account","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts","href":"/api-reference/accounts/create-an-account"},{"title":"List accounts","description":"Returns the accounts linked to your account. Items never carry the `capabilities` or `requirements` blocks; read a single account with [Get account](/api-reference/connected-accounts/get-connected-account) for those. Requires the `connect` capability to be active on your account.","deprecated":null,"version":null,"sidebarTitle":"List connected accounts","openapi":"/docs/openapi/openapi.json get /v1/accounts","href":"/api-reference/organizations/list-connected-accounts"},{"title":"Get an account","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/accounts/{account_id}","href":"/api-reference/accounts/get-an-account"},{"title":"Update an account","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}","href":"/api-reference/accounts/update-an-account"},{"title":"Create an account link","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/account-links","href":"/api-reference/accounts/create-an-account-link"},{"title":"Create a login link","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/login_links","href":"/api-reference/accounts/create-a-login-link"},{"title":"Send a dashboard invite","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/dashboard_invite","href":"/api-reference/accounts/send-a-dashboard-invite"},{"title":"Attach a company document","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/documents","href":"/api-reference/connected-accounts/attach-a-company-document"},{"title":"List capabilities","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/accounts/{account_id}/capabilities","href":"/api-reference/accounts/list-capabilities"}]},{"group":"Products","pages":[{"title":"The product object","mode":"wide","href":"/api-reference/products/object"},{"title":"Create a product","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/products","href":"/api-reference/products/create-a-product"},{"title":"Retrieve a product","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/products/{product_id}","href":"/api-reference/products/retrieve-a-product"},{"title":"Update a product","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json patch /v1/products/{product_id}","href":"/api-reference/products/update-a-product"},{"title":"List products","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/products","href":"/api-reference/products/list-products"},{"title":"Archive a product","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/products/{product_id}/archive","href":"/api-reference/products/archive-a-product"},{"title":"Unarchive a product","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/products/{product_id}/unarchive","href":"/api-reference/products/unarchive-a-product"}]},{"group":"Subscriptions","pages":[{"title":"The subscription object","mode":"wide","href":"/api-reference/subscriptions/object"},{"title":"List subscriptions","deprecated":null,"version":null,"sidebarTitle":"List subscriptions","openapi":"/docs/openapi/openapi.json get /v1/subscriptions","href":"/api-reference/subscriptions/list-subscriptions"},{"title":"Retrieve a subscription","deprecated":null,"version":null,"sidebarTitle":"Get subscription","openapi":"/docs/openapi/openapi.json get /v1/subscriptions/{subscription_id}","href":"/api-reference/subscriptions/get-subscription"},{"title":"Update a subscription","deprecated":null,"version":null,"sidebarTitle":"Update subscription","openapi":"/docs/openapi/openapi.json patch /v1/subscriptions/{subscription_id}","href":"/api-reference/subscriptions/update-subscription"},{"title":"Cancel a subscription","deprecated":null,"version":null,"sidebarTitle":"Cancel subscription","openapi":"/docs/openapi/openapi.json delete /v1/subscriptions/{subscription_id}","href":"/api-reference/subscriptions/cancel-subscription"}]},{"group":"Customers","pages":[{"title":"The customer object","mode":"wide","href":"/api-reference/customers/object"},{"title":"Create a customer","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/customers","href":"/api-reference/customers/create-a-customer"},{"title":"Retrieve a customer","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/customers/{customer_id}","href":"/api-reference/customers/retrieve-a-customer"},{"title":"Update a customer","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json patch /v1/customers/{customer_id}","href":"/api-reference/customers/update-a-customer"},{"title":"List customers","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/customers","href":"/api-reference/customers/list-customers"}]},{"group":"Customer sessions","pages":[{"title":"The customer session object","mode":"wide","href":"/api-reference/customer-sessions/object"},{"title":"Create a customer portal session","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/customers/{customer_id}/portal-sessions","href":"/api-reference/customer-sessions/create-a-customer-portal-session"}]},{"group":"Payments","pages":[{"title":"The payment object","mode":"wide","href":"/api-reference/payments/object"},{"title":"List payments","deprecated":null,"version":null,"sidebarTitle":"List payments","openapi":"/docs/openapi/openapi.json get /v1/payments","href":"/api-reference/payments/list-payments"},{"title":"Retrieve a payment","deprecated":null,"version":null,"sidebarTitle":"Get payment","openapi":"/docs/openapi/openapi.json get /v1/payments/{payment_id}","href":"/api-reference/payments/get-payment"},{"title":"Create a charge","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/charges","href":"/api-reference/payments/create-a-charge"}]},{"group":"Refunds","pages":[{"title":"The refund object","mode":"wide","href":"/api-reference/refunds/object"},{"title":"Create a refund","deprecated":null,"version":null,"sidebarTitle":"Create refund","openapi":"/docs/openapi/openapi.json post /v1/refunds","href":"/api-reference/refunds/create-refund"},{"title":"List refunds","deprecated":null,"version":null,"sidebarTitle":"List refunds","openapi":"/docs/openapi/openapi.json get /v1/refunds","href":"/api-reference/refunds/list-refunds"},{"title":"Retrieve a refund","deprecated":null,"version":null,"sidebarTitle":"Get refund","openapi":"/docs/openapi/openapi.json get /v1/refunds/{refund_id}","href":"/api-reference/refunds/get-refund"},{"title":"Retrieve a refund by charge","deprecated":null,"version":null,"sidebarTitle":"Get refund by charge","openapi":"/docs/openapi/openapi.json get /v1/refunds/by-charge/{payment_id}","href":"/api-reference/refunds/get-refund-by-charge"}]},{"group":"Disputes","pages":[{"title":"Get Dispute","deprecated":null,"version":null,"sidebarTitle":"Get dispute","openapi":"/docs/openapi/openapi.json get /v1/disputes/{dispute_id}","href":"/api-reference/disputes/get-dispute"},{"title":"List Disputes","deprecated":null,"version":null,"sidebarTitle":"List disputes","openapi":"/docs/openapi/openapi.json get /v1/disputes","href":"/api-reference/disputes/list-disputes"},{"title":"Submit Dispute","deprecated":null,"version":null,"sidebarTitle":"Submit dispute","openapi":"/docs/openapi/openapi.json post /v1/disputes/{dispute_id}/submit","href":"/api-reference/disputes/submit-dispute"},{"title":"Update Dispute Evidence","deprecated":null,"version":null,"sidebarTitle":"Update dispute evidence","openapi":"/docs/openapi/openapi.json patch /v1/disputes/{dispute_id}/evidence","href":"/api-reference/disputes/update-dispute-evidence"},{"title":"Upload Dispute Document","deprecated":null,"version":null,"sidebarTitle":"Upload dispute document","openapi":"/docs/openapi/openapi.json post /v1/disputes/uploads","href":"/api-reference/disputes/upload-dispute-document"}]},{"group":"Conversions","hidden":true,"pages":[{"title":"Create Conversion Quote","deprecated":null,"version":null,"sidebarTitle":"Create conversion quote","openapi":"/docs/openapi/openapi.json post /v1/conversions/quotes","href":"/api-reference/conversions/create-conversion-quote"},{"title":"Execute Conversion","deprecated":null,"version":null,"sidebarTitle":"Execute conversion","openapi":"/docs/openapi/openapi.json post /v1/conversions","href":"/api-reference/conversions/execute-conversion"},{"title":"Get Conversion","deprecated":null,"version":null,"sidebarTitle":"Get conversion","openapi":"/docs/openapi/openapi.json get /v1/conversions/{conversion_id}","href":"/api-reference/conversions/get-conversion"},{"title":"List Conversions","deprecated":null,"version":null,"sidebarTitle":"List conversions","openapi":"/docs/openapi/openapi.json get /v1/conversions","href":"/api-reference/conversions/list-conversions"}]},{"group":"Payouts","pages":[{"title":"The payout object","mode":"wide","href":"/api-reference/payouts/object"},{"title":"Create Payout","deprecated":null,"version":null,"sidebarTitle":"Create payout","openapi":"/docs/openapi/openapi.json post /v1/payouts","href":"/api-reference/payouts/create-payout"},{"title":"Create Payout Quote","deprecated":null,"version":null,"sidebarTitle":"Create payout quote","openapi":"/docs/openapi/openapi.json post /v1/payouts/quotes","href":"/api-reference/payouts/create-payout-quote"},{"title":"Get Payout","deprecated":null,"version":null,"sidebarTitle":"Get payout","openapi":"/docs/openapi/openapi.json get /v1/payouts/{withdrawal_id}","href":"/api-reference/payouts/get-payout"},{"title":"List Payouts","deprecated":null,"version":null,"sidebarTitle":"List payouts","openapi":"/docs/openapi/openapi.json get /v1/payouts","href":"/api-reference/payouts/list-payouts"}]},{"group":"Payout Destinations","pages":[{"title":"The payout destination object","mode":"wide","href":"/api-reference/payout-destinations/object"},{"title":"Create Payout Destination","deprecated":null,"version":null,"sidebarTitle":"Create payout destination","openapi":"/docs/openapi/openapi.json post /v1/payouts/destinations","href":"/api-reference/payouts/create-payout-destination"},{"title":"List Payout Destinations","deprecated":null,"version":null,"sidebarTitle":"List payout destinations","openapi":"/docs/openapi/openapi.json get /v1/payouts/destinations","href":"/api-reference/payouts/list-payout-destinations"},{"title":"Get Payout Destination","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/payouts/destinations/{destination_id}","href":"/api-reference/payouts/get-payout-destination"},{"title":"Update Payout Destination","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json patch /v1/payouts/destinations/{destination_id}","href":"/api-reference/payouts/update-payout-destination"},{"title":"Delete Payout Destination","deprecated":null,"version":null,"sidebarTitle":"Delete payout destination","openapi":"/docs/openapi/openapi.json delete /v1/payouts/destinations/{destination_id}","href":"/api-reference/payouts/delete-payout-destination"}]},{"group":"Balance","pages":[{"title":"The balance object","mode":"wide","href":"/api-reference/balance/object"},{"title":"Retrieve balances","deprecated":null,"version":null,"sidebarTitle":"Get balances","openapi":"/docs/openapi/openapi.json get /v1/balances","href":"/api-reference/accounts/get-balances"},{"title":"Get payout schedule","deprecated":null,"version":null,"sidebarTitle":"Get payout schedule","openapi":"/docs/openapi/openapi.json get /v1/balance_settings","href":"/api-reference/payouts/get-payout-schedule"},{"title":"Update payout schedule","deprecated":null,"version":null,"sidebarTitle":"Update payout schedule","openapi":"/docs/openapi/openapi.json post /v1/balance_settings","href":"/api-reference/payouts/update-payout-schedule"}]},{"group":"Virtual accounts","pages":[{"title":"The virtual account object","mode":"wide","href":"/api-reference/virtual-accounts/object"},{"title":"Create a virtual account","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/virtual-accounts","href":"/api-reference/virtual-accounts/create-a-virtual-account"},{"title":"Get a virtual account","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/virtual-accounts","href":"/api-reference/virtual-accounts/get-a-virtual-account"}]},{"group":"Your account","pages":[{"title":"Get your own account","deprecated":null,"version":null,"sidebarTitle":"Get my organization","openapi":"/docs/openapi/openapi.json get /v1/accounts/me","href":"/api-reference/organizations/get-my-organization"},{"title":"Get checkout settings","deprecated":null,"version":null,"sidebarTitle":"Get checkout settings","openapi":"/docs/openapi/openapi.json get /v1/accounts/checkout/settings","href":"/api-reference/organizations/get-checkout-settings"},{"title":"Update checkout settings","deprecated":null,"version":null,"sidebarTitle":"Update checkout settings","openapi":"/docs/openapi/openapi.json put /v1/accounts/checkout/settings","href":"/api-reference/organizations/update-checkout-settings"}]},{"group":"Files","pages":[{"title":"Upload a compliance file","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/files","href":"/api-reference/files/upload-a-compliance-file"}]},{"group":"Media","pages":[{"title":"Upload a file","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/utilities/uploads","href":"/api-reference/media/upload-a-file"},{"title":"Retrieve an upload","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/utilities/uploads/{upload_id}","href":"/api-reference/media/retrieve-an-upload"},{"title":"Delete an upload","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json delete /v1/utilities/uploads/{upload_id}","href":"/api-reference/media/delete-an-upload"}]},{"group":"Product Groups","hidden":true,"pages":[{"title":"Create Product Group","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/product-groups","href":"/api-reference/product-groups/create-product-group"},{"title":"List Product Groups","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/product-groups","href":"/api-reference/product-groups/list-product-groups"},{"title":"Get Product Group","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/product-groups/{group_id}","href":"/api-reference/product-groups/get-product-group"},{"title":"Update Product Group","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json patch /v1/product-groups/{group_id}","href":"/api-reference/product-groups/update-product-group"},{"title":"Delete Product Group","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json delete /v1/product-groups/{group_id}","href":"/api-reference/product-groups/delete-product-group"}]},{"group":"Misc","pages":[{"title":"List payment methods","deprecated":null,"version":null,"sidebarTitle":"List payment methods","openapi":"/docs/openapi/openapi.json get /v1/payment-methods","href":"/api-reference/payments/list-payment-methods"},{"title":"List payment rails","deprecated":null,"version":null,"sidebarTitle":"List payment rails","openapi":"/docs/openapi/openapi.json get /v1/payment-methods/rails","href":"/api-reference/payments/list-payment-rails"},{"title":"List payout supported currencies","deprecated":null,"version":null,"sidebarTitle":"List payout supported currencies","openapi":"/docs/openapi/openapi.json get /v1/currencies/payout-supported","href":"/api-reference/payments/list-payout-supported-currencies"},{"title":"List supported currencies","deprecated":null,"version":null,"sidebarTitle":"List supported currencies","openapi":"/docs/openapi/openapi.json get /v1/currencies/supported","href":"/api-reference/payments/list-supported-currencies"}]},{"group":"Transfers","pages":[{"title":"Create a transfer","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/transfers","href":"/api-reference/transfers/create-a-transfer"},{"title":"List transfers","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/transfers","href":"/api-reference/transfers/list-transfers"},{"title":"Get a transfer","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/transfers/{transfer_id}","href":"/api-reference/transfers/get-a-transfer"}]},{"group":"Persons","pages":[{"title":"List persons","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/accounts/{account_id}/persons","href":"/api-reference/persons/list-persons"},{"title":"Add a person","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/persons","href":"/api-reference/persons/add-a-person"},{"title":"Read a person","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/accounts/{account_id}/persons/{person_id}","href":"/api-reference/persons/read-a-person"},{"title":"Update a person","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/persons/{person_id}","href":"/api-reference/persons/update-a-person"},{"title":"Attach a document to a person","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/persons/{person_id}/documents","href":"/api-reference/persons/attach-a-document-to-a-person"},{"title":"Remove a person","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json delete /v1/accounts/{account_id}/persons/{person_id}","href":"/api-reference/persons/remove-a-person"}]},{"group":"Platform Fees","pages":[{"title":"List platform fees","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/platform_fees","href":"/api-reference/platform-fees/list-platform-fees"},{"title":"Get a platform fee","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/platform_fees/{fee_id}","href":"/api-reference/platform-fees/get-a-platform-fee"}]},{"group":"Reference","pages":[{"title":"List banks","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/reference/banks","href":"/api-reference/reference/list-banks"},{"title":"List mobile money providers","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/reference/momo","href":"/api-reference/reference/list-mobile-money-providers"},{"title":"List business structures","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/reference/business-structures","href":"/api-reference/reference/list-business-structures"},{"title":"List product categories","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/reference/product-categories","href":"/api-reference/reference/list-product-categories"},{"title":"Resolve a bank account","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/misc/bank-accounts/resolve","href":"/api-reference/misc/resolve-a-bank-account"}]}]}]},"basePath":"","title":"Create an account - Bachs","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DdEMm2kG.js","utils-BMo572L7.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-C-4m9KAx.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DPLK2Oq9.js","snippetPresets-BKjfJMC9.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-DTsgtCEj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C8vmhyQM.js","shallow-r9w8LQGS.js","getApiPlaygroundDisplay-DjPI64HQ.js","CodeSnippet-C8Bvhl16.js","CodeSnippets-BtWUwcMy.js","Page-BIYvYBgk.js","getPastedJson-Dcm_3Pgl.js","icon-BXwrTpjc.js","MethodPill-CcjfVmmy.js","DuplicateIcon-BuKIbXAQ.js","createIcon-DaL9yXsO.js","DynamicMarkdown-Co5nikxh.js","SectionHeading-P4UNTsMZ.js","axios-vUo_bRtp.js","Markdown-CEfymfIH.js","clsx-Dq9TQuNi.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-D2J8knkn.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BgZ2ThuU.js"]}