The end user's JWT, sent as Authorization: Bearer <JWT> together with a client-side API key. Validated against the project's external JWT configuration.
Account identifier type: Mexican bank account identified by an 18-digit CLABE. type names the account identifier / capture schema Crossmint collects — never the payment rail; rail selection happens at payment execution time.
Identifies the target user when authenticating with a server API key. Format: <type>:<value> (e.g., email:alice@example.com, userId:abc123, phoneNumber:+12125551234, twitter:alice). Required for API-key authentication; ignored when authenticating with a JWT (the JWT subject is used).
Minimum string length: 1
Response
The saved payment method, including the derived displayName and the type-specific sub-object (card, bankAccount, or breB).
CO bank account
MX CLABE
AE bank account
ID bank account
NG bank account
PH bank account
TH bank account
VN bank account
US bank account
SEPA IBAN
CO Bre-B key
Card
A saved payment method. Sensitive fields (full PAN, CVC, full account numbers, IBANs, Bre-B keys) are never included.
Whether a payout provider serves this destination. 'pending' while the readiness checks run, 'active' when a provider advertises a rail for it, 'rejected' when it cannot receive funds, 'deleted' when it was deleted. This describes the destination only, never the payer's eligibility. 'pending' moves to 'active', 'rejected' or 'deleted'; 'active' moves to 'rejected' or 'deleted'; 'rejected' moves only to 'deleted'. Branch on this field, never on statusReason.
Why the status is 'rejected'. Null on every other status, and on a rejection with no established destination condition. Known values today: destination-not-found, destination-closed, destination-cannot-receive, no-rail-available. New codes can appear at any time, so branch on status and treat an unrecognised code as the status alone.
Read-only. ISO 8601 timestamp of the most recent successful offramp payout funded by this bank account. Absent if none.
Example:
"2024-01-15T10:30:00.000Z"
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Crossmint Docs","colors":{"primary":"#36b37e","light":"#87ff8f","dark":"#001d01"},"logo":{"light":"https://mintcdn.com/crossmint/a8gPOTKEuVFcSfC3/logo/crossmint-light.png?fit=max\u0026auto=format\u0026n=a8gPOTKEuVFcSfC3\u0026q=85\u0026s=8c2671e4c8f7da6956e1508bd68c2928","dark":"https://mintcdn.com/crossmint/a8gPOTKEuVFcSfC3/logo/crossmint-dark.png?fit=max\u0026auto=format\u0026n=a8gPOTKEuVFcSfC3\u0026q=85\u0026s=272ecc17664d17b9ff24471758ff80b2"},"favicon":"https://mintcdn.com/crossmint/xq66q9GV6z6jjj95/favicon.png?fit=max\u0026auto=format\u0026n=xq66q9GV6z6jjj95\u0026q=85\u0026s=00fb89ddf6ba5b1022b9307039c08006","api":{"openapi":["api-reference/_open-api/MintingAPIs.json","api-reference/_open-api/AdminAPIs.json","api-reference/_open-api/VerifiableCredentialsAPIs.json","api-reference/_open-api/Wallets.json"],"examples":{"prefill":true}},"background":{"color":{"dark":"#090b0c"}},"navbar":{"links":[{"href":"https://www.crossmint.com/contact","label":"Support"},{"href":"https://staging.crossmint.com/console","label":"Staging Console"}],"primary":{"type":"button","label":"Console","href":"https://www.crossmint.com/console"}},"footer":{"socials":{"website":"https://www.crossmint.com","twitter":"https://twitter.com/crossmint","github":"https://github.com/crossmint"}},"integrations":{"ga4":{"measurementId":"G-CP5EDD6GVT"},"posthog":{"apiKey":"phc_tfgodwfjuO9v3Nw0tIWJNzACoi2opL7X2Ly0Mg2UCTz","apiHost":"https://eu.i.posthog.com","sessionRecording":false}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"crossmint","hasAudioNarration":false,"actualSubdomain":"crossmint","customDomains":["docs.crossmint.com"],"gitSource":{"type":"github","owner":"paella-labs","repo":"crossbit-main","deployBranch":"main","contentDirectory":"apps/crossmint-mintlify-docs/src","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae3d8f741de67c3a45f92e9","collectionId":"ec289943-608d-49e4-87f0-f571347e8af2","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae3d8f741de67c3a45f92e9"},"feedback":{"thumbs":true,"edits":true,"issues":true,"contextualFeedback":{"allowEmail":true},"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae53c1db4d134976685b8e7","clientVersion":"0.0.4043","searchFilterCounts":[{"language":"default","tag":"API Reference","count":1092},{"language":"default","tag":"Wallets","count":928},{"language":"default","tag":"Wallets V0","count":666},{"language":"default","tag":"Kotlin SDK","count":413},{"language":"default","tag":"Wallets V1","count":262},{"language":"default","tag":"Swift SDK","count":227},{"language":"default","tag":"Checkout","count":206},{"language":"default","tag":"Classes","count":185},{"language":"default","tag":"Typescript SDK","count":183},{"language":"default","tag":"Data Classes","count":169}]},"assistantConfig":{"enableAskAiButton":true,"enableStarterQuestions":false,"enableAskAiSearchBar":false,"deflection":{"enabled":true,"type":"link","url":"https://www.crossmint.com/contact/sales"}},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","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":"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":"llms-txt-v2","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":"byok-sep-25","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":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","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}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".tab-container [data-component-part=tabs-list]{flex-wrap:wrap;overflow:visible;row-gap:.25rem}.tab-container [data-component-part=tabs-list]>li{white-space:nowrap}.nav-dropdown-item,.nav-dropdown-item *{font-weight:500!important;color:#4b5563!important}.nav-dropdown-item:hover,.nav-dropdown-item:hover *{color:#1f2937!important}.dark .nav-dropdown-item,.dark .nav-dropdown-item *{color:#9ca3af!important}.dark .nav-dropdown-item:hover,.dark .nav-dropdown-item:hover *{color:#d1d5db!important}"}],"page":{"pagePath":"offramp/api-reference/payment-methods/create-payment-method","slug":"/offramp/api-reference/payment-methods/create-payment-method","pageMetadata":{"title":"Create Payment Method","description":"Save a bank account payout method so offramp orders can settle fiat to it.","openapi":"api-reference/_open-api/PaymentMethods.json POST /2026-09-16/payment-methods","href":"/offramp/api-reference/payment-methods/create-payment-method"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Save a bank account payout method so offramp orders can settle fiat to it.\"\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,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,..._provideComponents(),...props.components},{Heading,Info}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Saves a bank account payout method for a user so offramp orders can settle to it.`}),`\n`,_jsx(Info,{children:_jsxs(_components.p,{children:[`Account numbers and IBANs are tokenized by the PCI-compliant vault, so create requests must be submitted through `,_jsx(_components.code,{children:`vault.crossmint.com`}),`.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`returns`,children:`Returns`}),`\n`,_jsxs(_components.p,{children:[`Returns a `,_jsx(_components.a,{href:`/api-reference/headless/payment-methods/payment-method-object`,children:`PaymentMethod`}),` object.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Create Payment Method","description":"Save a bank account payout method so offramp orders can settle fiat to it.","openapi":"api-reference/_open-api/PaymentMethods.json POST /2026-09-16/payment-methods","href":"/offramp/api-reference/payment-methods/create-payment-method"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Returns","slug":"returns","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/crossmint/d1c432d03c0c4224/scripts/dd.js","/_mintlify/custom/crossmint/7fc8d54052d3edb0/scripts/hubspot.js"],"openApiReferenceData":{"operation":{"description":"Save a bank account payout method so offramp orders can settle fiat to it.","operationId":"paymentMethods.v20260916.create","parameters":[],"requestBody":"9ff545c1-5e17-41df-ab1e-ef53afd2c3f0","responses":{"201":"c0a9a298-03c9-4f33-b836-06fcd7ae0399","400":"a4fb224f-9766-481d-9984-9980d60e1291","401":"ca277fb0-e2ad-4cc8-88b3-55de5356a925","403":"0b7ff374-4641-46bb-89d9-2e9459b09534","404":"0a69fd8e-5569-4671-afc6-1f35dfb8e76f","422":"1a2e0da2-750c-40b2-9218-0ec0dc0f31ce","429":"76de112a-566d-401e-b227-92c85653d786"},"security":["0d1705ce-d869-4c5f-bd09-9555242f5345","f108f821-dac5-4fa1-8971-fbb220b997e9"],"servers":["db5115fc-e5a3-453a-b1c8-146f7a129a86","870bfc3c-3430-4edc-8268-96b1c6ade29a"],"summary":"Create Payment Method","tags":["Payment Methods"],"method":"post","type":"path","path":"/2026-09-16/payment-methods","baseUrlOptions":["https://vault.staging.crossmint.com/api","https://vault.crossmint.com/api"],"title":"Create Payment Method","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[{"body.oneOf.0.bankAccount.accountHolder.name":"Omar Haddad","body.oneOf.0.bankAccount.entityType":"individual","body.oneOf.0.type":"bank-account-ae","body.oneOf.0.userLocator":"email:omar.haddad@example.ae"},{"body.oneOf.0.bankAccount.accountHolder.name":"Carlos Gómez","body.oneOf.0.bankAccount.accountHolder.phoneNumber":"+573001234567","body.oneOf.0.bankAccount.entityType":"individual","body.oneOf.0.type":"bank-account-co","body.oneOf.0.userLocator":"email:carlos.gomez@example.com"},{"body.oneOf.0.bankAccount.accountHolder.name":"Budi Santoso","body.oneOf.0.bankAccount.accountHolder.phoneNumber":"+6281234567890","body.oneOf.0.bankAccount.entityType":"individual","body.oneOf.0.type":"bank-account-id","body.oneOf.0.userLocator":"email:budi.santoso@example.id"},{"body.oneOf.0.bankAccount.accountHolder.name":"Comercializadora Azteca SA de CV","body.oneOf.0.bankAccount.accountHolder.phoneNumber":"+525512345678","body.oneOf.0.bankAccount.clabe":"012180001234567899","body.oneOf.0.bankAccount.entityType":"business","body.oneOf.0.type":"bank-account-mx-clabe","body.oneOf.0.userLocator":"email:empresa@example.mx"},{"body.oneOf.0.bankAccount.accountHolder.name":"Chinedu Okafor","body.oneOf.0.bankAccount.accountHolder.phoneNumber":"+2348031234567","body.oneOf.0.bankAccount.entityType":"individual","body.oneOf.0.type":"bank-account-ng","body.oneOf.0.userLocator":"email:chinedu.okafor@example.ng"},{"body.oneOf.0.bankAccount.accountHolder.name":"Maria Santos","body.oneOf.0.bankAccount.accountHolder.phoneNumber":"+639171234567","body.oneOf.0.bankAccount.entityType":"individual","body.oneOf.0.type":"bank-account-ph","body.oneOf.0.userLocator":"email:maria.santos@example.ph"},{"body.oneOf.0.bankAccount.accountHolder.name":"Somchai Jaidee","body.oneOf.0.bankAccount.accountHolder.phoneNumber":"+66812345678","body.oneOf.0.bankAccount.entityType":"individual","body.oneOf.0.type":"bank-account-th","body.oneOf.0.userLocator":"email:somchai.jaidee@example.th"},{"body.oneOf.0.bankAccount.accountHolder.name":"Alice Smith","body.oneOf.0.bankAccount.accountHolder.phoneNumber":"+12125551234","body.oneOf.0.bankAccount.entityType":"individual","body.oneOf.0.type":"bank-account-us","body.oneOf.0.userLocator":"email:alice@example.com"},{"body.oneOf.0.bankAccount.accountHolder.name":"Nguyễn Văn An","body.oneOf.0.bankAccount.accountHolder.phoneNumber":"+84912345678","body.oneOf.0.bankAccount.entityType":"individual","body.oneOf.0.type":"bank-account-vn","body.oneOf.0.userLocator":"email:nguyen.van.an@example.vn"},{"body.oneOf.10.breB.accountHolder.name":"Carlos Gómez","body.oneOf.10.breB.accountHolder.phoneNumber":"+573001234567","body.oneOf.10.breB.entityType":"individual","body.oneOf.10.breB.key":"@CBTZXCDKS","body.oneOf.10.type":"bre-b","body.oneOf.10.userLocator":"email:carlos.gomez@example.com"},{"body.oneOf.10.breB.accountHolder.name":"Carlos Gómez","body.oneOf.10.breB.accountHolder.phoneNumber":"+573001234567","body.oneOf.10.breB.entityType":"individual","body.oneOf.10.breB.key":"3001234567","body.oneOf.10.type":"bre-b","body.oneOf.10.userLocator":"email:carlos.gomez@example.com"},{"body.oneOf.11.card.billing.name":"Alice Smith","body.oneOf.11.card.billing.address.city":"Springfield","body.oneOf.11.card.billing.address.country":"US","body.oneOf.11.card.billing.address.line1":"123 Main St","body.oneOf.11.card.billing.address.postalCode":"62701","body.oneOf.11.card.billing.address.stateOrRegion":"IL","body.oneOf.11.card.billing.phone":"+12125551234","body.oneOf.11.card.cvc":"123","body.oneOf.11.card.expirationMonth":12,"body.oneOf.11.card.expirationYear":2028,"body.oneOf.11.card.number":"4111111111111111","body.oneOf.11.type":"card","body.oneOf.11.userLocator":"email:alice@example.com"},{"body.oneOf.0.bankAccount.accountHolder.name":"Hans Müller","body.oneOf.0.bankAccount.entityType":"individual","body.oneOf.0.type":"bank-account-sepa-iban","body.oneOf.0.userLocator":"email:hans.mueller@example.com"}]},"dependencies":{"parameters":{},"requestBody":{"content":{"application/json":{"examples":{"BankAccountAe":{"title":"BankAccountAe","value":{"bankAccount":{"accountHolder":{"address":{"city":"Dubai","line1":"Sheikh Zayed Road 1"},"name":"Omar Haddad"},"entityType":"individual","iban":"AE460090000000123456789"},"type":"bank-account-ae","userLocator":"email:omar.haddad@example.ae"}},"BankAccountCo":{"title":"BankAccountCo","value":{"bankAccount":{"accountHolder":{"document":{"number":"1234567890","type":"cc"},"name":"Carlos Gómez","phoneNumber":"+573001234567"},"accountNumber":"1234567890","accountType":"savings","entityType":"individual","institutionId":"co-bancolombia"},"type":"bank-account-co","userLocator":"email:carlos.gomez@example.com"}},"BankAccountId":{"title":"BankAccountId","value":{"bankAccount":{"accountHolder":{"name":"Budi Santoso","phoneNumber":"+6281234567890"},"accountNumber":"1234567890","entityType":"individual","institutionId":"id-bca"},"type":"bank-account-id","userLocator":"email:budi.santoso@example.id"}},"BankAccountMx":{"title":"BankAccountMx","value":{"bankAccount":{"accountHolder":{"name":"Comercializadora Azteca SA de CV","phoneNumber":"+525512345678"},"clabe":"012180001234567899","entityType":"business"},"type":"bank-account-mx-clabe","userLocator":"email:empresa@example.mx"}},"BankAccountNg":{"title":"BankAccountNg","value":{"bankAccount":{"accountHolder":{"name":"Chinedu Okafor","phoneNumber":"+2348031234567"},"accountNumber":"2034567897","entityType":"individual","institutionId":"ng-gt-bank"},"type":"bank-account-ng","userLocator":"email:chinedu.okafor@example.ng"}},"BankAccountPh":{"title":"BankAccountPh","value":{"bankAccount":{"accountHolder":{"name":"Maria Santos","phoneNumber":"+639171234567"},"accountNumber":"0012345678901","entityType":"individual","institutionId":"ph-unionbank"},"type":"bank-account-ph","userLocator":"email:maria.santos@example.ph"}},"BankAccountTh":{"title":"BankAccountTh","value":{"bankAccount":{"accountHolder":{"name":"Somchai Jaidee","phoneNumber":"+66812345678"},"accountNumber":"1234567890","entityType":"individual","institutionId":"th-kasikorn-bank"},"type":"bank-account-th","userLocator":"email:somchai.jaidee@example.th"}},"BankAccountUs":{"title":"BankAccountUs","value":{"bankAccount":{"accountHolder":{"address":{"city":"New York","line1":"123 Main St","postalCode":"10001","stateOrRegion":"NY"},"name":"Alice Smith","phoneNumber":"+12125551234"},"accountNumber":"1234567899","accountType":"checking","bankAddress":{"city":"New York","line1":"270 Park Ave","postalCode":"10017","stateOrRegion":"NY"},"entityType":"individual","routingNumber":"071000013"},"type":"bank-account-us","userLocator":"email:alice@example.com"}},"BankAccountVn":{"title":"BankAccountVn","value":{"bankAccount":{"accountHolder":{"name":"Nguyễn Văn An","phoneNumber":"+84912345678"},"accountNumber":"0071001234567","entityType":"individual","institutionId":"vn-acb"},"type":"bank-account-vn","userLocator":"email:nguyen.van.an@example.vn"}},"Breb":{"title":"Breb","value":{"breB":{"accountHolder":{"name":"Carlos Gómez","phoneNumber":"+573001234567"},"entityType":"individual","key":"@CBTZXCDKS"},"type":"bre-b","userLocator":"email:carlos.gomez@example.com"}},"BrebPhone":{"title":"BrebPhone","value":{"breB":{"accountHolder":{"name":"Carlos Gómez","phoneNumber":"+573001234567"},"entityType":"individual","key":"3001234567"},"type":"bre-b","userLocator":"email:carlos.gomez@example.com"}},"Card":{"title":"Card","value":{"card":{"billing":{"address":{"city":"Springfield","country":"US","line1":"123 Main St","postalCode":"62701","stateOrRegion":"IL"},"name":"Alice Smith","phone":"+12125551234"},"cvc":"123","expirationMonth":12,"expirationYear":2028,"number":"4111111111111111"},"type":"card","userLocator":"email:alice@example.com"}},"SEPA":{"title":"SEPA","value":{"bankAccount":{"accountHolder":{"country":"DE","name":"Hans Müller"},"bic":"COBADEFFXXX","entityType":"individual","iban":"DE89370400440532013000"},"type":"bank-account-sepa-iban","userLocator":"email:hans.mueller@example.com"}}},"schema":{"oneOf":[{"type":"object","title":"MX CLABE","description":"Send the sub-object that matches `type`.","required":["bankAccount","type"],"example":{"type":"card","userLocator":"userId:abc123"},"properties":{"bankAccount":{"description":"Bank account details. Required when `type` is a bank type. The fields depend on the country of the account.","properties":{"accountHolder":{"description":"Person or company that owns the account. Sent to the payout provider. No `address`: SPEI reads no holder address, so one is rejected rather than stored.","properties":{"name":{"description":"The claimed holder name. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.accountHolder.name","typeLabel":"string"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.0.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"E.164 format.","pattern":"^\\+[1-9]\\d{1,14}$","type":"string","uniqueKey":"oneOf.0.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.accountHolder","typeLabel":"object"},"clabe":{"description":"18-digit CLABE. Tokenized by the vault.","pattern":"^\\d{18}$","type":"string","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.clabe","typeLabel":"string"},"entityType":{"description":"Type of the account holder.","enum":["business","individual"],"type":"string","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.entityType","typeLabel":"enum\u003cstring>"}},"required":["accountHolder","clabe","entityType"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.bankAccount","typeLabel":"object"},"type":{"const":"bank-account-mx-clabe","description":"Account identifier type: Mexican bank account identified by an 18-digit CLABE. `type` names the account identifier / capture schema Crossmint collects — never the payment rail; rail selection happens at payment execution time.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.type","typeLabel":"string"},"label":{"description":"The client's own name for this payment method. Free text, echoed back on every read.","maxLength":255,"minLength":1,"type":"string","uniqueKey":"oneOf.0.label","typeLabel":"string"},"userLocator":{"description":"Identifies the target user when authenticating with a server API key. Format: `\u003ctype>:\u003cvalue>` (e.g., `email:alice@example.com`, `userId:abc123`, `phoneNumber:+12125551234`, `twitter:alice`). Required for API-key authentication; ignored when authenticating with a JWT (the JWT subject is used).","minLength":1,"type":"string","uniqueKey":"oneOf.0.userLocator","typeLabel":"string"}},"uniqueKey":"oneOf.0","typeLabel":"MX CLABE · object"},{"type":"object","title":"VN bank account","description":"Send the sub-object that matches `type`.","required":["bankAccount","type"],"example":{"type":"card","userLocator":"userId:abc123"},"properties":{"bankAccount":{"description":"Bank account details. Required when `type` is a bank type. The fields depend on the country of the account.","properties":{"accountHolder":{"description":"Person or company that owns the account. Sent to the payout provider.","properties":{"name":{"description":"The claimed holder name. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder. When you send it, `line1` and `city` are required.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 100 characters). No PO box or private mailbox.","maxLength":100,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.1.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.1.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.1.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.1.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.1.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"E.164 format.","pattern":"^\\+[1-9]\\d{1,14}$","type":"string","uniqueKey":"oneOf.1.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.accountHolder","typeLabel":"object"},"accountNumber":{"description":"Bank account number, 1 to 20 letters or digits. Tokenized by the vault.","pattern":"^[a-zA-Z0-9]{1,20}$","type":"string","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.accountNumber","typeLabel":"string"},"entityType":{"description":"Type of the account holder.","enum":["business","individual"],"type":"string","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"institutionId":{"description":"ID of the bank, for example `vn-acb`. The [Bank Institution IDs](https://docs.crossmint.com/offramp/guides/bank-institution-ids) page lists every ID.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.institutionId","typeLabel":"string"},"accountType":{"description":"Type of the account.","enum":["checking","savings"],"type":"string","uniqueKey":"oneOf.1.bankAccount.accountType","typeLabel":"enum\u003cstring>"}},"required":["accountHolder","accountNumber","entityType","institutionId"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.bankAccount","typeLabel":"object"},"type":{"const":"bank-account-vn","description":"Vietnamese bank account, paid out over Napas 247 or CITAD. `type` names the capture schema Crossmint collects, never the payment rail; the rail is chosen at payout time.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.type","typeLabel":"string"},"label":{"description":"The client's own name for this payment method. Free text, echoed back on every read.","maxLength":255,"minLength":1,"type":"string","uniqueKey":"oneOf.1.label","typeLabel":"string"},"userLocator":{"description":"Identifies the target user when authenticating with a server API key. Format: `\u003ctype>:\u003cvalue>` (e.g., `email:alice@example.com`, `userId:abc123`, `phoneNumber:+12125551234`, `twitter:alice`). Required for API-key authentication; ignored when authenticating with a JWT (the JWT subject is used).","minLength":1,"type":"string","uniqueKey":"oneOf.1.userLocator","typeLabel":"string"}},"uniqueKey":"oneOf.1","typeLabel":"VN bank account · object"},{"type":"object","title":"NG bank account","description":"Send the sub-object that matches `type`.","required":["bankAccount","type"],"example":{"type":"card","userLocator":"userId:abc123"},"properties":{"bankAccount":{"description":"Bank account details. Required when `type` is a bank type. The fields depend on the country of the account.","properties":{"accountHolder":{"description":"Person or company that owns the account. Sent to the payout provider.","properties":{"name":{"description":"The claimed holder name. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder. When you send it, `line1` and `city` are required.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 100 characters). No PO box or private mailbox.","maxLength":100,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.2.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.2.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.2.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.2.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.2.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"E.164 format.","pattern":"^\\+[1-9]\\d{1,14}$","type":"string","uniqueKey":"oneOf.2.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.accountHolder","typeLabel":"object"},"accountNumber":{"description":"Bank account number, 10 digits, the last a NUBAN check digit for the bank. Tokenized by the vault.","pattern":"^\\d{10}$","type":"string","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.accountNumber","typeLabel":"string"},"entityType":{"description":"Type of the account holder.","enum":["business","individual"],"type":"string","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"institutionId":{"description":"ID of the bank, for example `ng-gt-bank`. The [Bank Institution IDs](https://docs.crossmint.com/offramp/guides/bank-institution-ids) page lists every ID.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.institutionId","typeLabel":"string"},"accountType":{"description":"Type of the account.","enum":["checking","savings"],"type":"string","uniqueKey":"oneOf.2.bankAccount.accountType","typeLabel":"enum\u003cstring>"}},"required":["accountHolder","accountNumber","entityType","institutionId"],"type":"object","isRequired":true,"uniqueKey":"oneOf.2.bankAccount","typeLabel":"object"},"type":{"const":"bank-account-ng","description":"Nigerian bank account, paid out over NIP. `type` names the capture schema Crossmint collects, never the payment rail; the rail is chosen at payout time.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.type","typeLabel":"string"},"label":{"description":"The client's own name for this payment method. Free text, echoed back on every read.","maxLength":255,"minLength":1,"type":"string","uniqueKey":"oneOf.2.label","typeLabel":"string"},"userLocator":{"description":"Identifies the target user when authenticating with a server API key. Format: `\u003ctype>:\u003cvalue>` (e.g., `email:alice@example.com`, `userId:abc123`, `phoneNumber:+12125551234`, `twitter:alice`). Required for API-key authentication; ignored when authenticating with a JWT (the JWT subject is used).","minLength":1,"type":"string","uniqueKey":"oneOf.2.userLocator","typeLabel":"string"}},"uniqueKey":"oneOf.2","typeLabel":"NG bank account · object"},{"type":"object","title":"PH bank account","description":"Send the sub-object that matches `type`.","required":["bankAccount","type"],"example":{"type":"card","userLocator":"userId:abc123"},"properties":{"bankAccount":{"description":"Bank account details. Required when `type` is a bank type. The fields depend on the country of the account.","properties":{"accountHolder":{"description":"Person or company that owns the account. Sent to the payout provider.","properties":{"name":{"description":"The claimed holder name. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder. When you send it, `line1` and `city` are required.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 100 characters). No PO box or private mailbox.","maxLength":100,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.3.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.3.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.3.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.3.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.3.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"E.164 format.","pattern":"^\\+[1-9]\\d{1,14}$","type":"string","uniqueKey":"oneOf.3.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.accountHolder","typeLabel":"object"},"accountNumber":{"description":"Bank account number, 6 to 18 digits. Tokenized by the vault.","pattern":"^\\d{6,18}$","type":"string","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.accountNumber","typeLabel":"string"},"entityType":{"description":"Type of the account holder.","enum":["business","individual"],"type":"string","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"institutionId":{"description":"ID of the bank, for example `ph-bdo`. The [Bank Institution IDs](https://docs.crossmint.com/offramp/guides/bank-institution-ids) page lists every ID.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.institutionId","typeLabel":"string"},"accountType":{"description":"Type of the account.","enum":["checking","savings"],"type":"string","uniqueKey":"oneOf.3.bankAccount.accountType","typeLabel":"enum\u003cstring>"}},"required":["accountHolder","accountNumber","entityType","institutionId"],"type":"object","isRequired":true,"uniqueKey":"oneOf.3.bankAccount","typeLabel":"object"},"type":{"const":"bank-account-ph","description":"Philippine bank account, paid out over InstaPay or PESONet. `type` names the capture schema Crossmint collects, never the payment rail; the rail is chosen at payout time.","type":"string","isRequired":true,"uniqueKey":"oneOf.3.type","typeLabel":"string"},"label":{"description":"The client's own name for this payment method. Free text, echoed back on every read.","maxLength":255,"minLength":1,"type":"string","uniqueKey":"oneOf.3.label","typeLabel":"string"},"userLocator":{"description":"Identifies the target user when authenticating with a server API key. Format: `\u003ctype>:\u003cvalue>` (e.g., `email:alice@example.com`, `userId:abc123`, `phoneNumber:+12125551234`, `twitter:alice`). Required for API-key authentication; ignored when authenticating with a JWT (the JWT subject is used).","minLength":1,"type":"string","uniqueKey":"oneOf.3.userLocator","typeLabel":"string"}},"uniqueKey":"oneOf.3","typeLabel":"PH bank account · object"},{"type":"object","title":"TH bank account","description":"Send the sub-object that matches `type`.","required":["bankAccount","type"],"example":{"type":"card","userLocator":"userId:abc123"},"properties":{"bankAccount":{"description":"Bank account details. Required when `type` is a bank type. The fields depend on the country of the account.","properties":{"accountHolder":{"description":"Person or company that owns the account. Sent to the payout provider.","properties":{"name":{"description":"The claimed holder name. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder. When you send it, `line1` and `city` are required.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 100 characters). No PO box or private mailbox.","maxLength":100,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.4.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.4.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.4.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.4.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.4.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"E.164 format.","pattern":"^\\+[1-9]\\d{1,14}$","type":"string","uniqueKey":"oneOf.4.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.accountHolder","typeLabel":"object"},"accountNumber":{"description":"Bank account number, 7 to 12 digits. Tokenized by the vault.","pattern":"^\\d{7,12}$","type":"string","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.accountNumber","typeLabel":"string"},"entityType":{"description":"Type of the account holder.","enum":["business","individual"],"type":"string","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"institutionId":{"description":"ID of the bank, for example `th-kasikorn-bank`. The [Bank Institution IDs](https://docs.crossmint.com/offramp/guides/bank-institution-ids) page lists every ID.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.institutionId","typeLabel":"string"},"accountType":{"description":"Type of the account.","enum":["checking","savings"],"type":"string","uniqueKey":"oneOf.4.bankAccount.accountType","typeLabel":"enum\u003cstring>"}},"required":["accountHolder","accountNumber","entityType","institutionId"],"type":"object","isRequired":true,"uniqueKey":"oneOf.4.bankAccount","typeLabel":"object"},"type":{"const":"bank-account-th","description":"Thai bank account, paid out over PromptPay. `type` names the capture schema Crossmint collects, never the payment rail; the rail is chosen at payout time.","type":"string","isRequired":true,"uniqueKey":"oneOf.4.type","typeLabel":"string"},"label":{"description":"The client's own name for this payment method. Free text, echoed back on every read.","maxLength":255,"minLength":1,"type":"string","uniqueKey":"oneOf.4.label","typeLabel":"string"},"userLocator":{"description":"Identifies the target user when authenticating with a server API key. Format: `\u003ctype>:\u003cvalue>` (e.g., `email:alice@example.com`, `userId:abc123`, `phoneNumber:+12125551234`, `twitter:alice`). Required for API-key authentication; ignored when authenticating with a JWT (the JWT subject is used).","minLength":1,"type":"string","uniqueKey":"oneOf.4.userLocator","typeLabel":"string"}},"uniqueKey":"oneOf.4","typeLabel":"TH bank account · object"},{"type":"object","title":"ID bank account","description":"Send the sub-object that matches `type`.","required":["bankAccount","type"],"example":{"type":"card","userLocator":"userId:abc123"},"properties":{"bankAccount":{"description":"Bank account details. Required when `type` is a bank type. The fields depend on the country of the account.","properties":{"accountHolder":{"description":"Person or company that owns the account. Sent to the payout provider.","properties":{"name":{"description":"The claimed holder name. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder. When you send it, `line1` and `city` are required.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 100 characters). No PO box or private mailbox.","maxLength":100,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.5.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.5.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.5.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.5.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.5.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"E.164 format.","pattern":"^\\+[1-9]\\d{1,14}$","type":"string","uniqueKey":"oneOf.5.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.accountHolder","typeLabel":"object"},"accountNumber":{"description":"Bank account number, 7 to 18 digits. Tokenized by the vault.","pattern":"^\\d{7,18}$","type":"string","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.accountNumber","typeLabel":"string"},"entityType":{"description":"Type of the account holder.","enum":["business","individual"],"type":"string","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"institutionId":{"description":"ID of the bank, for example `id-bca`. The [Bank Institution IDs](https://docs.crossmint.com/offramp/guides/bank-institution-ids) page lists every ID.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.institutionId","typeLabel":"string"},"accountType":{"description":"Type of the account.","enum":["checking","savings"],"type":"string","uniqueKey":"oneOf.5.bankAccount.accountType","typeLabel":"enum\u003cstring>"}},"required":["accountHolder","accountNumber","entityType","institutionId"],"type":"object","isRequired":true,"uniqueKey":"oneOf.5.bankAccount","typeLabel":"object"},"type":{"const":"bank-account-id","description":"Indonesian bank account, paid out over BI-FAST. `type` names the capture schema Crossmint collects, never the payment rail; the rail is chosen at payout time.","type":"string","isRequired":true,"uniqueKey":"oneOf.5.type","typeLabel":"string"},"label":{"description":"The client's own name for this payment method. Free text, echoed back on every read.","maxLength":255,"minLength":1,"type":"string","uniqueKey":"oneOf.5.label","typeLabel":"string"},"userLocator":{"description":"Identifies the target user when authenticating with a server API key. Format: `\u003ctype>:\u003cvalue>` (e.g., `email:alice@example.com`, `userId:abc123`, `phoneNumber:+12125551234`, `twitter:alice`). Required for API-key authentication; ignored when authenticating with a JWT (the JWT subject is used).","minLength":1,"type":"string","uniqueKey":"oneOf.5.userLocator","typeLabel":"string"}},"uniqueKey":"oneOf.5","typeLabel":"ID bank account · object"},{"type":"object","title":"AE bank account","description":"Send the sub-object that matches `type`.","required":["bankAccount","type"],"example":{"type":"card","userLocator":"userId:abc123"},"properties":{"bankAccount":{"description":"Bank account details. Required when `type` is a bank type. The fields depend on the country of the account.","properties":{"accountHolder":{"description":"Person or company that owns the account. Sent to the payout provider.","properties":{"name":{"description":"The claimed holder name. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder. When you send it, `line1` and `city` are required.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 100 characters). No PO box or private mailbox.","maxLength":100,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.6.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.6.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.6.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.6.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.6.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"E.164 format.","pattern":"^\\+[1-9]\\d{1,14}$","type":"string","uniqueKey":"oneOf.6.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.accountHolder","typeLabel":"object"},"entityType":{"description":"Type of the account holder.","enum":["business","individual"],"type":"string","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"iban":{"description":"UAE IBAN: `AE` and 21 digits, with valid check digits. It identifies the bank, so no institution ID is needed. Tokenized by the vault.","pattern":"^AE\\d{21}$","type":"string","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.iban","typeLabel":"string"},"accountType":{"description":"Type of the account.","enum":["checking","savings"],"type":"string","uniqueKey":"oneOf.6.bankAccount.accountType","typeLabel":"enum\u003cstring>"}},"required":["accountHolder","entityType","iban"],"type":"object","isRequired":true,"uniqueKey":"oneOf.6.bankAccount","typeLabel":"object"},"type":{"const":"bank-account-ae","description":"United Arab Emirates bank account identified by its IBAN, paid out over NPSS or UAEFTS. `type` names the capture schema Crossmint collects, never the payment rail; the rail is chosen at payout time.","type":"string","isRequired":true,"uniqueKey":"oneOf.6.type","typeLabel":"string"},"label":{"description":"The client's own name for this payment method. Free text, echoed back on every read.","maxLength":255,"minLength":1,"type":"string","uniqueKey":"oneOf.6.label","typeLabel":"string"},"userLocator":{"description":"Identifies the target user when authenticating with a server API key. Format: `\u003ctype>:\u003cvalue>` (e.g., `email:alice@example.com`, `userId:abc123`, `phoneNumber:+12125551234`, `twitter:alice`). Required for API-key authentication; ignored when authenticating with a JWT (the JWT subject is used).","minLength":1,"type":"string","uniqueKey":"oneOf.6.userLocator","typeLabel":"string"}},"uniqueKey":"oneOf.6","typeLabel":"AE bank account · object"},{"type":"object","title":"US bank account","description":"Send the sub-object that matches `type`.","required":["bankAccount","type"],"example":{"type":"card","userLocator":"userId:abc123"},"properties":{"bankAccount":{"description":"Bank account details. Required when `type` is a bank type. The fields depend on the country of the account.","properties":{"accountHolder":{"description":"Person or company that owns the account. Sent to the payout provider.","properties":{"name":{"description":"The claimed holder name. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Where the account holder lives. No `country`: the account is in the US.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.accountHolder.address.line1","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.7.bankAccount.accountHolder.address.line2","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.7.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1","postalCode"],"type":"object","uniqueKey":"oneOf.7.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.7.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"E.164 format.","pattern":"^\\+[1-9]\\d{1,14}$","type":"string","uniqueKey":"oneOf.7.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.accountHolder","typeLabel":"object"},"accountNumber":{"description":"Bank account number (4-17 digits). Tokenized by the vault.","type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.accountNumber","typeLabel":"string"},"accountType":{"description":"Type of the account.","enum":["checking","savings"],"type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.accountType","typeLabel":"enum\u003cstring>"},"entityType":{"description":"Type of the account holder.","enum":["business","individual"],"type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"routingNumber":{"description":"9-digit ABA routing number. The check digit is validated.","pattern":"^\\d{9}$","type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.routingNumber","typeLabel":"string"},"bankAddress":{"description":"Where the bank is. No `country`.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.bankAddress.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.bankAddress.line1","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.bankAddress.postalCode","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.7.bankAccount.bankAddress.line2","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.7.bankAccount.bankAddress.stateOrRegion","typeLabel":"string"}},"required":["city","line1","postalCode"],"type":"object","uniqueKey":"oneOf.7.bankAccount.bankAddress","typeLabel":"object"}},"required":["accountHolder","accountNumber","accountType","entityType","routingNumber"],"type":"object","isRequired":true,"uniqueKey":"oneOf.7.bankAccount","typeLabel":"object"},"type":{"const":"bank-account-us","description":"Payment method type. Always `bank-account-us`.","type":"string","isRequired":true,"uniqueKey":"oneOf.7.type","typeLabel":"string"},"label":{"description":"The client's own name for this payment method. Free text, echoed back on every read.","maxLength":255,"minLength":1,"type":"string","uniqueKey":"oneOf.7.label","typeLabel":"string"},"userLocator":{"description":"Identifies the target user when authenticating with a server API key. Format: `\u003ctype>:\u003cvalue>` (e.g., `email:alice@example.com`, `userId:abc123`, `phoneNumber:+12125551234`, `twitter:alice`). Required for API-key authentication; ignored when authenticating with a JWT (the JWT subject is used).","minLength":1,"type":"string","uniqueKey":"oneOf.7.userLocator","typeLabel":"string"}},"uniqueKey":"oneOf.7","typeLabel":"US bank account · object"},{"type":"object","title":"CO bank account","description":"Send the sub-object that matches `type`.","required":["bankAccount","type"],"example":{"type":"card","userLocator":"userId:abc123"},"properties":{"bankAccount":{"description":"Bank account details. Required when `type` is a bank type. The fields depend on the country of the account.","properties":{"accountHolder":{"description":"Person or company that owns the account. Sent to the payout provider.","properties":{"document":{"description":"Identity document of the account holder.","properties":{"number":{"description":"Document number. Tokenized by the vault.","type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.accountHolder.document.number","typeLabel":"string"},"type":{"description":"Document type: `cc` (Cédula de Ciudadanía), `nit` (NIT), `ce` (Cédula de Extranjería), `pa` (passport), `ppt` (Permiso por Protección Temporal), `ti` (Tarjeta de Identidad), `rc` (Registro Civil), `te` (Tarjeta de Extranjería) or `die` (foreign identity document).","enum":["cc","ce","die","nit","pa","ppt","rc","te","ti"],"type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.accountHolder.document.type","typeLabel":"enum\u003cstring>"}},"required":["number","type"],"type":"object","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.accountHolder.document","typeLabel":"object"},"name":{"description":"The claimed holder name. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.accountHolder.name","typeLabel":"string"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.8.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"E.164 format.","pattern":"^\\+[1-9]\\d{1,14}$","type":"string","uniqueKey":"oneOf.8.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["document","name"],"type":"object","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.accountHolder","typeLabel":"object"},"accountNumber":{"description":"Bank account number. Tokenized by the vault.","type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.accountNumber","typeLabel":"string"},"accountType":{"description":"Type of the account.","enum":["checking","electronic-deposit","savings"],"type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.accountType","typeLabel":"enum\u003cstring>"},"entityType":{"description":"Type of the account holder.","enum":["business","individual"],"type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"institutionId":{"description":"ID of the bank, for example `co-bancolombia`. The [Bank Institution IDs](https://docs.crossmint.com/offramp/guides/bank-institution-ids) page lists every ID.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.institutionId","typeLabel":"string"}},"required":["accountHolder","accountNumber","accountType","entityType","institutionId"],"type":"object","isRequired":true,"uniqueKey":"oneOf.8.bankAccount","typeLabel":"object"},"type":{"const":"bank-account-co","description":"Payment method type. Always `bank-account-co`.","type":"string","isRequired":true,"uniqueKey":"oneOf.8.type","typeLabel":"string"},"label":{"description":"The client's own name for this payment method. Free text, echoed back on every read.","maxLength":255,"minLength":1,"type":"string","uniqueKey":"oneOf.8.label","typeLabel":"string"},"userLocator":{"description":"Identifies the target user when authenticating with a server API key. Format: `\u003ctype>:\u003cvalue>` (e.g., `email:alice@example.com`, `userId:abc123`, `phoneNumber:+12125551234`, `twitter:alice`). Required for API-key authentication; ignored when authenticating with a JWT (the JWT subject is used).","minLength":1,"type":"string","uniqueKey":"oneOf.8.userLocator","typeLabel":"string"}},"uniqueKey":"oneOf.8","typeLabel":"CO bank account · object"},{"type":"object","title":"SEPA IBAN","description":"Send the sub-object that matches `type`.","required":["bankAccount","type"],"example":{"type":"card","userLocator":"userId:abc123"},"properties":{"bankAccount":{"description":"Bank account details. Required when `type` is a bank type. The fields depend on the country of the account.","properties":{"accountHolder":{"description":"Person who owns the account. Sent to the payout provider.","properties":{"country":{"description":"ISO 3166-1 alpha-2 country where the account holder lives or is registered. It can differ from the IBAN country.","enum":["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","XK","YE","YT","ZA","ZM","ZW"],"type":"string","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.accountHolder.country","typeLabel":"enum\u003cstring>"},"name":{"description":"The claimed holder name. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Postal address of the account holder, in `country`.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.accountHolder.address.line1","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.9.bankAccount.accountHolder.address.line2","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.9.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1","postalCode"],"type":"object","uniqueKey":"oneOf.9.bankAccount.accountHolder.address","typeLabel":"object"}},"required":["country","name"],"type":"object","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.accountHolder","typeLabel":"object"},"entityType":{"description":"Type of the account holder. SEPA supports `individual` only.","enum":["individual"],"type":"string","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"iban":{"description":"IBAN (ISO 13616, 15-34 chars). Tokenized by the vault. Its prefix sets the account country, which must be one of the 37 EPC member states or Gibraltar.","type":"string","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.iban","typeLabel":"string"},"bic":{"description":"BIC (ISO 9362, 8 or 11 chars). Optional under EPC's IBAN-only rule.","type":"string","uniqueKey":"oneOf.9.bankAccount.bic","typeLabel":"string"}},"required":["accountHolder","entityType","iban"],"type":"object","isRequired":true,"uniqueKey":"oneOf.9.bankAccount","typeLabel":"object"},"type":{"const":"bank-account-sepa-iban","description":"Account identifier type: an IBAN within Crossmint's supported SEPA scope. `type` names the account identifier / capture schema Crossmint collects — never the payment rail; the same IBAN can be paid over different rails, selected at payment execution time. Not plain `iban` because non-SEPA IBAN countries need extra fields (BIC/SWIFT); not `eu` because SEPA scope is wider than the EU. BIC is optional.","type":"string","isRequired":true,"uniqueKey":"oneOf.9.type","typeLabel":"string"},"label":{"description":"The client's own name for this payment method. Free text, echoed back on every read.","maxLength":255,"minLength":1,"type":"string","uniqueKey":"oneOf.9.label","typeLabel":"string"},"userLocator":{"description":"Identifies the target user when authenticating with a server API key. Format: `\u003ctype>:\u003cvalue>` (e.g., `email:alice@example.com`, `userId:abc123`, `phoneNumber:+12125551234`, `twitter:alice`). Required for API-key authentication; ignored when authenticating with a JWT (the JWT subject is used).","minLength":1,"type":"string","uniqueKey":"oneOf.9.userLocator","typeLabel":"string"}},"uniqueKey":"oneOf.9","typeLabel":"SEPA IBAN · object"},{"type":"object","title":"CO Bre-B key","description":"Send the sub-object that matches `type`.","required":["breB","type"],"example":{"type":"card","userLocator":"userId:abc123"},"properties":{"breB":{"description":"Bre-B key details. `currency` and `country` are constants for this type, derived and read-only.","properties":{"accountHolder":{"description":"Person or company that owns the account. Sent to the payout provider. No `address`: no Bre-B rail reads one.","properties":{"name":{"description":"The claimed holder name. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.10.breB.accountHolder.name","typeLabel":"string"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.10.breB.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"E.164 format.","pattern":"^\\+[1-9]\\d{1,14}$","type":"string","uniqueKey":"oneOf.10.breB.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","isRequired":true,"uniqueKey":"oneOf.10.breB.accountHolder","typeLabel":"object"},"entityType":{"description":"Type of the account holder.","enum":["business","individual"],"type":"string","isRequired":true,"uniqueKey":"oneOf.10.breB.entityType","typeLabel":"enum\u003cstring>"},"key":{"description":"The registered Bre-B key: an `@handle`, a 10-digit mobile leading with 3, an e-mail, an identity-document number, or a 10-digit commerce code leading with 00. Formats follow BanRep DSP-465 Cuadro 1. Tokenized by the vault and never returned.","type":"string","isRequired":true,"uniqueKey":"oneOf.10.breB.key","typeLabel":"string"}},"required":["accountHolder","entityType","key"],"type":"object","isRequired":true,"uniqueKey":"oneOf.10.breB","typeLabel":"object"},"type":{"const":"bre-b","description":"Account identifier type: a Colombian Bre-B key, the alias that addresses a deposit account on Banco de la República's Bre-B scheme. `type` names the account identifier / capture schema Crossmint collects — never the payment rail. A key is receive-only and binds exactly one account.","type":"string","isRequired":true,"uniqueKey":"oneOf.10.type","typeLabel":"string"},"label":{"description":"The client's own name for this payment method. Free text, echoed back on every read.","maxLength":255,"minLength":1,"type":"string","uniqueKey":"oneOf.10.label","typeLabel":"string"},"userLocator":{"description":"Identifies the target user when authenticating with a server API key. Format: `\u003ctype>:\u003cvalue>` (e.g., `email:alice@example.com`, `userId:abc123`, `phoneNumber:+12125551234`, `twitter:alice`). Required for API-key authentication; ignored when authenticating with a JWT (the JWT subject is used).","minLength":1,"type":"string","uniqueKey":"oneOf.10.userLocator","typeLabel":"string"}},"uniqueKey":"oneOf.10","typeLabel":"CO Bre-B key · object"},{"type":"object","title":"Card","description":"Send the sub-object that matches `type`.","required":["card","type"],"example":{"card":{"billing":{"address":{"city":"New York","country":"US","line1":"123 Main St","postalCode":"10001","stateOrRegion":"NY"},"name":"John Doe","phone":"+12125551234"},"cvc":"123","expirationMonth":12,"expirationYear":2028,"number":"4242424242424242"},"type":"card","userLocator":"userId:abc123"},"properties":{"card":{"description":"Card details. Required when `type` is `card`. The vault tokenizes all card data before it reaches Crossmint.","properties":{"billing":{"description":"Billing details of the cardholder. `name` is required.","properties":{"name":{"description":"Full name of the cardholder or account holder.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.billing.name","typeLabel":"string"},"address":{"description":"Billing address. When you send it, all fields except `line2` are required.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.billing.address.city","typeLabel":"string"},"country":{"description":"ISO 3166-1 alpha-2 country code.","maxLength":2,"minLength":2,"type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.billing.address.country","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.billing.address.line1","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.billing.address.postalCode","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.11.card.billing.address.line2","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.11.card.billing.address.stateOrRegion","typeLabel":"string"}},"required":["city","country","line1","postalCode"],"type":"object","uniqueKey":"oneOf.11.card.billing.address","typeLabel":"object"},"phone":{"description":"Phone number in E.164 format, for example `+12125551234`.","minLength":1,"type":"string","uniqueKey":"oneOf.11.card.billing.phone","typeLabel":"string"}},"required":["name"],"type":"object","isRequired":true,"uniqueKey":"oneOf.11.card.billing","typeLabel":"object"},"cvc":{"description":"Card verification code. Tokenized by the vault.","type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.cvc","typeLabel":"string"},"expirationMonth":{"description":"Expiration month, 1-12.","maximum":12,"minimum":1,"type":"integer","isRequired":true,"uniqueKey":"oneOf.11.card.expirationMonth","typeLabel":"integer"},"expirationYear":{"description":"Expiration year (4-digit).","maximum":2100,"minimum":2000,"type":"integer","isRequired":true,"uniqueKey":"oneOf.11.card.expirationYear","typeLabel":"integer"},"number":{"description":"Card number (PAN). Tokenized by the vault before reaching api.crossmint.com.","type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.number","typeLabel":"string"}},"required":["billing","cvc","expirationMonth","expirationYear","number"],"type":"object","isRequired":true,"uniqueKey":"oneOf.11.card","typeLabel":"object"},"type":{"const":"card","description":"Payment method type. Always `card`.","type":"string","isRequired":true,"uniqueKey":"oneOf.11.type","typeLabel":"string"},"userLocator":{"description":"Identifies the target user when authenticating with a server API key. Format: `\u003ctype>:\u003cvalue>` (e.g., `email:alice@example.com`, `userId:abc123`, `phoneNumber:+12125551234`, `twitter:alice`). Required for API-key authentication; ignored when authenticating with a JWT (the JWT subject is used).","minLength":1,"type":"string","uniqueKey":"oneOf.11.userLocator","typeLabel":"string"}},"uniqueKey":"oneOf.11","typeLabel":"Card · object"}],"uniqueKey":"","typeLabel":"MX CLABE · object | VN bank account · object | NG bank account · object | PH bank account · object | TH bank account · object | ID bank account · object | AE bank account · object | US bank account · object | CO bank account · object | SEPA IBAN · object | CO Bre-B key · object | Card · object"},"exampleType":"examples"}},"required":true,"exampleType":"examples"},"responses":{"c0a9a298-03c9-4f33-b836-06fcd7ae0399":{"content":{"application/json":{"examples":{"BankAccountAe":{"title":"BankAccountAe","value":{"bankAccount":{"accountHolder":{"address":{"city":"Dubai","line1":"Sheikh Zayed Road 1"},"name":"Omar Haddad"},"accountSuffix":"6789","country":"AE","currency":"aed","entityType":"individual"},"createdAt":"2026-10-19T09:00:00.000Z","paymentMethodId":"7c1e5a93-2d4b-4f68-a0c9-3b8e6d2f1a47","reason":null,"status":"pending","statusReason":null,"type":"bank-account-ae","updatedAt":"2026-10-19T09:00:12.000Z"}},"BankAccountCo":{"title":"BankAccountCo","value":{"bankAccount":{"accountHolder":{"document":{"suffix":"7890","type":"cc"},"name":"Carlos Gómez"},"accountSuffix":"7890","accountType":"savings","country":"CO","currency":"cop","entityType":"individual","institutionId":"co-bancolombia"},"createdAt":"2026-08-20T19:10:00.000Z","paymentMethodId":"1cad2281-bd3d-4219-8787-7dfea94c60b1","reason":null,"status":"pending","statusReason":null,"type":"bank-account-co","updatedAt":"2026-08-20T19:12:11.000Z"}},"BankAccountId":{"title":"BankAccountId","value":{"bankAccount":{"accountHolder":{"name":"Budi Santoso","phoneNumber":"+6281234567890"},"accountSuffix":"7890","country":"ID","currency":"idr","entityType":"individual","institutionId":"id-bca"},"createdAt":"2026-09-23T09:00:00.000Z","paymentMethodId":"7a3e5c91-2b4d-4f86-a1c0-9d8e7f6a5b42","reason":null,"status":"pending","statusReason":null,"type":"bank-account-id","updatedAt":"2026-09-23T09:00:12.000Z"}},"BankAccountMx":{"title":"BankAccountMx","value":{"bankAccount":{"accountHolder":{"name":"Luis Gomez Rios","phoneNumber":"+525512345678"},"accountSuffix":"7899","country":"MX","currency":"mxn","entityType":"individual","verificationStatus":"verified"},"createdAt":"2026-08-20T19:10:00.000Z","paymentMethodId":"27bacbe1-d0ff-4bc3-b37a-ca91cc64fa39","reason":null,"status":"pending","statusReason":null,"type":"bank-account-mx-clabe","updatedAt":"2026-08-20T19:12:11.000Z"}},"BankAccountNg":{"title":"BankAccountNg","value":{"bankAccount":{"accountHolder":{"name":"Chinedu Okafor","phoneNumber":"+2348031234567"},"accountSuffix":"7897","country":"NG","currency":"ngn","entityType":"individual","institutionId":"ng-gt-bank"},"createdAt":"2026-09-23T09:00:00.000Z","paymentMethodId":"2e9b4d17-6a3c-4f85-b1d0-8c7e5a2f9b63","reason":null,"status":"pending","statusReason":null,"type":"bank-account-ng","updatedAt":"2026-09-23T09:00:12.000Z"}},"BankAccountPh":{"title":"BankAccountPh","value":{"bankAccount":{"accountHolder":{"name":"Maria Santos","phoneNumber":"+639171234567"},"accountSuffix":"8901","country":"PH","currency":"php","entityType":"individual","institutionId":"ph-unionbank"},"createdAt":"2026-09-23T09:00:00.000Z","paymentMethodId":"5e2b7c41-9d0a-4f3b-8c6d-2a1b3c4d5e6f","reason":null,"status":"pending","statusReason":null,"type":"bank-account-ph","updatedAt":"2026-09-23T09:00:12.000Z"}},"BankAccountTh":{"title":"BankAccountTh","value":{"bankAccount":{"accountHolder":{"name":"Somchai Jaidee","phoneNumber":"+66812345678"},"accountSuffix":"7890","country":"TH","currency":"thb","entityType":"individual","institutionId":"th-kasikorn-bank"},"createdAt":"2026-09-23T09:00:00.000Z","paymentMethodId":"8a4c7e39-2f1b-4d96-b3e5-7c0d2a9f6b41","reason":null,"status":"pending","statusReason":null,"type":"bank-account-th","updatedAt":"2026-09-23T09:00:12.000Z"}},"BankAccountUs":{"title":"BankAccountUs","value":{"bankAccount":{"accountHolder":{"name":"Alice Smith"},"accountSuffix":"7899","accountType":"checking","bankAddress":{"city":"New York","line1":"123 Main St","postalCode":"10001","stateOrRegion":"NY"},"country":"US","currency":"usd","entityType":"individual","routingNumber":"071000013"},"createdAt":"2026-08-20T19:10:00.000Z","paymentMethodId":"dd8a59c6-aac0-47c2-9c21-686caf7f0359","reason":null,"status":"pending","statusReason":null,"type":"bank-account-us","updatedAt":"2026-08-20T19:12:11.000Z"}},"BankAccountVn":{"title":"BankAccountVn","value":{"bankAccount":{"accountHolder":{"name":"Nguyễn Văn An","phoneNumber":"+84912345678"},"accountSuffix":"4567","country":"VN","currency":"vnd","entityType":"individual","institutionId":"vn-acb"},"createdAt":"2026-09-23T09:00:00.000Z","paymentMethodId":"3f7d1b86-9e2a-4c50-8d34-1a6e9b7c5f02","reason":null,"status":"pending","statusReason":null,"type":"bank-account-vn","updatedAt":"2026-09-23T09:00:12.000Z"}},"Breb":{"title":"Breb","value":{"breB":{"accountHolder":{"name":"Carlos Gómez","phoneNumber":"+573001234567"},"accountSuffix":"CDKS","country":"CO","currency":"cop","entityType":"individual","keyType":"alphanumeric"},"createdAt":"2026-08-20T19:10:00.000Z","paymentMethodId":"9f1a6b2c-3d4e-4f50-9a61-2b3c4d5e6f70","reason":null,"status":"pending","statusReason":null,"type":"bre-b","updatedAt":"2026-08-20T19:12:11.000Z"}},"Card":{"title":"Card","value":{"card":{"billing":{"address":{"city":"Springfield","country":"US","line1":"123 Main St","postalCode":"62701","stateOrRegion":"IL"},"name":"Alice Smith","phone":"+12125551234"},"bin":"411111","brand":"visa","country":"US","expiration":{"month":"12","year":"2028"},"fundingType":"debit","last4":"1111"},"createdAt":"2026-08-20T19:10:00.000Z","default":true,"displayName":"Visa ••1111","paymentMethodId":"d4e5f6a7-b8c9-0123-def4-567890abcdef","reason":null,"status":"active","statusReason":null,"type":"card","updatedAt":"2026-08-20T19:12:11.000Z"}},"SEPA":{"title":"SEPA","value":{"bankAccount":{"accountHolder":{"country":"DE","name":"Hans Müller"},"accountSuffix":"6789","bic":"COBADEFFXXX","country":"DE","currency":"eur","entityType":"individual"},"createdAt":"2026-08-20T19:10:00.000Z","default":false,"paymentMethodId":"3323460b-d9d2-4ec6-b380-8a3e01e3f226","reason":null,"status":"pending","statusReason":null,"type":"bank-account-sepa-iban","updatedAt":"2026-08-20T19:12:11.000Z"}}},"schema":{"oneOf":[{"type":"object","title":"CO bank account","description":"A saved payment method. Sensitive fields (full PAN, CVC, full account numbers, IBANs, Bre-B keys) are never included.","required":["bankAccount","createdAt","paymentMethodId","reason","status","statusReason","type","updatedAt"],"example":{"createdAt":"2025-01-15T10:30:00.000Z","paymentMethodId":"3f7a9c10-2a8b-4c5d-9e2f-1b3a4c5d6e7f","reason":null,"status":"active","statusReason":null,"type":"card","updatedAt":"2025-01-15T10:30:00.000Z"},"properties":{"bankAccount":{"additionalProperties":false,"description":"Bank account details. Present when `type` is a bank type. Full account numbers and IBANs are never included.","properties":{"accountHolder":{"description":"Person or company that owns the account.","properties":{"document":{"description":"Identity document of the account holder. The full number is never returned.","properties":{"suffix":{"description":"Last four characters of the document number.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.accountHolder.document.suffix","typeLabel":"string"},"type":{"description":"Document type: `cc` (Cédula de Ciudadanía), `nit` (NIT), `ce` (Cédula de Extranjería), `pa` (passport), `ppt` (Permiso por Protección Temporal), `ti` (Tarjeta de Identidad), `rc` (Registro Civil), `te` (Tarjeta de Extranjería) or `die` (foreign identity document).","enum":["cc","ce","die","nit","pa","ppt","rc","te","ti"],"type":"string","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.accountHolder.document.type","typeLabel":"enum\u003cstring>"}},"required":["suffix","type"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.accountHolder.document","typeLabel":"object"},"name":{"description":"Full legal name of the account holder. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.accountHolder.name","typeLabel":"string"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.0.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"Phone number of the account holder in E.164 format.","minLength":1,"type":"string","uniqueKey":"oneOf.0.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["document","name"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.accountHolder","typeLabel":"object"},"accountSuffix":{"description":"The last characters of the account number, CLABE or IBAN, at most four.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.accountSuffix","typeLabel":"string"},"accountType":{"description":"Type of the account.","enum":["checking","electronic-deposit","savings"],"type":"string","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.accountType","typeLabel":"enum\u003cstring>"},"country":{"const":"CO","description":"Always `CO`.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.country","typeLabel":"string"},"currency":{"const":"cop","description":"Always 'cop'; a Colombian bank account only settles in Colombian pesos.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.currency","typeLabel":"string"},"institutionId":{"description":"ID of the bank, for example `co-bancolombia`. The [Bank Institution IDs](https://docs.crossmint.com/offramp/guides/bank-institution-ids) page lists every ID.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.institutionId","typeLabel":"string"},"entityType":{"description":"Type of the account holder. Present when sent on creation.","enum":["business","individual"],"type":"string","uniqueKey":"oneOf.0.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"rails":{"description":"Bank rails available for payouts to this account. `supported` lists rails a currently-available provider advertises for this bank account; Crossmint decides payer eligibility at order time, so an order can still be refused on a rail listed here. `pending` lists rails still being resolved (non-empty only while `status` is 'pending'); `status` is 'pending' while asynchronous rail resolution is still running. Absent when no payout provider serves the account, or when `status` is 'rejected'.","properties":{"pending":{"description":"Rails still being resolved. Non-empty only while `status` is `pending`.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.0.bankAccount.rails.pending.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.rails.pending","typeLabel":"enum\u003cstring>[]"},"status":{"description":"`pending` while asynchronous rail resolution is still running. `complete` when every provider has answered.","enum":["complete","pending"],"type":"string","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.rails.status","typeLabel":"enum\u003cstring>"},"supported":{"description":"Rails that a currently-available payout provider advertises for this account.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.0.bankAccount.rails.supported.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.0.bankAccount.rails.supported","typeLabel":"enum\u003cstring>[]"}},"required":["pending","status","supported"],"type":"object","uniqueKey":"oneOf.0.bankAccount.rails","typeLabel":"object"},"verificationStatus":{"description":"Result of the provider's check on the destination. Absent until a provider answers.","enum":["pending-review","rejected","verified"],"type":"string","uniqueKey":"oneOf.0.bankAccount.verificationStatus","typeLabel":"enum\u003cstring>"}},"required":["accountHolder","accountSuffix","accountType","country","currency","institutionId"],"type":"object","isRequired":true,"uniqueKey":"oneOf.0.bankAccount","typeLabel":"object"},"createdAt":{"description":"ISO 8601 timestamp when this payment method was created.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.0.createdAt","typeLabel":"string\u003cdate-time>"},"paymentMethodId":{"description":"Unique identifier (UUID v4). Crossmint assigns it on creation.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.0.paymentMethodId","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","description":"Deprecated. Use `statusReason`, which carries the same value.","isRequired":true,"uniqueKey":"oneOf.0.reason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.0.reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.reason","typeLabel":"string | null"},"status":{"description":"Whether a payout provider serves this destination. 'pending' while the readiness checks run, 'active' when a provider advertises a rail for it, 'rejected' when it cannot receive funds, 'deleted' when it was deleted. This describes the destination only, never the payer's eligibility. 'pending' moves to 'active', 'rejected' or 'deleted'; 'active' moves to 'rejected' or 'deleted'; 'rejected' moves only to 'deleted'. Branch on this field, never on `statusReason`.","enum":["active","deleted","pending","rejected"],"type":"string","isRequired":true,"uniqueKey":"oneOf.0.status","typeLabel":"enum\u003cstring>"},"statusReason":{"oneOf":[{"type":"string","description":"Why the status is 'rejected'. Null on every other status, and on a rejection with no established destination condition. Known values today: destination-not-found, destination-closed, destination-cannot-receive, no-rail-available. New codes can appear at any time, so branch on `status` and treat an unrecognised code as the status alone.","isRequired":true,"uniqueKey":"oneOf.0.statusReason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.0.statusReason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.statusReason","typeLabel":"string | null"},"type":{"const":"bank-account-co","description":"Payment method type. Selects which sub-object is present: `card`, `bankAccount`, or `breB`.","type":"string","isRequired":true,"uniqueKey":"oneOf.0.type","typeLabel":"string"},"updatedAt":{"description":"ISO 8601 timestamp when this payment method was last modified.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.0.updatedAt","typeLabel":"string\u003cdate-time>"},"label":{"description":"The client's own name for this payment method, when one was sent.","minLength":1,"type":"string","uniqueKey":"oneOf.0.label","typeLabel":"string"},"lastPayoutAt":{"description":"Read-only. ISO 8601 timestamp of the most recent successful offramp payout funded by this bank account. Absent if none.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","uniqueKey":"oneOf.0.lastPayoutAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.0","typeLabel":"CO bank account · object"},{"type":"object","title":"MX CLABE","description":"A saved payment method. Sensitive fields (full PAN, CVC, full account numbers, IBANs, Bre-B keys) are never included.","required":["bankAccount","createdAt","paymentMethodId","reason","status","statusReason","type","updatedAt"],"example":{"createdAt":"2025-01-15T10:30:00.000Z","paymentMethodId":"3f7a9c10-2a8b-4c5d-9e2f-1b3a4c5d6e7f","reason":null,"status":"active","statusReason":null,"type":"card","updatedAt":"2025-01-15T10:30:00.000Z"},"properties":{"bankAccount":{"additionalProperties":false,"description":"Bank account details. Present when `type` is a bank type. Full account numbers and IBANs are never included.","properties":{"accountSuffix":{"description":"The last characters of the account number, CLABE or IBAN, at most four.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.accountSuffix","typeLabel":"string"},"country":{"description":"ISO 3166-1 alpha-2 country code of the account.","enum":["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","XK","YE","YT","ZA","ZM","ZW"],"type":"string","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.country","typeLabel":"enum\u003cstring>"},"currency":{"const":"mxn","description":"Always 'mxn'; a CLABE only settles in Mexican pesos.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.currency","typeLabel":"string"},"accountHolder":{"description":"The person or company that owns the bank account. Derived from `billing` when the record predates this field. Its address carries no country: the account's own `country` is the bank's jurisdiction.","properties":{"name":{"description":"Full legal name of the account holder. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder, in the country of the account. Present only on types that collect one.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.1.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.1.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.1.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.1.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.1.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"Phone number of the account holder in E.164 format.","minLength":1,"type":"string","uniqueKey":"oneOf.1.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","uniqueKey":"oneOf.1.bankAccount.accountHolder","typeLabel":"object"},"entityType":{"description":"Type of the account holder. Present when sent on creation.","enum":["business","individual"],"type":"string","uniqueKey":"oneOf.1.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"rails":{"description":"Bank rails available for payouts to this account. `supported` lists rails a currently-available provider advertises for this bank account; Crossmint decides payer eligibility at order time, so an order can still be refused on a rail listed here. `pending` lists rails still being resolved (non-empty only while `status` is 'pending'); `status` is 'pending' while asynchronous rail resolution is still running. Absent when no payout provider serves the account, or when `status` is 'rejected'.","properties":{"pending":{"description":"Rails still being resolved. Non-empty only while `status` is `pending`.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.1.bankAccount.rails.pending.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.rails.pending","typeLabel":"enum\u003cstring>[]"},"status":{"description":"`pending` while asynchronous rail resolution is still running. `complete` when every provider has answered.","enum":["complete","pending"],"type":"string","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.rails.status","typeLabel":"enum\u003cstring>"},"supported":{"description":"Rails that a currently-available payout provider advertises for this account.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.1.bankAccount.rails.supported.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.1.bankAccount.rails.supported","typeLabel":"enum\u003cstring>[]"}},"required":["pending","status","supported"],"type":"object","uniqueKey":"oneOf.1.bankAccount.rails","typeLabel":"object"},"verificationStatus":{"description":"Result of the provider's check on the destination. Absent until a provider answers.","enum":["pending-review","rejected","verified"],"type":"string","uniqueKey":"oneOf.1.bankAccount.verificationStatus","typeLabel":"enum\u003cstring>"}},"required":["accountSuffix","country","currency"],"type":"object","isRequired":true,"uniqueKey":"oneOf.1.bankAccount","typeLabel":"object"},"createdAt":{"description":"ISO 8601 timestamp when this payment method was created.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.1.createdAt","typeLabel":"string\u003cdate-time>"},"paymentMethodId":{"description":"Unique identifier (UUID v4). Crossmint assigns it on creation.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.1.paymentMethodId","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","description":"Deprecated. Use `statusReason`, which carries the same value.","isRequired":true,"uniqueKey":"oneOf.1.reason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.1.reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.1.reason","typeLabel":"string | null"},"status":{"description":"Whether a payout provider serves this destination. 'pending' while the readiness checks run, 'active' when a provider advertises a rail for it, 'rejected' when it cannot receive funds, 'deleted' when it was deleted. This describes the destination only, never the payer's eligibility. 'pending' moves to 'active', 'rejected' or 'deleted'; 'active' moves to 'rejected' or 'deleted'; 'rejected' moves only to 'deleted'. Branch on this field, never on `statusReason`.","enum":["active","deleted","pending","rejected"],"type":"string","isRequired":true,"uniqueKey":"oneOf.1.status","typeLabel":"enum\u003cstring>"},"statusReason":{"oneOf":[{"type":"string","description":"Why the status is 'rejected'. Null on every other status, and on a rejection with no established destination condition. Known values today: destination-not-found, destination-closed, destination-cannot-receive, no-rail-available. New codes can appear at any time, so branch on `status` and treat an unrecognised code as the status alone.","isRequired":true,"uniqueKey":"oneOf.1.statusReason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.1.statusReason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.1.statusReason","typeLabel":"string | null"},"type":{"const":"bank-account-mx-clabe","description":"Payment method type. Selects which sub-object is present: `card`, `bankAccount`, or `breB`.","type":"string","isRequired":true,"uniqueKey":"oneOf.1.type","typeLabel":"string"},"updatedAt":{"description":"ISO 8601 timestamp when this payment method was last modified.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.1.updatedAt","typeLabel":"string\u003cdate-time>"},"label":{"description":"The client's own name for this payment method, when one was sent.","minLength":1,"type":"string","uniqueKey":"oneOf.1.label","typeLabel":"string"},"lastPayoutAt":{"description":"Read-only. ISO 8601 timestamp of the most recent successful offramp payout funded by this bank account. Absent if none.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","uniqueKey":"oneOf.1.lastPayoutAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.1","typeLabel":"MX CLABE · object"},{"type":"object","title":"AE bank account","description":"A saved payment method. Sensitive fields (full PAN, CVC, full account numbers, IBANs, Bre-B keys) are never included.","required":["bankAccount","createdAt","paymentMethodId","reason","status","statusReason","type","updatedAt"],"example":{"createdAt":"2025-01-15T10:30:00.000Z","paymentMethodId":"3f7a9c10-2a8b-4c5d-9e2f-1b3a4c5d6e7f","reason":null,"status":"active","statusReason":null,"type":"card","updatedAt":"2025-01-15T10:30:00.000Z"},"properties":{"bankAccount":{"description":"Bank account details. Present when `type` is a bank type. Full account numbers and IBANs are never included.","properties":{"accountSuffix":{"description":"The last characters of the account number, CLABE or IBAN, at most four.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.accountSuffix","typeLabel":"string"},"country":{"const":"AE","description":"Always 'AE'.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.country","typeLabel":"string"},"currency":{"const":"aed","description":"Always 'aed'; UAE bank accounts only settle in UAE dirhams.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.currency","typeLabel":"string"},"accountHolder":{"description":"The person or company that owns the bank account. Derived from `billing` when the record predates this field. Its address carries no country: the account's own `country` is the bank's jurisdiction.","properties":{"name":{"description":"Full legal name of the account holder. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder, in the country of the account. Present only on types that collect one.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.2.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.2.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.2.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.2.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.2.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"Phone number of the account holder in E.164 format.","minLength":1,"type":"string","uniqueKey":"oneOf.2.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","uniqueKey":"oneOf.2.bankAccount.accountHolder","typeLabel":"object"},"accountType":{"description":"Type of the account. Present when sent on creation.","enum":["checking","savings"],"type":"string","uniqueKey":"oneOf.2.bankAccount.accountType","typeLabel":"enum\u003cstring>"},"entityType":{"description":"Type of the account holder. Present when sent on creation.","enum":["business","individual"],"type":"string","uniqueKey":"oneOf.2.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"rails":{"description":"Bank rails available for payouts to this account. `supported` lists rails a currently-available provider advertises for this bank account; Crossmint decides payer eligibility at order time, so an order can still be refused on a rail listed here. `pending` lists rails still being resolved (non-empty only while `status` is 'pending'); `status` is 'pending' while asynchronous rail resolution is still running. Absent when no payout provider serves the account, or when `status` is 'rejected'.","properties":{"pending":{"description":"Rails still being resolved. Non-empty only while `status` is `pending`.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.2.bankAccount.rails.pending.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.rails.pending","typeLabel":"enum\u003cstring>[]"},"status":{"description":"`pending` while asynchronous rail resolution is still running. `complete` when every provider has answered.","enum":["complete","pending"],"type":"string","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.rails.status","typeLabel":"enum\u003cstring>"},"supported":{"description":"Rails that a currently-available payout provider advertises for this account.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.2.bankAccount.rails.supported.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.2.bankAccount.rails.supported","typeLabel":"enum\u003cstring>[]"}},"required":["pending","status","supported"],"type":"object","uniqueKey":"oneOf.2.bankAccount.rails","typeLabel":"object"},"verificationStatus":{"description":"Result of the provider's check on the destination. Absent until a provider answers.","enum":["pending-review","rejected","verified"],"type":"string","uniqueKey":"oneOf.2.bankAccount.verificationStatus","typeLabel":"enum\u003cstring>"}},"required":["accountSuffix","country","currency"],"type":"object","isRequired":true,"uniqueKey":"oneOf.2.bankAccount","typeLabel":"object"},"createdAt":{"description":"ISO 8601 timestamp when this payment method was created.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.2.createdAt","typeLabel":"string\u003cdate-time>"},"paymentMethodId":{"description":"Unique identifier (UUID v4). Crossmint assigns it on creation.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.2.paymentMethodId","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","description":"Deprecated. Use `statusReason`, which carries the same value.","isRequired":true,"uniqueKey":"oneOf.2.reason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.2.reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.2.reason","typeLabel":"string | null"},"status":{"description":"Whether a payout provider serves this destination. 'pending' while the readiness checks run, 'active' when a provider advertises a rail for it, 'rejected' when it cannot receive funds, 'deleted' when it was deleted. This describes the destination only, never the payer's eligibility. 'pending' moves to 'active', 'rejected' or 'deleted'; 'active' moves to 'rejected' or 'deleted'; 'rejected' moves only to 'deleted'. Branch on this field, never on `statusReason`.","enum":["active","deleted","pending","rejected"],"type":"string","isRequired":true,"uniqueKey":"oneOf.2.status","typeLabel":"enum\u003cstring>"},"statusReason":{"oneOf":[{"type":"string","description":"Why the status is 'rejected'. Null on every other status, and on a rejection with no established destination condition. Known values today: destination-not-found, destination-closed, destination-cannot-receive, no-rail-available. New codes can appear at any time, so branch on `status` and treat an unrecognised code as the status alone.","isRequired":true,"uniqueKey":"oneOf.2.statusReason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.2.statusReason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.2.statusReason","typeLabel":"string | null"},"type":{"const":"bank-account-ae","description":"Payment method type. Selects which sub-object is present: `card`, `bankAccount`, or `breB`.","type":"string","isRequired":true,"uniqueKey":"oneOf.2.type","typeLabel":"string"},"updatedAt":{"description":"ISO 8601 timestamp when this payment method was last modified.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.2.updatedAt","typeLabel":"string\u003cdate-time>"},"label":{"description":"The client's own name for this payment method, when one was sent.","minLength":1,"type":"string","uniqueKey":"oneOf.2.label","typeLabel":"string"},"lastPayoutAt":{"description":"Read-only. ISO 8601 timestamp of the most recent successful offramp payout funded by this bank account. Absent if none.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","uniqueKey":"oneOf.2.lastPayoutAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.2","typeLabel":"AE bank account · object"},{"type":"object","title":"ID bank account","description":"A saved payment method. Sensitive fields (full PAN, CVC, full account numbers, IBANs, Bre-B keys) are never included.","required":["bankAccount","createdAt","paymentMethodId","reason","status","statusReason","type","updatedAt"],"example":{"createdAt":"2025-01-15T10:30:00.000Z","paymentMethodId":"3f7a9c10-2a8b-4c5d-9e2f-1b3a4c5d6e7f","reason":null,"status":"active","statusReason":null,"type":"card","updatedAt":"2025-01-15T10:30:00.000Z"},"properties":{"bankAccount":{"description":"Bank account details. Present when `type` is a bank type. Full account numbers and IBANs are never included.","properties":{"accountSuffix":{"description":"The last characters of the account number, CLABE or IBAN, at most four.","type":"string","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.accountSuffix","typeLabel":"string"},"country":{"const":"ID","description":"Always 'ID'.","type":"string","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.country","typeLabel":"string"},"currency":{"const":"idr","description":"Always 'idr'; Indonesian bank accounts only settle in Indonesian rupiah.","type":"string","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.currency","typeLabel":"string"},"institutionId":{"description":"ID of the bank, for example `id-bca`. The [Bank Institution IDs](https://docs.crossmint.com/offramp/guides/bank-institution-ids) page lists every ID.","type":"string","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.institutionId","typeLabel":"string"},"accountHolder":{"description":"The person or company that owns the bank account. Derived from `billing` when the record predates this field. Its address carries no country: the account's own `country` is the bank's jurisdiction.","properties":{"name":{"description":"Full legal name of the account holder. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder, in the country of the account. Present only on types that collect one.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.3.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.3.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.3.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.3.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.3.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"Phone number of the account holder in E.164 format.","minLength":1,"type":"string","uniqueKey":"oneOf.3.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","uniqueKey":"oneOf.3.bankAccount.accountHolder","typeLabel":"object"},"accountType":{"description":"Type of the account. Present when sent on creation.","enum":["checking","savings"],"type":"string","uniqueKey":"oneOf.3.bankAccount.accountType","typeLabel":"enum\u003cstring>"},"entityType":{"description":"Type of the account holder. Present when sent on creation.","enum":["business","individual"],"type":"string","uniqueKey":"oneOf.3.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"rails":{"description":"Bank rails available for payouts to this account. `supported` lists rails a currently-available provider advertises for this bank account; Crossmint decides payer eligibility at order time, so an order can still be refused on a rail listed here. `pending` lists rails still being resolved (non-empty only while `status` is 'pending'); `status` is 'pending' while asynchronous rail resolution is still running. Absent when no payout provider serves the account, or when `status` is 'rejected'.","properties":{"pending":{"description":"Rails still being resolved. Non-empty only while `status` is `pending`.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.3.bankAccount.rails.pending.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.rails.pending","typeLabel":"enum\u003cstring>[]"},"status":{"description":"`pending` while asynchronous rail resolution is still running. `complete` when every provider has answered.","enum":["complete","pending"],"type":"string","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.rails.status","typeLabel":"enum\u003cstring>"},"supported":{"description":"Rails that a currently-available payout provider advertises for this account.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.3.bankAccount.rails.supported.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.3.bankAccount.rails.supported","typeLabel":"enum\u003cstring>[]"}},"required":["pending","status","supported"],"type":"object","uniqueKey":"oneOf.3.bankAccount.rails","typeLabel":"object"},"verificationStatus":{"description":"Result of the provider's check on the destination. Absent until a provider answers.","enum":["pending-review","rejected","verified"],"type":"string","uniqueKey":"oneOf.3.bankAccount.verificationStatus","typeLabel":"enum\u003cstring>"}},"required":["accountSuffix","country","currency","institutionId"],"type":"object","isRequired":true,"uniqueKey":"oneOf.3.bankAccount","typeLabel":"object"},"createdAt":{"description":"ISO 8601 timestamp when this payment method was created.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.3.createdAt","typeLabel":"string\u003cdate-time>"},"paymentMethodId":{"description":"Unique identifier (UUID v4). Crossmint assigns it on creation.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.3.paymentMethodId","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","description":"Deprecated. Use `statusReason`, which carries the same value.","isRequired":true,"uniqueKey":"oneOf.3.reason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.3.reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.3.reason","typeLabel":"string | null"},"status":{"description":"Whether a payout provider serves this destination. 'pending' while the readiness checks run, 'active' when a provider advertises a rail for it, 'rejected' when it cannot receive funds, 'deleted' when it was deleted. This describes the destination only, never the payer's eligibility. 'pending' moves to 'active', 'rejected' or 'deleted'; 'active' moves to 'rejected' or 'deleted'; 'rejected' moves only to 'deleted'. Branch on this field, never on `statusReason`.","enum":["active","deleted","pending","rejected"],"type":"string","isRequired":true,"uniqueKey":"oneOf.3.status","typeLabel":"enum\u003cstring>"},"statusReason":{"oneOf":[{"type":"string","description":"Why the status is 'rejected'. Null on every other status, and on a rejection with no established destination condition. Known values today: destination-not-found, destination-closed, destination-cannot-receive, no-rail-available. New codes can appear at any time, so branch on `status` and treat an unrecognised code as the status alone.","isRequired":true,"uniqueKey":"oneOf.3.statusReason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.3.statusReason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.3.statusReason","typeLabel":"string | null"},"type":{"const":"bank-account-id","description":"Payment method type. Selects which sub-object is present: `card`, `bankAccount`, or `breB`.","type":"string","isRequired":true,"uniqueKey":"oneOf.3.type","typeLabel":"string"},"updatedAt":{"description":"ISO 8601 timestamp when this payment method was last modified.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.3.updatedAt","typeLabel":"string\u003cdate-time>"},"label":{"description":"The client's own name for this payment method, when one was sent.","minLength":1,"type":"string","uniqueKey":"oneOf.3.label","typeLabel":"string"},"lastPayoutAt":{"description":"Read-only. ISO 8601 timestamp of the most recent successful offramp payout funded by this bank account. Absent if none.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","uniqueKey":"oneOf.3.lastPayoutAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.3","typeLabel":"ID bank account · object"},{"type":"object","title":"NG bank account","description":"A saved payment method. Sensitive fields (full PAN, CVC, full account numbers, IBANs, Bre-B keys) are never included.","required":["bankAccount","createdAt","paymentMethodId","reason","status","statusReason","type","updatedAt"],"example":{"createdAt":"2025-01-15T10:30:00.000Z","paymentMethodId":"3f7a9c10-2a8b-4c5d-9e2f-1b3a4c5d6e7f","reason":null,"status":"active","statusReason":null,"type":"card","updatedAt":"2025-01-15T10:30:00.000Z"},"properties":{"bankAccount":{"description":"Bank account details. Present when `type` is a bank type. Full account numbers and IBANs are never included.","properties":{"accountSuffix":{"description":"The last characters of the account number, CLABE or IBAN, at most four.","type":"string","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.accountSuffix","typeLabel":"string"},"country":{"const":"NG","description":"Always 'NG'.","type":"string","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.country","typeLabel":"string"},"currency":{"const":"ngn","description":"Always 'ngn'; Nigerian bank accounts only settle in Nigerian naira.","type":"string","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.currency","typeLabel":"string"},"institutionId":{"description":"ID of the bank, for example `ng-gt-bank`. The [Bank Institution IDs](https://docs.crossmint.com/offramp/guides/bank-institution-ids) page lists every ID.","type":"string","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.institutionId","typeLabel":"string"},"accountHolder":{"description":"The person or company that owns the bank account. Derived from `billing` when the record predates this field. Its address carries no country: the account's own `country` is the bank's jurisdiction.","properties":{"name":{"description":"Full legal name of the account holder. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder, in the country of the account. Present only on types that collect one.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.4.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.4.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.4.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.4.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.4.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"Phone number of the account holder in E.164 format.","minLength":1,"type":"string","uniqueKey":"oneOf.4.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","uniqueKey":"oneOf.4.bankAccount.accountHolder","typeLabel":"object"},"accountType":{"description":"Type of the account. Present when sent on creation.","enum":["checking","savings"],"type":"string","uniqueKey":"oneOf.4.bankAccount.accountType","typeLabel":"enum\u003cstring>"},"entityType":{"description":"Type of the account holder. Present when sent on creation.","enum":["business","individual"],"type":"string","uniqueKey":"oneOf.4.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"rails":{"description":"Bank rails available for payouts to this account. `supported` lists rails a currently-available provider advertises for this bank account; Crossmint decides payer eligibility at order time, so an order can still be refused on a rail listed here. `pending` lists rails still being resolved (non-empty only while `status` is 'pending'); `status` is 'pending' while asynchronous rail resolution is still running. Absent when no payout provider serves the account, or when `status` is 'rejected'.","properties":{"pending":{"description":"Rails still being resolved. Non-empty only while `status` is `pending`.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.4.bankAccount.rails.pending.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.rails.pending","typeLabel":"enum\u003cstring>[]"},"status":{"description":"`pending` while asynchronous rail resolution is still running. `complete` when every provider has answered.","enum":["complete","pending"],"type":"string","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.rails.status","typeLabel":"enum\u003cstring>"},"supported":{"description":"Rails that a currently-available payout provider advertises for this account.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.4.bankAccount.rails.supported.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.4.bankAccount.rails.supported","typeLabel":"enum\u003cstring>[]"}},"required":["pending","status","supported"],"type":"object","uniqueKey":"oneOf.4.bankAccount.rails","typeLabel":"object"},"verificationStatus":{"description":"Result of the provider's check on the destination. Absent until a provider answers.","enum":["pending-review","rejected","verified"],"type":"string","uniqueKey":"oneOf.4.bankAccount.verificationStatus","typeLabel":"enum\u003cstring>"}},"required":["accountSuffix","country","currency","institutionId"],"type":"object","isRequired":true,"uniqueKey":"oneOf.4.bankAccount","typeLabel":"object"},"createdAt":{"description":"ISO 8601 timestamp when this payment method was created.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.4.createdAt","typeLabel":"string\u003cdate-time>"},"paymentMethodId":{"description":"Unique identifier (UUID v4). Crossmint assigns it on creation.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.4.paymentMethodId","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","description":"Deprecated. Use `statusReason`, which carries the same value.","isRequired":true,"uniqueKey":"oneOf.4.reason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.4.reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.4.reason","typeLabel":"string | null"},"status":{"description":"Whether a payout provider serves this destination. 'pending' while the readiness checks run, 'active' when a provider advertises a rail for it, 'rejected' when it cannot receive funds, 'deleted' when it was deleted. This describes the destination only, never the payer's eligibility. 'pending' moves to 'active', 'rejected' or 'deleted'; 'active' moves to 'rejected' or 'deleted'; 'rejected' moves only to 'deleted'. Branch on this field, never on `statusReason`.","enum":["active","deleted","pending","rejected"],"type":"string","isRequired":true,"uniqueKey":"oneOf.4.status","typeLabel":"enum\u003cstring>"},"statusReason":{"oneOf":[{"type":"string","description":"Why the status is 'rejected'. Null on every other status, and on a rejection with no established destination condition. Known values today: destination-not-found, destination-closed, destination-cannot-receive, no-rail-available. New codes can appear at any time, so branch on `status` and treat an unrecognised code as the status alone.","isRequired":true,"uniqueKey":"oneOf.4.statusReason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.4.statusReason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.4.statusReason","typeLabel":"string | null"},"type":{"const":"bank-account-ng","description":"Payment method type. Selects which sub-object is present: `card`, `bankAccount`, or `breB`.","type":"string","isRequired":true,"uniqueKey":"oneOf.4.type","typeLabel":"string"},"updatedAt":{"description":"ISO 8601 timestamp when this payment method was last modified.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.4.updatedAt","typeLabel":"string\u003cdate-time>"},"label":{"description":"The client's own name for this payment method, when one was sent.","minLength":1,"type":"string","uniqueKey":"oneOf.4.label","typeLabel":"string"},"lastPayoutAt":{"description":"Read-only. ISO 8601 timestamp of the most recent successful offramp payout funded by this bank account. Absent if none.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","uniqueKey":"oneOf.4.lastPayoutAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.4","typeLabel":"NG bank account · object"},{"type":"object","title":"PH bank account","description":"A saved payment method. Sensitive fields (full PAN, CVC, full account numbers, IBANs, Bre-B keys) are never included.","required":["bankAccount","createdAt","paymentMethodId","reason","status","statusReason","type","updatedAt"],"example":{"createdAt":"2025-01-15T10:30:00.000Z","paymentMethodId":"3f7a9c10-2a8b-4c5d-9e2f-1b3a4c5d6e7f","reason":null,"status":"active","statusReason":null,"type":"card","updatedAt":"2025-01-15T10:30:00.000Z"},"properties":{"bankAccount":{"description":"Bank account details. Present when `type` is a bank type. Full account numbers and IBANs are never included.","properties":{"accountSuffix":{"description":"The last characters of the account number, CLABE or IBAN, at most four.","type":"string","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.accountSuffix","typeLabel":"string"},"country":{"const":"PH","description":"Always 'PH'.","type":"string","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.country","typeLabel":"string"},"currency":{"const":"php","description":"Always 'php'; Philippine bank accounts only settle in Philippine pesos.","type":"string","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.currency","typeLabel":"string"},"institutionId":{"description":"ID of the bank, for example `ph-bdo`. The [Bank Institution IDs](https://docs.crossmint.com/offramp/guides/bank-institution-ids) page lists every ID.","type":"string","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.institutionId","typeLabel":"string"},"accountHolder":{"description":"The person or company that owns the bank account. Derived from `billing` when the record predates this field. Its address carries no country: the account's own `country` is the bank's jurisdiction.","properties":{"name":{"description":"Full legal name of the account holder. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder, in the country of the account. Present only on types that collect one.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.5.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.5.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.5.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.5.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.5.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"Phone number of the account holder in E.164 format.","minLength":1,"type":"string","uniqueKey":"oneOf.5.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","uniqueKey":"oneOf.5.bankAccount.accountHolder","typeLabel":"object"},"accountType":{"description":"Type of the account. Present when sent on creation.","enum":["checking","savings"],"type":"string","uniqueKey":"oneOf.5.bankAccount.accountType","typeLabel":"enum\u003cstring>"},"entityType":{"description":"Type of the account holder. Present when sent on creation.","enum":["business","individual"],"type":"string","uniqueKey":"oneOf.5.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"rails":{"description":"Bank rails available for payouts to this account. `supported` lists rails a currently-available provider advertises for this bank account; Crossmint decides payer eligibility at order time, so an order can still be refused on a rail listed here. `pending` lists rails still being resolved (non-empty only while `status` is 'pending'); `status` is 'pending' while asynchronous rail resolution is still running. Absent when no payout provider serves the account, or when `status` is 'rejected'.","properties":{"pending":{"description":"Rails still being resolved. Non-empty only while `status` is `pending`.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.5.bankAccount.rails.pending.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.rails.pending","typeLabel":"enum\u003cstring>[]"},"status":{"description":"`pending` while asynchronous rail resolution is still running. `complete` when every provider has answered.","enum":["complete","pending"],"type":"string","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.rails.status","typeLabel":"enum\u003cstring>"},"supported":{"description":"Rails that a currently-available payout provider advertises for this account.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.5.bankAccount.rails.supported.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.5.bankAccount.rails.supported","typeLabel":"enum\u003cstring>[]"}},"required":["pending","status","supported"],"type":"object","uniqueKey":"oneOf.5.bankAccount.rails","typeLabel":"object"},"verificationStatus":{"description":"Result of the provider's check on the destination. Absent until a provider answers.","enum":["pending-review","rejected","verified"],"type":"string","uniqueKey":"oneOf.5.bankAccount.verificationStatus","typeLabel":"enum\u003cstring>"}},"required":["accountSuffix","country","currency","institutionId"],"type":"object","isRequired":true,"uniqueKey":"oneOf.5.bankAccount","typeLabel":"object"},"createdAt":{"description":"ISO 8601 timestamp when this payment method was created.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.5.createdAt","typeLabel":"string\u003cdate-time>"},"paymentMethodId":{"description":"Unique identifier (UUID v4). Crossmint assigns it on creation.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.5.paymentMethodId","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","description":"Deprecated. Use `statusReason`, which carries the same value.","isRequired":true,"uniqueKey":"oneOf.5.reason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.5.reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.5.reason","typeLabel":"string | null"},"status":{"description":"Whether a payout provider serves this destination. 'pending' while the readiness checks run, 'active' when a provider advertises a rail for it, 'rejected' when it cannot receive funds, 'deleted' when it was deleted. This describes the destination only, never the payer's eligibility. 'pending' moves to 'active', 'rejected' or 'deleted'; 'active' moves to 'rejected' or 'deleted'; 'rejected' moves only to 'deleted'. Branch on this field, never on `statusReason`.","enum":["active","deleted","pending","rejected"],"type":"string","isRequired":true,"uniqueKey":"oneOf.5.status","typeLabel":"enum\u003cstring>"},"statusReason":{"oneOf":[{"type":"string","description":"Why the status is 'rejected'. Null on every other status, and on a rejection with no established destination condition. Known values today: destination-not-found, destination-closed, destination-cannot-receive, no-rail-available. New codes can appear at any time, so branch on `status` and treat an unrecognised code as the status alone.","isRequired":true,"uniqueKey":"oneOf.5.statusReason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.5.statusReason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.5.statusReason","typeLabel":"string | null"},"type":{"const":"bank-account-ph","description":"Payment method type. Selects which sub-object is present: `card`, `bankAccount`, or `breB`.","type":"string","isRequired":true,"uniqueKey":"oneOf.5.type","typeLabel":"string"},"updatedAt":{"description":"ISO 8601 timestamp when this payment method was last modified.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.5.updatedAt","typeLabel":"string\u003cdate-time>"},"label":{"description":"The client's own name for this payment method, when one was sent.","minLength":1,"type":"string","uniqueKey":"oneOf.5.label","typeLabel":"string"},"lastPayoutAt":{"description":"Read-only. ISO 8601 timestamp of the most recent successful offramp payout funded by this bank account. Absent if none.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","uniqueKey":"oneOf.5.lastPayoutAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.5","typeLabel":"PH bank account · object"},{"type":"object","title":"TH bank account","description":"A saved payment method. Sensitive fields (full PAN, CVC, full account numbers, IBANs, Bre-B keys) are never included.","required":["bankAccount","createdAt","paymentMethodId","reason","status","statusReason","type","updatedAt"],"example":{"createdAt":"2025-01-15T10:30:00.000Z","paymentMethodId":"3f7a9c10-2a8b-4c5d-9e2f-1b3a4c5d6e7f","reason":null,"status":"active","statusReason":null,"type":"card","updatedAt":"2025-01-15T10:30:00.000Z"},"properties":{"bankAccount":{"description":"Bank account details. Present when `type` is a bank type. Full account numbers and IBANs are never included.","properties":{"accountSuffix":{"description":"The last characters of the account number, CLABE or IBAN, at most four.","type":"string","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.accountSuffix","typeLabel":"string"},"country":{"const":"TH","description":"Always 'TH'.","type":"string","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.country","typeLabel":"string"},"currency":{"const":"thb","description":"Always 'thb'; Thai bank accounts only settle in Thai baht.","type":"string","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.currency","typeLabel":"string"},"institutionId":{"description":"ID of the bank, for example `th-kasikorn-bank`. The [Bank Institution IDs](https://docs.crossmint.com/offramp/guides/bank-institution-ids) page lists every ID.","type":"string","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.institutionId","typeLabel":"string"},"accountHolder":{"description":"The person or company that owns the bank account. Derived from `billing` when the record predates this field. Its address carries no country: the account's own `country` is the bank's jurisdiction.","properties":{"name":{"description":"Full legal name of the account holder. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder, in the country of the account. Present only on types that collect one.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.6.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.6.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.6.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.6.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.6.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"Phone number of the account holder in E.164 format.","minLength":1,"type":"string","uniqueKey":"oneOf.6.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","uniqueKey":"oneOf.6.bankAccount.accountHolder","typeLabel":"object"},"accountType":{"description":"Type of the account. Present when sent on creation.","enum":["checking","savings"],"type":"string","uniqueKey":"oneOf.6.bankAccount.accountType","typeLabel":"enum\u003cstring>"},"entityType":{"description":"Type of the account holder. Present when sent on creation.","enum":["business","individual"],"type":"string","uniqueKey":"oneOf.6.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"rails":{"description":"Bank rails available for payouts to this account. `supported` lists rails a currently-available provider advertises for this bank account; Crossmint decides payer eligibility at order time, so an order can still be refused on a rail listed here. `pending` lists rails still being resolved (non-empty only while `status` is 'pending'); `status` is 'pending' while asynchronous rail resolution is still running. Absent when no payout provider serves the account, or when `status` is 'rejected'.","properties":{"pending":{"description":"Rails still being resolved. Non-empty only while `status` is `pending`.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.6.bankAccount.rails.pending.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.rails.pending","typeLabel":"enum\u003cstring>[]"},"status":{"description":"`pending` while asynchronous rail resolution is still running. `complete` when every provider has answered.","enum":["complete","pending"],"type":"string","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.rails.status","typeLabel":"enum\u003cstring>"},"supported":{"description":"Rails that a currently-available payout provider advertises for this account.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.6.bankAccount.rails.supported.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.6.bankAccount.rails.supported","typeLabel":"enum\u003cstring>[]"}},"required":["pending","status","supported"],"type":"object","uniqueKey":"oneOf.6.bankAccount.rails","typeLabel":"object"},"verificationStatus":{"description":"Result of the provider's check on the destination. Absent until a provider answers.","enum":["pending-review","rejected","verified"],"type":"string","uniqueKey":"oneOf.6.bankAccount.verificationStatus","typeLabel":"enum\u003cstring>"}},"required":["accountSuffix","country","currency","institutionId"],"type":"object","isRequired":true,"uniqueKey":"oneOf.6.bankAccount","typeLabel":"object"},"createdAt":{"description":"ISO 8601 timestamp when this payment method was created.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.6.createdAt","typeLabel":"string\u003cdate-time>"},"paymentMethodId":{"description":"Unique identifier (UUID v4). Crossmint assigns it on creation.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.6.paymentMethodId","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","description":"Deprecated. Use `statusReason`, which carries the same value.","isRequired":true,"uniqueKey":"oneOf.6.reason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.6.reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.6.reason","typeLabel":"string | null"},"status":{"description":"Whether a payout provider serves this destination. 'pending' while the readiness checks run, 'active' when a provider advertises a rail for it, 'rejected' when it cannot receive funds, 'deleted' when it was deleted. This describes the destination only, never the payer's eligibility. 'pending' moves to 'active', 'rejected' or 'deleted'; 'active' moves to 'rejected' or 'deleted'; 'rejected' moves only to 'deleted'. Branch on this field, never on `statusReason`.","enum":["active","deleted","pending","rejected"],"type":"string","isRequired":true,"uniqueKey":"oneOf.6.status","typeLabel":"enum\u003cstring>"},"statusReason":{"oneOf":[{"type":"string","description":"Why the status is 'rejected'. Null on every other status, and on a rejection with no established destination condition. Known values today: destination-not-found, destination-closed, destination-cannot-receive, no-rail-available. New codes can appear at any time, so branch on `status` and treat an unrecognised code as the status alone.","isRequired":true,"uniqueKey":"oneOf.6.statusReason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.6.statusReason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.6.statusReason","typeLabel":"string | null"},"type":{"const":"bank-account-th","description":"Payment method type. Selects which sub-object is present: `card`, `bankAccount`, or `breB`.","type":"string","isRequired":true,"uniqueKey":"oneOf.6.type","typeLabel":"string"},"updatedAt":{"description":"ISO 8601 timestamp when this payment method was last modified.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.6.updatedAt","typeLabel":"string\u003cdate-time>"},"label":{"description":"The client's own name for this payment method, when one was sent.","minLength":1,"type":"string","uniqueKey":"oneOf.6.label","typeLabel":"string"},"lastPayoutAt":{"description":"Read-only. ISO 8601 timestamp of the most recent successful offramp payout funded by this bank account. Absent if none.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","uniqueKey":"oneOf.6.lastPayoutAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.6","typeLabel":"TH bank account · object"},{"type":"object","title":"VN bank account","description":"A saved payment method. Sensitive fields (full PAN, CVC, full account numbers, IBANs, Bre-B keys) are never included.","required":["bankAccount","createdAt","paymentMethodId","reason","status","statusReason","type","updatedAt"],"example":{"createdAt":"2025-01-15T10:30:00.000Z","paymentMethodId":"3f7a9c10-2a8b-4c5d-9e2f-1b3a4c5d6e7f","reason":null,"status":"active","statusReason":null,"type":"card","updatedAt":"2025-01-15T10:30:00.000Z"},"properties":{"bankAccount":{"description":"Bank account details. Present when `type` is a bank type. Full account numbers and IBANs are never included.","properties":{"accountSuffix":{"description":"The last characters of the account number, CLABE or IBAN, at most four.","type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.accountSuffix","typeLabel":"string"},"country":{"const":"VN","description":"Always 'VN'.","type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.country","typeLabel":"string"},"currency":{"const":"vnd","description":"Always 'vnd'; Vietnamese bank accounts only settle in Vietnamese dong.","type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.currency","typeLabel":"string"},"institutionId":{"description":"ID of the bank, for example `vn-acb`. The [Bank Institution IDs](https://docs.crossmint.com/offramp/guides/bank-institution-ids) page lists every ID.","type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.institutionId","typeLabel":"string"},"accountHolder":{"description":"The person or company that owns the bank account. Derived from `billing` when the record predates this field. Its address carries no country: the account's own `country` is the bank's jurisdiction.","properties":{"name":{"description":"Full legal name of the account holder. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder, in the country of the account. Present only on types that collect one.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.7.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.7.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.7.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.7.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.7.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"Phone number of the account holder in E.164 format.","minLength":1,"type":"string","uniqueKey":"oneOf.7.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","uniqueKey":"oneOf.7.bankAccount.accountHolder","typeLabel":"object"},"accountType":{"description":"Type of the account. Present when sent on creation.","enum":["checking","savings"],"type":"string","uniqueKey":"oneOf.7.bankAccount.accountType","typeLabel":"enum\u003cstring>"},"entityType":{"description":"Type of the account holder. Present when sent on creation.","enum":["business","individual"],"type":"string","uniqueKey":"oneOf.7.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"rails":{"description":"Bank rails available for payouts to this account. `supported` lists rails a currently-available provider advertises for this bank account; Crossmint decides payer eligibility at order time, so an order can still be refused on a rail listed here. `pending` lists rails still being resolved (non-empty only while `status` is 'pending'); `status` is 'pending' while asynchronous rail resolution is still running. Absent when no payout provider serves the account, or when `status` is 'rejected'.","properties":{"pending":{"description":"Rails still being resolved. Non-empty only while `status` is `pending`.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.7.bankAccount.rails.pending.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.rails.pending","typeLabel":"enum\u003cstring>[]"},"status":{"description":"`pending` while asynchronous rail resolution is still running. `complete` when every provider has answered.","enum":["complete","pending"],"type":"string","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.rails.status","typeLabel":"enum\u003cstring>"},"supported":{"description":"Rails that a currently-available payout provider advertises for this account.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.7.bankAccount.rails.supported.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.7.bankAccount.rails.supported","typeLabel":"enum\u003cstring>[]"}},"required":["pending","status","supported"],"type":"object","uniqueKey":"oneOf.7.bankAccount.rails","typeLabel":"object"},"verificationStatus":{"description":"Result of the provider's check on the destination. Absent until a provider answers.","enum":["pending-review","rejected","verified"],"type":"string","uniqueKey":"oneOf.7.bankAccount.verificationStatus","typeLabel":"enum\u003cstring>"}},"required":["accountSuffix","country","currency","institutionId"],"type":"object","isRequired":true,"uniqueKey":"oneOf.7.bankAccount","typeLabel":"object"},"createdAt":{"description":"ISO 8601 timestamp when this payment method was created.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.7.createdAt","typeLabel":"string\u003cdate-time>"},"paymentMethodId":{"description":"Unique identifier (UUID v4). Crossmint assigns it on creation.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.7.paymentMethodId","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","description":"Deprecated. Use `statusReason`, which carries the same value.","isRequired":true,"uniqueKey":"oneOf.7.reason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.7.reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.7.reason","typeLabel":"string | null"},"status":{"description":"Whether a payout provider serves this destination. 'pending' while the readiness checks run, 'active' when a provider advertises a rail for it, 'rejected' when it cannot receive funds, 'deleted' when it was deleted. This describes the destination only, never the payer's eligibility. 'pending' moves to 'active', 'rejected' or 'deleted'; 'active' moves to 'rejected' or 'deleted'; 'rejected' moves only to 'deleted'. Branch on this field, never on `statusReason`.","enum":["active","deleted","pending","rejected"],"type":"string","isRequired":true,"uniqueKey":"oneOf.7.status","typeLabel":"enum\u003cstring>"},"statusReason":{"oneOf":[{"type":"string","description":"Why the status is 'rejected'. Null on every other status, and on a rejection with no established destination condition. Known values today: destination-not-found, destination-closed, destination-cannot-receive, no-rail-available. New codes can appear at any time, so branch on `status` and treat an unrecognised code as the status alone.","isRequired":true,"uniqueKey":"oneOf.7.statusReason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.7.statusReason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.7.statusReason","typeLabel":"string | null"},"type":{"const":"bank-account-vn","description":"Payment method type. Selects which sub-object is present: `card`, `bankAccount`, or `breB`.","type":"string","isRequired":true,"uniqueKey":"oneOf.7.type","typeLabel":"string"},"updatedAt":{"description":"ISO 8601 timestamp when this payment method was last modified.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.7.updatedAt","typeLabel":"string\u003cdate-time>"},"label":{"description":"The client's own name for this payment method, when one was sent.","minLength":1,"type":"string","uniqueKey":"oneOf.7.label","typeLabel":"string"},"lastPayoutAt":{"description":"Read-only. ISO 8601 timestamp of the most recent successful offramp payout funded by this bank account. Absent if none.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","uniqueKey":"oneOf.7.lastPayoutAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.7","typeLabel":"VN bank account · object"},{"type":"object","title":"US bank account","description":"A saved payment method. Sensitive fields (full PAN, CVC, full account numbers, IBANs, Bre-B keys) are never included.","required":["bankAccount","createdAt","paymentMethodId","reason","status","statusReason","type","updatedAt"],"example":{"createdAt":"2025-01-15T10:30:00.000Z","paymentMethodId":"3f7a9c10-2a8b-4c5d-9e2f-1b3a4c5d6e7f","reason":null,"status":"active","statusReason":null,"type":"card","updatedAt":"2025-01-15T10:30:00.000Z"},"properties":{"bankAccount":{"description":"Bank account details. Present when `type` is a bank type. Full account numbers and IBANs are never included.","properties":{"accountSuffix":{"description":"The last characters of the account number, CLABE or IBAN, at most four.","type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.accountSuffix","typeLabel":"string"},"accountType":{"description":"Type of the account.","enum":["checking","savings"],"type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.accountType","typeLabel":"enum\u003cstring>"},"bankAddress":{"oneOf":[{"type":"object","description":"Where the bank is, as sent on creation. `null` when none was sent.","required":["city","line1","postalCode"],"properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.bankAddress.oneOf.0.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.bankAddress.oneOf.0.line1","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.bankAddress.oneOf.0.postalCode","typeLabel":"string"},"country":{"description":"ISO 3166-1 alpha-2 country code. Present only on older accounts.","enum":["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","XK","YE","YT","ZA","ZM","ZW"],"type":"string","uniqueKey":"oneOf.8.bankAccount.bankAddress.oneOf.0.country","typeLabel":"enum\u003cstring>"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.8.bankAccount.bankAddress.oneOf.0.line2","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.8.bankAccount.bankAddress.oneOf.0.stateOrRegion","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.8.bankAccount.bankAddress.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.bankAddress.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.8.bankAccount.bankAddress","typeLabel":"object | null"},"country":{"description":"ISO 3166-1 alpha-2 country code of the account.","enum":["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","XK","YE","YT","ZA","ZM","ZW"],"type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.country","typeLabel":"enum\u003cstring>"},"currency":{"const":"usd","description":"Always 'usd'; a US bank account only settles in US dollars.","type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.currency","typeLabel":"string"},"routingNumber":{"description":"ABA routing number.","type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.routingNumber","typeLabel":"string"},"accountHolder":{"description":"The person or company that owns the bank account. Derived from `billing` when the record predates this field. Its address carries no country: the account's own `country` is the bank's jurisdiction.","properties":{"name":{"description":"Full legal name of the account holder. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder, in the country of the account. Present only on types that collect one.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.8.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.8.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.8.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.8.bankAccount.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.8.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"Phone number of the account holder in E.164 format.","minLength":1,"type":"string","uniqueKey":"oneOf.8.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","uniqueKey":"oneOf.8.bankAccount.accountHolder","typeLabel":"object"},"entityType":{"description":"Type of the account holder. Present when sent on creation.","enum":["business","individual"],"type":"string","uniqueKey":"oneOf.8.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"rails":{"description":"Bank rails available for payouts to this account. `supported` lists rails a currently-available provider advertises for this bank account; Crossmint decides payer eligibility at order time, so an order can still be refused on a rail listed here. `pending` lists rails still being resolved (non-empty only while `status` is 'pending'); `status` is 'pending' while asynchronous rail resolution is still running. Absent when no payout provider serves the account, or when `status` is 'rejected'.","properties":{"pending":{"description":"Rails still being resolved. Non-empty only while `status` is `pending`.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.8.bankAccount.rails.pending.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.rails.pending","typeLabel":"enum\u003cstring>[]"},"status":{"description":"`pending` while asynchronous rail resolution is still running. `complete` when every provider has answered.","enum":["complete","pending"],"type":"string","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.rails.status","typeLabel":"enum\u003cstring>"},"supported":{"description":"Rails that a currently-available payout provider advertises for this account.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.8.bankAccount.rails.supported.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.8.bankAccount.rails.supported","typeLabel":"enum\u003cstring>[]"}},"required":["pending","status","supported"],"type":"object","uniqueKey":"oneOf.8.bankAccount.rails","typeLabel":"object"},"verificationStatus":{"description":"Result of the provider's check on the destination. Absent until a provider answers.","enum":["pending-review","rejected","verified"],"type":"string","uniqueKey":"oneOf.8.bankAccount.verificationStatus","typeLabel":"enum\u003cstring>"}},"required":["accountSuffix","accountType","bankAddress","country","currency","routingNumber"],"type":"object","isRequired":true,"uniqueKey":"oneOf.8.bankAccount","typeLabel":"object"},"createdAt":{"description":"ISO 8601 timestamp when this payment method was created.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.8.createdAt","typeLabel":"string\u003cdate-time>"},"paymentMethodId":{"description":"Unique identifier (UUID v4). Crossmint assigns it on creation.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.8.paymentMethodId","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","description":"Deprecated. Use `statusReason`, which carries the same value.","isRequired":true,"uniqueKey":"oneOf.8.reason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.8.reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.8.reason","typeLabel":"string | null"},"status":{"description":"Whether a payout provider serves this destination. 'pending' while the readiness checks run, 'active' when a provider advertises a rail for it, 'rejected' when it cannot receive funds, 'deleted' when it was deleted. This describes the destination only, never the payer's eligibility. 'pending' moves to 'active', 'rejected' or 'deleted'; 'active' moves to 'rejected' or 'deleted'; 'rejected' moves only to 'deleted'. Branch on this field, never on `statusReason`.","enum":["active","deleted","pending","rejected"],"type":"string","isRequired":true,"uniqueKey":"oneOf.8.status","typeLabel":"enum\u003cstring>"},"statusReason":{"oneOf":[{"type":"string","description":"Why the status is 'rejected'. Null on every other status, and on a rejection with no established destination condition. Known values today: destination-not-found, destination-closed, destination-cannot-receive, no-rail-available. New codes can appear at any time, so branch on `status` and treat an unrecognised code as the status alone.","isRequired":true,"uniqueKey":"oneOf.8.statusReason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.8.statusReason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.8.statusReason","typeLabel":"string | null"},"type":{"const":"bank-account-us","description":"Payment method type. Selects which sub-object is present: `card`, `bankAccount`, or `breB`.","type":"string","isRequired":true,"uniqueKey":"oneOf.8.type","typeLabel":"string"},"updatedAt":{"description":"ISO 8601 timestamp when this payment method was last modified.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.8.updatedAt","typeLabel":"string\u003cdate-time>"},"label":{"description":"The client's own name for this payment method, when one was sent.","minLength":1,"type":"string","uniqueKey":"oneOf.8.label","typeLabel":"string"},"lastPayoutAt":{"description":"Read-only. ISO 8601 timestamp of the most recent successful offramp payout funded by this bank account. Absent if none.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","uniqueKey":"oneOf.8.lastPayoutAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.8","typeLabel":"US bank account · object"},{"type":"object","title":"SEPA IBAN","description":"A saved payment method. Sensitive fields (full PAN, CVC, full account numbers, IBANs, Bre-B keys) are never included.","required":["bankAccount","createdAt","paymentMethodId","reason","status","statusReason","type","updatedAt"],"example":{"createdAt":"2025-01-15T10:30:00.000Z","default":true,"display":{"imageUrl":"https://www.crossmint.com/assets/cards/visa.svg","label":"Visa ending in 4242"},"paymentMethodId":"3f7a9c10-2a8b-4c5d-9e2f-1b3a4c5d6e7f","reason":null,"status":"active","statusReason":null,"type":"card","updatedAt":"2025-01-15T10:30:00.000Z"},"properties":{"bankAccount":{"description":"Bank account details. Present when `type` is a bank type. Full account numbers and IBANs are never included.","properties":{"accountSuffix":{"description":"The last characters of the account number, CLABE or IBAN, at most four.","type":"string","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.accountSuffix","typeLabel":"string"},"country":{"description":"Bank country, derived from the IBAN prefix. EPC SEPA scheme members only.","enum":["AD","AL","AT","BE","BG","CH","CY","CZ","DE","DK","EE","ES","FI","FR","GB","GI","GR","HR","HU","IE","IS","IT","LI","LT","LU","LV","MC","MT","NL","NO","PL","PT","RO","SE","SI","SK","SM","VA"],"type":"string","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.country","typeLabel":"enum\u003cstring>"},"currency":{"const":"eur","description":"Always 'eur'; SEPA only transacts in Euro.","type":"string","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.currency","typeLabel":"string"},"accountHolder":{"description":"The person who owns the bank account, as sent on creation.","properties":{"name":{"description":"Full legal name of the account holder. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder, in the country of the account. Present only on types that collect one.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.9.bankAccount.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.9.bankAccount.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.9.bankAccount.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.9.bankAccount.accountHolder.address","typeLabel":"object"},"country":{"description":"Country where the account holder lives or is registered. Absent on older accounts.","enum":["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","XK","YE","YT","ZA","ZM","ZW"],"type":"string","uniqueKey":"oneOf.9.bankAccount.accountHolder.country","typeLabel":"enum\u003cstring>"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.9.bankAccount.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"Phone number of the account holder in E.164 format.","minLength":1,"type":"string","uniqueKey":"oneOf.9.bankAccount.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","uniqueKey":"oneOf.9.bankAccount.accountHolder","typeLabel":"object"},"bic":{"description":"BIC/SWIFT code. Present when sent on creation.","type":"string","uniqueKey":"oneOf.9.bankAccount.bic","typeLabel":"string"},"entityType":{"description":"Type of the account holder. Present when sent on creation.","enum":["business","individual"],"type":"string","uniqueKey":"oneOf.9.bankAccount.entityType","typeLabel":"enum\u003cstring>"},"rails":{"description":"Bank rails available for payouts to this account. `supported` lists rails a currently-available provider advertises for this bank account; Crossmint decides payer eligibility at order time, so an order can still be refused on a rail listed here. `pending` lists rails still being resolved (non-empty only while `status` is 'pending'); `status` is 'pending' while asynchronous rail resolution is still running. Absent when no payout provider serves the account, or when `status` is 'rejected'.","properties":{"pending":{"description":"Rails still being resolved. Non-empty only while `status` is `pending`.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.9.bankAccount.rails.pending.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.rails.pending","typeLabel":"enum\u003cstring>[]"},"status":{"description":"`pending` while asynchronous rail resolution is still running. `complete` when every provider has answered.","enum":["complete","pending"],"type":"string","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.rails.status","typeLabel":"enum\u003cstring>"},"supported":{"description":"Rails that a currently-available payout provider advertises for this account.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.9.bankAccount.rails.supported.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.9.bankAccount.rails.supported","typeLabel":"enum\u003cstring>[]"}},"required":["pending","status","supported"],"type":"object","uniqueKey":"oneOf.9.bankAccount.rails","typeLabel":"object"},"verificationStatus":{"description":"Result of the provider's check on the destination. Absent until a provider answers.","enum":["pending-review","rejected","verified"],"type":"string","uniqueKey":"oneOf.9.bankAccount.verificationStatus","typeLabel":"enum\u003cstring>"}},"required":["accountSuffix","country","currency"],"type":"object","isRequired":true,"uniqueKey":"oneOf.9.bankAccount","typeLabel":"object"},"createdAt":{"description":"ISO 8601 timestamp when this payment method was created.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.9.createdAt","typeLabel":"string\u003cdate-time>"},"paymentMethodId":{"description":"Unique identifier (UUID v4). Crossmint assigns it on creation.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.9.paymentMethodId","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","description":"Deprecated. Use `statusReason`, which carries the same value.","isRequired":true,"uniqueKey":"oneOf.9.reason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.9.reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.9.reason","typeLabel":"string | null"},"status":{"description":"Whether a payout provider serves this destination. 'pending' while the readiness checks run, 'active' when a provider advertises a rail for it, 'rejected' when it cannot receive funds, 'deleted' when it was deleted. This describes the destination only, never the payer's eligibility. 'pending' moves to 'active', 'rejected' or 'deleted'; 'active' moves to 'rejected' or 'deleted'; 'rejected' moves only to 'deleted'. Branch on this field, never on `statusReason`.","enum":["active","deleted","pending","rejected"],"type":"string","isRequired":true,"uniqueKey":"oneOf.9.status","typeLabel":"enum\u003cstring>"},"statusReason":{"oneOf":[{"type":"string","description":"Why the status is 'rejected'. Null on every other status, and on a rejection with no established destination condition. Known values today: destination-not-found, destination-closed, destination-cannot-receive, no-rail-available. New codes can appear at any time, so branch on `status` and treat an unrecognised code as the status alone.","isRequired":true,"uniqueKey":"oneOf.9.statusReason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.9.statusReason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.9.statusReason","typeLabel":"string | null"},"type":{"const":"bank-account-sepa-iban","description":"Payment method type. Selects which sub-object is present: `card`, `bankAccount`, or `breB`.","type":"string","isRequired":true,"uniqueKey":"oneOf.9.type","typeLabel":"string"},"updatedAt":{"description":"ISO 8601 timestamp when this payment method was last modified.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.9.updatedAt","typeLabel":"string\u003cdate-time>"},"default":{"description":"Whether this is the default payment method of the user. Only one per user can be the default. A new default unsets the previous one.","type":"boolean","uniqueKey":"oneOf.9.default","typeLabel":"boolean"},"display":{"description":"Display data for a payment method selector.","properties":{"imageUrl":{"description":"URL of the brand logo.","format":"uri","type":"string","uniqueKey":"oneOf.9.display.imageUrl","typeLabel":"string\u003curi>"},"label":{"description":"Label to show in a payment method selector.","type":"string","uniqueKey":"oneOf.9.display.label","typeLabel":"string"}},"type":"object","uniqueKey":"oneOf.9.display","typeLabel":"object"},"label":{"description":"The client's own name for this payment method, when one was sent.","minLength":1,"type":"string","uniqueKey":"oneOf.9.label","typeLabel":"string"},"lastPayoutAt":{"description":"Read-only. ISO 8601 timestamp of the most recent successful offramp payout funded by this bank account. Absent if none.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","uniqueKey":"oneOf.9.lastPayoutAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.9","typeLabel":"SEPA IBAN · object"},{"type":"object","title":"CO Bre-B key","description":"A saved payment method. Sensitive fields (full PAN, CVC, full account numbers, IBANs, Bre-B keys) are never included.","required":["breB","createdAt","paymentMethodId","reason","status","statusReason","type","updatedAt"],"example":{"createdAt":"2025-01-15T10:30:00.000Z","paymentMethodId":"3f7a9c10-2a8b-4c5d-9e2f-1b3a4c5d6e7f","reason":null,"status":"active","statusReason":null,"type":"card","updatedAt":"2025-01-15T10:30:00.000Z"},"properties":{"breB":{"additionalProperties":false,"description":"Bre-B key details. Present when `type` is `bre-b`. The key itself is never returned.","properties":{"accountSuffix":{"description":"Masked form of the key. An e-mail key is masked in place; every other key shows its last four characters. The key itself is never returned.","type":"string","isRequired":true,"uniqueKey":"oneOf.10.breB.accountSuffix","typeLabel":"string"},"country":{"description":"Always `CO`.","enum":["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","XK","YE","YT","ZA","ZM","ZW"],"type":"string","isRequired":true,"uniqueKey":"oneOf.10.breB.country","typeLabel":"enum\u003cstring>"},"currency":{"const":"cop","description":"Always 'cop'; Bre-B only settles in Colombian pesos.","type":"string","isRequired":true,"uniqueKey":"oneOf.10.breB.currency","typeLabel":"string"},"accountHolder":{"description":"The person or company that owns the bank account. Derived from `billing` when the record predates this field. Its address carries no country: the account's own `country` is the bank's jurisdiction.","properties":{"name":{"description":"Full legal name of the account holder. Sent to the payout provider.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.10.breB.accountHolder.name","typeLabel":"string"},"address":{"description":"Address of the account holder, in the country of the account. Present only on types that collect one.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.10.breB.accountHolder.address.city","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.10.breB.accountHolder.address.line1","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.10.breB.accountHolder.address.line2","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","uniqueKey":"oneOf.10.breB.accountHolder.address.postalCode","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.10.breB.accountHolder.address.stateOrRegion","typeLabel":"string"}},"required":["city","line1"],"type":"object","uniqueKey":"oneOf.10.breB.accountHolder.address","typeLabel":"object"},"email":{"description":"Email address of the account holder.","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$","type":"string","uniqueKey":"oneOf.10.breB.accountHolder.email","typeLabel":"string\u003cemail>"},"phoneNumber":{"description":"Phone number of the account holder in E.164 format.","minLength":1,"type":"string","uniqueKey":"oneOf.10.breB.accountHolder.phoneNumber","typeLabel":"string"}},"required":["name"],"type":"object","uniqueKey":"oneOf.10.breB.accountHolder","typeLabel":"object"},"entityType":{"description":"Type of the account holder. Present when sent on creation.","enum":["business","individual"],"type":"string","uniqueKey":"oneOf.10.breB.entityType","typeLabel":"enum\u003cstring>"},"institutionName":{"description":"Display name of the institution holding the key. Absent until a name source answers.","type":"string","uniqueKey":"oneOf.10.breB.institutionName","typeLabel":"string"},"keyType":{"description":"Derived from the key's format, never asserted by the client. Best effort.","enum":["alphanumeric","commerce","email","identification","phone"],"type":"string","uniqueKey":"oneOf.10.breB.keyType","typeLabel":"enum\u003cstring>"},"rails":{"description":"Rails a currently-available provider advertises for this key.","properties":{"supported":{"description":"Rails that a currently-available payout provider advertises for this account.","items":{"enum":["ach-credit","bi-fast","bre-b","cash-pickup","citad","fednow","fedwire","instapay","napas-247","nip","npss","pesonet","promptpay","rtp-credit","same-day-ach-credit","sct","sct-inst","spei","uaefts"],"type":"string","uniqueKey":"oneOf.10.breB.rails.supported.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"oneOf.10.breB.rails.supported","typeLabel":"enum\u003cstring>[]"}},"required":["supported"],"type":"object","uniqueKey":"oneOf.10.breB.rails","typeLabel":"object"},"verificationStatus":{"description":"Result of the provider's check on the destination. Absent until a provider answers.","enum":["pending-review","rejected","verified"],"type":"string","uniqueKey":"oneOf.10.breB.verificationStatus","typeLabel":"enum\u003cstring>"}},"required":["accountSuffix","country","currency"],"type":"object","isRequired":true,"uniqueKey":"oneOf.10.breB","typeLabel":"object"},"createdAt":{"description":"ISO 8601 timestamp when this payment method was created.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.10.createdAt","typeLabel":"string\u003cdate-time>"},"paymentMethodId":{"description":"Unique identifier (UUID v4). Crossmint assigns it on creation.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.10.paymentMethodId","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","description":"Deprecated. Use `statusReason`, which carries the same value.","isRequired":true,"uniqueKey":"oneOf.10.reason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.10.reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.10.reason","typeLabel":"string | null"},"status":{"description":"Whether a payout provider serves this destination. 'pending' while the readiness checks run, 'active' when a provider advertises a rail for it, 'rejected' when it cannot receive funds, 'deleted' when it was deleted. This describes the destination only, never the payer's eligibility. 'pending' moves to 'active', 'rejected' or 'deleted'; 'active' moves to 'rejected' or 'deleted'; 'rejected' moves only to 'deleted'. Branch on this field, never on `statusReason`.","enum":["active","deleted","pending","rejected"],"type":"string","isRequired":true,"uniqueKey":"oneOf.10.status","typeLabel":"enum\u003cstring>"},"statusReason":{"oneOf":[{"type":"string","description":"Why the status is 'rejected'. Null on every other status, and on a rejection with no established destination condition. Known values today: destination-not-found, destination-closed, destination-cannot-receive, no-rail-available. New codes can appear at any time, so branch on `status` and treat an unrecognised code as the status alone.","isRequired":true,"uniqueKey":"oneOf.10.statusReason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.10.statusReason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.10.statusReason","typeLabel":"string | null"},"type":{"const":"bre-b","description":"Payment method type. A Bre-B key returns its details under `breB`, never `bankAccount`.","type":"string","isRequired":true,"uniqueKey":"oneOf.10.type","typeLabel":"string"},"updatedAt":{"description":"ISO 8601 timestamp when this payment method was last modified.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.10.updatedAt","typeLabel":"string\u003cdate-time>"},"label":{"description":"The client's own name for this payment method, when one was sent.","minLength":1,"type":"string","uniqueKey":"oneOf.10.label","typeLabel":"string"},"lastPayoutAt":{"description":"Read-only. ISO 8601 timestamp of the most recent successful offramp payout funded by this bank account. Absent if none.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","uniqueKey":"oneOf.10.lastPayoutAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.10","typeLabel":"CO Bre-B key · object"},{"type":"object","title":"Card","description":"A saved payment method. Sensitive fields (full PAN, CVC, full account numbers, IBANs, Bre-B keys) are never included.","required":["card","createdAt","displayName","paymentMethodId","reason","status","statusReason","type","updatedAt"],"example":{"card":{"billing":{"name":"John Doe"},"brand":"visa","country":"US","expiration":{"month":"12","year":"2028"},"fundingType":"credit","last4":"4242"},"createdAt":"2025-01-15T10:30:00.000Z","default":true,"display":{"imageUrl":"https://www.crossmint.com/assets/cards/visa.svg","label":"Visa ending in 4242"},"displayName":"Visa ••4242","paymentMethodId":"3f7a9c10-2a8b-4c5d-9e2f-1b3a4c5d6e7f","reason":null,"status":"active","statusReason":null,"type":"card","updatedAt":"2025-01-15T10:30:00.000Z"},"properties":{"card":{"description":"Card details. Present when `type` is `card`.","properties":{"billing":{"description":"Billing details of the cardholder, as sent on creation.","properties":{"name":{"description":"Full name of the cardholder or account holder.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.billing.name","typeLabel":"string"},"address":{"description":"Billing address. When you send it, all fields except `line2` are required.","properties":{"city":{"description":"City (max 50 characters).","maxLength":50,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.billing.address.city","typeLabel":"string"},"country":{"description":"ISO 3166-1 alpha-2 country code.","maxLength":2,"minLength":2,"type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.billing.address.country","typeLabel":"string"},"line1":{"description":"Primary address line (max 200 characters).","maxLength":200,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.billing.address.line1","typeLabel":"string"},"postalCode":{"description":"Postal or ZIP code (max 20 characters).","maxLength":20,"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.billing.address.postalCode","typeLabel":"string"},"line2":{"description":"Secondary address line, such as an apartment, suite, or unit (max 60 characters).","maxLength":60,"type":"string","uniqueKey":"oneOf.11.card.billing.address.line2","typeLabel":"string"},"stateOrRegion":{"description":"State, province, or region (max 50 characters).","maxLength":50,"type":"string","uniqueKey":"oneOf.11.card.billing.address.stateOrRegion","typeLabel":"string"}},"required":["city","country","line1","postalCode"],"type":"object","uniqueKey":"oneOf.11.card.billing.address","typeLabel":"object"},"phone":{"description":"Phone number in E.164 format, for example `+12125551234`.","minLength":1,"type":"string","uniqueKey":"oneOf.11.card.billing.phone","typeLabel":"string"}},"required":["name"],"type":"object","isRequired":true,"uniqueKey":"oneOf.11.card.billing","typeLabel":"object"},"brand":{"description":"Card network brand, detected from the card number.","enum":["amex","diners-club","discover","jcb","mastercard","unionpay","visa"],"type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.brand","typeLabel":"enum\u003cstring>"},"expiration":{"description":"Card expiration date.","properties":{"month":{"description":"2-digit expiration month, zero-padded (`01`-`12`).","type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.expiration.month","typeLabel":"string"},"year":{"description":"4-digit expiration year.","type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.expiration.year","typeLabel":"string"}},"required":["month","year"],"type":"object","isRequired":true,"uniqueKey":"oneOf.11.card.expiration","typeLabel":"object"},"last4":{"description":"Last 4 digits of the card PAN.","type":"string","isRequired":true,"uniqueKey":"oneOf.11.card.last4","typeLabel":"string"},"bin":{"description":"Bank Identification Number (first 6-8 digits). Present when the card network provides it.","type":"string","uniqueKey":"oneOf.11.card.bin","typeLabel":"string"},"country":{"description":"ISO 3166-1 alpha-2 code of the country that issued the card. Present when the card network provides it.","type":"string","uniqueKey":"oneOf.11.card.country","typeLabel":"string"},"fundingType":{"description":"Card funding type, detected from the BIN. Present when the issuer provides it.","enum":["credit","debit","prepaid","unknown"],"type":"string","uniqueKey":"oneOf.11.card.fundingType","typeLabel":"enum\u003cstring>"}},"required":["billing","brand","expiration","last4"],"type":"object","isRequired":true,"uniqueKey":"oneOf.11.card","typeLabel":"object"},"createdAt":{"description":"ISO 8601 timestamp when this payment method was created.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.11.createdAt","typeLabel":"string\u003cdate-time>"},"displayName":{"description":"Human-readable label derived from the account details, e.g. \"Visa ••1111\" or \"Deutsche Bank ••6789\".","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.11.displayName","typeLabel":"string"},"paymentMethodId":{"description":"Unique identifier (UUID v4). Crossmint assigns it on creation.","minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.11.paymentMethodId","typeLabel":"string"},"reason":{"description":"Deprecated. Use `statusReason`, which carries the same value.","type":"null","isRequired":true,"uniqueKey":"oneOf.11.reason","typeLabel":"null"},"status":{"description":"Whether the card is saved. 'active' while it is saved, 'deleted' once it is deleted. A deleted card never returns to 'active'. Branch on this field, never on `statusReason`.","enum":["active","deleted"],"type":"string","isRequired":true,"uniqueKey":"oneOf.11.status","typeLabel":"enum\u003cstring>"},"statusReason":{"description":"Always `null` on a card; cards carry no destination condition.","type":"null","isRequired":true,"uniqueKey":"oneOf.11.statusReason","typeLabel":"null"},"type":{"const":"card","description":"Payment method type. Selects which sub-object is present: `card`, `bankAccount`, or `breB`.","type":"string","isRequired":true,"uniqueKey":"oneOf.11.type","typeLabel":"string"},"updatedAt":{"description":"ISO 8601 timestamp when this payment method was last modified.","example":"2024-01-15T10:30:00.000Z","format":"date-time","type":"string","isRequired":true,"uniqueKey":"oneOf.11.updatedAt","typeLabel":"string\u003cdate-time>"},"default":{"description":"Whether this is the default payment method of the user. Only one per user can be the default. A new default unsets the previous one.","type":"boolean","uniqueKey":"oneOf.11.default","typeLabel":"boolean"},"display":{"description":"Display data for a payment method selector.","properties":{"imageUrl":{"description":"URL of the brand logo.","format":"uri","type":"string","uniqueKey":"oneOf.11.display.imageUrl","typeLabel":"string\u003curi>"},"label":{"description":"Label to show in a payment method selector.","type":"string","uniqueKey":"oneOf.11.display.label","typeLabel":"string"}},"type":"object","uniqueKey":"oneOf.11.display","typeLabel":"object"}},"uniqueKey":"oneOf.11","typeLabel":"Card · object"}],"uniqueKey":"","typeLabel":"CO bank account · object | MX CLABE · object | AE bank account · object | ID bank account · object | NG bank account · object | PH bank account · object | TH bank account · object | VN bank account · object | US bank account · object | SEPA IBAN · object | CO Bre-B key · object | Card · object"},"exampleType":"examples"}},"description":"The saved payment method, including the derived `displayName` and the type-specific sub-object (`card`, `bankAccount`, or `breB`).","exampleType":"examples"},"a4fb224f-9766-481d-9984-9980d60e1291":{"content":{"application/json":{"examples":{"card_limit_reached":{"title":"card_limit_reached","value":{"code":"payments:payment-method.card-limit-reached","error":true,"message":"Card limit reached. This project reached the limit of 50 saved cards without the cardPaymentMethod addon. Delete a saved card, or complete onboarding to enable the cardPaymentMethod addon: contact support with your project ID 00000000-0000-0000-0000-000000000000 at crossmint.com/support.","parameters":{"addon":"cardPaymentMethod","limit":"50","projectId":"00000000-0000-0000-0000-000000000000"}}},"duplicate":{"title":"duplicate","value":{"error":true,"message":"Payment method already exists for this user with the same details"}},"missing_locator":{"title":"missing_locator","value":{"code":"PAYMENT_METHOD_INVALID_USER_LOCATOR","error":true,"message":"userLocator is required when not using JWT authentication"}},"proxy_fields_missing":{"title":"proxy_fields_missing","value":{"code":"PAYMENT_METHOD_PROXY_FIELDS_MISSING","error":true,"message":"Card creation via API key requires proxy-supplied fingerprint, brand, last4, expMonth, expYear. Submit through vault.crossmint.com."}},"proxy_token_mismatch":{"title":"proxy_token_mismatch","value":{"code":"PAYMENT_METHOD_PROXY_TOKEN_MISMATCH","error":true,"message":"Bank account fingerprint does not match Basis Theory token"}},"sensitive_data":{"title":"sensitive_data","value":{"code":"PAYMENT_METHOD_SENSITIVE_DATA_NOT_ALLOWED","error":true,"message":"Payment method requests must be submitted through vault.crossmint.com. Sensitive data cannot be sent directly to api.crossmint.com."}},"sepa_business":{"title":"sepa_business","value":{"error":true,"message":"SEPA business accounts are not supported"}}},"schema":{"properties":{"error":{"example":true,"type":"boolean","isRequired":true,"uniqueKey":"error","typeLabel":"boolean"},"message":{"description":"Human-readable error message describing what went wrong","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"description":"Machine-readable error code for programmatic handling","type":"string","uniqueKey":"code","typeLabel":"string"},"parameters":{"additionalProperties":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"parameters.additionalProperties.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"parameters.additionalProperties.oneOf.0","typeLabel":"string[]"},{"type":"string","uniqueKey":"parameters.additionalProperties.oneOf.1","typeLabel":"string"}],"uniqueKey":"parameters.additionalProperties","typeLabel":"string[] | string"},"description":"Values that explain a coded error, such as the limit that was exceeded, the amount that remains, or the list of supported currencies.","type":"object","uniqueKey":"parameters","typeLabel":"object"}},"required":["error","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"exampleType":"examples"}},"description":"Request validation failed, or the payment method is a duplicate.","exampleType":"examples"},"ca277fb0-e2ad-4cc8-88b3-55de5356a925":{"content":{"application/json":{"schema":{"properties":{"error":{"example":true,"type":"boolean","isRequired":true,"uniqueKey":"error","typeLabel":"boolean"},"message":{"description":"Human-readable error message describing what went wrong","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"description":"Machine-readable error code for programmatic handling","type":"string","uniqueKey":"code","typeLabel":"string"},"parameters":{"additionalProperties":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"parameters.additionalProperties.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"parameters.additionalProperties.oneOf.0","typeLabel":"string[]"},{"type":"string","uniqueKey":"parameters.additionalProperties.oneOf.1","typeLabel":"string"}],"uniqueKey":"parameters.additionalProperties","typeLabel":"string[] | string"},"description":"Values that explain a coded error, such as the limit that was exceeded, the amount that remains, or the list of supported currencies.","type":"object","uniqueKey":"parameters","typeLabel":"object"}},"required":["error","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":true,"message":"\u003cstring>","code":"\u003cstring>","parameters":{}}}},"exampleType":"generated"}},"description":"Missing or invalid API key.","exampleType":"generated"},"0b7ff374-4641-46bb-89d9-2e9459b09534":{"content":{"application/json":{"examples":{"auth_source":{"title":"auth_source","value":{"error":true,"message":"Payment methods are not allowed with this authentication source"}},"card_auth":{"title":"card_auth","value":{"error":true,"message":"Card payment methods require user authentication (JWT) or vault.crossmint.com proxy submission."}}},"schema":{"properties":{"error":{"example":true,"type":"boolean","isRequired":true,"uniqueKey":"error","typeLabel":"boolean"},"message":{"description":"Human-readable error message describing what went wrong","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"description":"Machine-readable error code for programmatic handling","type":"string","uniqueKey":"code","typeLabel":"string"},"parameters":{"additionalProperties":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"parameters.additionalProperties.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"parameters.additionalProperties.oneOf.0","typeLabel":"string[]"},{"type":"string","uniqueKey":"parameters.additionalProperties.oneOf.1","typeLabel":"string"}],"uniqueKey":"parameters.additionalProperties","typeLabel":"string[] | string"},"description":"Values that explain a coded error, such as the limit that was exceeded, the amount that remains, or the list of supported currencies.","type":"object","uniqueKey":"parameters","typeLabel":"object"}},"required":["error","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"exampleType":"examples"}},"description":"Authentication source not allowed, or the required add-on is not enabled.","exampleType":"examples"},"0a69fd8e-5569-4671-afc6-1f35dfb8e76f":{"content":{"application/json":{"schema":{"properties":{"error":{"example":true,"type":"boolean","isRequired":true,"uniqueKey":"error","typeLabel":"boolean"},"message":{"description":"Human-readable error message describing what went wrong","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"description":"Machine-readable error code for programmatic handling","type":"string","uniqueKey":"code","typeLabel":"string"},"parameters":{"additionalProperties":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"parameters.additionalProperties.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"parameters.additionalProperties.oneOf.0","typeLabel":"string[]"},{"type":"string","uniqueKey":"parameters.additionalProperties.oneOf.1","typeLabel":"string"}],"uniqueKey":"parameters.additionalProperties","typeLabel":"string[] | string"},"description":"Values that explain a coded error, such as the limit that was exceeded, the amount that remains, or the list of supported currencies.","type":"object","uniqueKey":"parameters","typeLabel":"object"}},"required":["error","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":true,"message":"\u003cstring>","code":"\u003cstring>","parameters":{}}}},"exampleType":"generated"}},"description":"No user in this project matches `userLocator`. Create the user first, then reference the same locator.","exampleType":"generated"},"1a2e0da2-750c-40b2-9218-0ec0dc0f31ce":{"content":{"application/json":{"schema":{"properties":{"error":{"example":true,"type":"boolean","isRequired":true,"uniqueKey":"error","typeLabel":"boolean"},"message":{"description":"Human-readable error message describing what went wrong","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"description":"Machine-readable error code for programmatic handling","type":"string","uniqueKey":"code","typeLabel":"string"},"parameters":{"additionalProperties":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"parameters.additionalProperties.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"parameters.additionalProperties.oneOf.0","typeLabel":"string[]"},{"type":"string","uniqueKey":"parameters.additionalProperties.oneOf.1","typeLabel":"string"}],"uniqueKey":"parameters.additionalProperties","typeLabel":"string[] | string"},"description":"Values that explain a coded error, such as the limit that was exceeded, the amount that remains, or the list of supported currencies.","type":"object","uniqueKey":"parameters","typeLabel":"object"}},"required":["error","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":true,"message":"\u003cstring>","code":"\u003cstring>","parameters":{}}}},"exampleType":"generated"}},"description":"Request body failed schema validation.","exampleType":"generated"},"76de112a-566d-401e-b227-92c85653d786":{"content":{"application/json":{"schema":{"properties":{"error":{"example":true,"type":"boolean","isRequired":true,"uniqueKey":"error","typeLabel":"boolean"},"message":{"description":"Human-readable error message describing what went wrong","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"description":"Machine-readable error code for programmatic handling","type":"string","uniqueKey":"code","typeLabel":"string"},"parameters":{"additionalProperties":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"parameters.additionalProperties.oneOf.0.items.[INDEX]","typeLabel":"string"},"uniqueKey":"parameters.additionalProperties.oneOf.0","typeLabel":"string[]"},{"type":"string","uniqueKey":"parameters.additionalProperties.oneOf.1","typeLabel":"string"}],"uniqueKey":"parameters.additionalProperties","typeLabel":"string[] | string"},"description":"Values that explain a coded error, such as the limit that was exceeded, the amount that remains, or the list of supported currencies.","type":"object","uniqueKey":"parameters","typeLabel":"object"}},"required":["error","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":true,"message":"\u003cstring>","code":"\u003cstring>","parameters":{}}}},"exampleType":"generated"}},"description":"Rate limit exceeded.","exampleType":"generated"}},"security":{"0d1705ce-d869-4c5f-bd09-9555242f5345":{"apiKey":{"description":"API key required for authentication","in":"header","name":"X-API-KEY","type":"apiKey","scopes":[],"schemeName":"apiKey"},"userJwt":{"bearerFormat":"JWT","description":"The end user's JWT, sent as `Authorization: Bearer \u003cJWT>` together with a client-side API key. Validated against the project's external JWT configuration.","scheme":"bearer","type":"http","scopes":[],"schemeName":"userJwt"}},"f108f821-dac5-4fa1-8971-fbb220b997e9":{"apiKey":{"description":"API key required for authentication","in":"header","name":"X-API-KEY","type":"apiKey","scopes":[],"schemeName":"apiKey"}}},"servers":{"db5115fc-e5a3-453a-b1c8-146f7a129a86":{"description":"Vault staging","url":"https://vault.staging.crossmint.com/api"},"870bfc3c-3430-4edc-8268-96b1c6ade29a":{"description":"Vault production","url":"https://vault.crossmint.com/api"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"description":"API key required for authentication","in":"header","name":"X-API-KEY","type":"apiKey","scopes":[],"schemeName":"apiKey"},"schema":{"title":"X-API-KEY","type":"string","description":"API key required for authentication","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"apiKey","name":"X-API-KEY"},{"scheme":{"bearerFormat":"JWT","description":"The end user's JWT, sent as `Authorization: Bearer \u003cJWT>` together with a client-side API key. Validated against the project's external JWT configuration.","scheme":"bearer","type":"http","scopes":[],"schemeName":"userJwt"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"The end user's JWT, sent as `Authorization: Bearer \u003cJWT>` together with a client-side API key. Validated against the project's external JWT configuration.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"userJwt","name":"Authorization"}],"title":"apiKey \u0026 userJwt"},{"schemes":[{"scheme":{"description":"API key required for authentication","in":"header","name":"X-API-KEY","type":"apiKey","scopes":[],"schemeName":"apiKey"},"schema":{"title":"X-API-KEY","type":"string","description":"API key required for authentication","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"apiKey","name":"X-API-KEY"}],"title":"apiKey"}]},"originalFileLocation":"api-reference/_open-api/PaymentMethods.json"},"subdomain":"crossmint","siteName":"Crossmint Docs","title":"Create Payment Method - Crossmint Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-23T21:08:41.327Z","originalFileLocation":"offramp/api-reference/payment-methods/create-payment-method.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=\"system\"}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=\"Save a bank account payout method so offramp orders can settle fiat to it.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Crossmint Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/crossmint/-1hhMU0vchFPUD3H/_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/crossmint/-1hhMU0vchFPUD3H/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/crossmint/-1hhMU0vchFPUD3H/_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/crossmint/-1hhMU0vchFPUD3H/_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/crossmint/-1hhMU0vchFPUD3H/_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/crossmint/-1hhMU0vchFPUD3H/_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/crossmint/-1hhMU0vchFPUD3H/_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/crossmint/-1hhMU0vchFPUD3H/_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/crossmint/-1hhMU0vchFPUD3H/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create Payment Method - Crossmint Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Save a bank account payout method so offramp orders can settle fiat to it.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Crossmint Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.crossmint.com/offramp/api-reference/payment-methods/create-payment-method\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://crossmint.mintlify.app/_mintlify/api/og/v2?division=Payment+Methods\u0026amp;title=Create+Payment+Method\u0026amp;description=Save+a+bank+account+payout+method+so+offramp+orders+can+settle+fiat+to+it.\u0026amp;theme=754218d9ca07cbe75c9ed33a\u0026amp;signature=75a07bf3cf4b7a000549479a8aba0557d956c4e5973d45bcb4489c3acbbf6a5e\">\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 Payment Method - Crossmint Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Save a bank account payout method so offramp orders can settle fiat to it.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://crossmint.mintlify.app/_mintlify/api/og/v2?division=Payment+Methods\u0026amp;title=Create+Payment+Method\u0026amp;description=Save+a+bank+account+payout+method+so+offramp+orders+can+settle+fiat+to+it.\u0026amp;theme=754218d9ca07cbe75c9ed33a\u0026amp;signature=75a07bf3cf4b7a000549479a8aba0557d956c4e5973d45bcb4489c3acbbf6a5e\">\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/crossmint/-1hhMU0vchFPUD3H/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Crossmint Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#36b37e\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.crossmint.com/offramp/api-reference/payment-methods/create-payment-method\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/offramp/api-reference/payment-methods/create-payment-method.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.crossmint.com/#organization\",\"name\":\"Crossmint Docs\",\"url\":\"https://docs.crossmint.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/crossmint/a8gPOTKEuVFcSfC3/logo/crossmint-light.png?fit=max\u0026auto=format\u0026n=a8gPOTKEuVFcSfC3\u0026q=85\u0026s=8c2671e4c8f7da6956e1508bd68c2928\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.crossmint.com#website\",\"name\":\"Crossmint Docs\",\"url\":\"https://docs.crossmint.com\",\"publisher\":{\"@id\":\"https://docs.crossmint.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.crossmint.com/offramp/api-reference/payment-methods/create-payment-method#webpage\",\"url\":\"https://docs.crossmint.com/offramp/api-reference/payment-methods/create-payment-method\",\"name\":\"Create Payment Method\",\"description\":\"Save a bank account payout method so offramp orders can settle fiat to it.\",\"dateModified\":\"2026-10-23T21:08:41.327Z\",\"isPartOf\":{\"@id\":\"https://docs.crossmint.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.crossmint.com/offramp/api-reference/payment-methods/create-payment-method#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.crossmint.com/offramp/api-reference/payment-methods/create-payment-method#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"API Reference\",\"item\":\"https://docs.crossmint.com/offramp/api-reference/create-order\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"REST\",\"item\":\"https://docs.crossmint.com/offramp/api-reference/create-order\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Payment Methods\",\"item\":\"https://docs.crossmint.com/api-reference/headless/payment-methods/payment-method-object\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Create Payment Method\",\"item\":\"https://docs.crossmint.com/offramp/api-reference/payment-methods/create-payment-method\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.crossmint.com/offramp/api-reference/payment-methods/create-payment-method#apireference\",\"headline\":\"Create Payment Method\",\"name\":\"Create Payment Method\",\"description\":\"Save a bank account payout method so offramp orders can settle fiat to it.\",\"url\":\"https://docs.crossmint.com/offramp/api-reference/payment-methods/create-payment-method\",\"mainEntityOfPage\":{\"@id\":\"https://docs.crossmint.com/offramp/api-reference/payment-methods/create-payment-method#webpage\"},\"dateModified\":\"2026-10-23T21:08:41.327Z\",\"publisher\":{\"@id\":\"https://docs.crossmint.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.crossmint.com#website\"}}]}\u003c/script>","siteName":"Crossmint Docs","nav":{"global":null,"tabs":[{"tab":"Get Started","pages":[{"title":"Get Started","href":"/introduction/platform-overview"}]},{"tab":"Wallets","dropdowns":[{"dropdown":"Wallets V1","icon":"tag","groups":[{"group":"Introduction","pages":[{"title":"Overview","href":"/wallets/overview"}]},{"group":"Quickstarts ⚡","pages":[{"title":"React","href":"/wallets/quickstarts/react"},{"title":"Node.js","href":"/wallets/quickstarts/nodejs"},{"title":"REST API","href":"/wallets/quickstarts/restapi"},{"title":"React Native","href":"/wallets/quickstarts/react-native"},{"title":"Flutter","href":"/wallets/quickstarts/flutter"},{"title":"Swift","href":"/wallets/quickstarts/swift"},{"title":"Kotlin","href":"/wallets/quickstarts/kotlin"}]},{"group":"Concepts","pages":[{"title":"Embedded Wallets","href":"/wallets/concepts/embedded-wallets"},{"title":"Treasury Wallets","href":"/wallets/concepts/treasury"},{"title":"Architecture","href":"/wallets/architecture"},{"title":"Signers","href":"/wallets/concepts/signers"},{"title":"Signer Types","href":"/wallets/concepts/signer-types"},{"title":"Recovery Methods","href":"/wallets/concepts/recovery"},{"title":"Quorum (multi-approval) Signer","href":"/wallets/concepts/quorum-signers"},{"title":"Custody Models","href":"/wallets/concepts/custody-models"},{"title":"Wallet Locators","href":"/wallets/concepts/wallet-locators"},{"title":"Glossary","href":"/introduction/glossary"}]},{"group":"Guides","pages":[{"group":"Wallet Actions","pages":[{"title":"Create Wallet","href":"/wallets/guides/create-wallet"},{"title":"Fund a Staging Wallet","href":"/wallets/guides/fund-staging-wallet"},{"title":"Check Balances","href":"/wallets/guides/check-balances"},{"title":"Transfer Tokens","href":"/wallets/guides/transfer-tokens"},{"group":"Custom Transactions","pages":[{"title":"Custom EVM Transactions","sidebarTitle":"EVM","href":"/wallets/guides/send-transaction-evm"},{"title":"Custom Solana Transactions","sidebarTitle":"Solana","href":"/wallets/guides/send-transaction-solana"},{"title":"Custom Stellar Transactions","sidebarTitle":"Stellar","href":"/wallets/guides/send-transaction-stellar"}]},{"title":"Sign Messages","sidebarTitle":"Sign Message","href":"/wallets/guides/sign-message"},{"title":"List Wallet Transfers","href":"/wallets/guides/list-transfers"}]},{"group":"Signers","pages":[{"group":"Setup","pages":[{"title":"Device Signer","href":"/wallets/guides/signers/device-signer"},{"title":"Passkey Signer","href":"/wallets/guides/signers/passkey"},{"title":"External Wallet Signer","href":"/wallets/guides/signers/external-wallet"},{"title":"Server Signer","href":"/wallets/guides/signers/server-signer"},{"title":"Cloud KMS Signers","href":"/wallets/guides/signers/cloud-kms"},{"title":"Use a Quorum Signer","href":"/wallets/guides/signers/quorum-signer"},{"title":"Server-Side Wallet with Device Signer","href":"/wallets/guides/signers/device-signer-server-wallet"}]},{"group":"Management","pages":[{"title":"Add Signers to a Wallet","href":"/wallets/guides/signers/add-signers"},{"title":"List Wallet Signers","href":"/wallets/guides/signers/list-signers"},{"title":"Restrict a Signer with Scopes","href":"/wallets/guides/signers/scopes"},{"title":"Remove a Signer from a Wallet","href":"/wallets/guides/signers/remove-signer"}]}]},{"group":"Recovery Methods","pages":[{"title":"Configure Wallet Recovery","href":"/wallets/guides/recovery/configure-recovery"},{"title":"Send WhatsApp OTPs From Your Business Number","sidebarTitle":"WhatsApp Sender","href":"/wallets/guides/recovery/whatsapp-sender"},{"title":"Manage Recovery Methods","href":"/wallets/guides/recovery/manage-recovery-methods"},{"title":"Recover a Wallet","href":"/wallets/guides/recovery/wallet-recovery"}]},{"group":"Wallet Extensions","pages":[{"title":"Wallet Extensions","sidebarTitle":"Overview","href":"/wallets/guides/wallet-extensions/overview"},{"group":"Swapping \u0026 Bridging","pages":[{"title":"Swapping \u0026 Bridging Overview","sidebarTitle":"Overview","href":"/wallets/guides/wallet-extensions/swapping-and-bridging"},{"title":"Jupiter","href":"/wallets/guides/wallet-extensions/swap-jupiter"},{"title":"LI.FI","href":"/wallets/guides/wallet-extensions/bridge-lifi"},{"title":"Relay","href":"/wallets/guides/wallet-extensions/relay"}]},{"group":"Yield Generation","pages":[{"title":"Yield.xyz","href":"/wallets/guides/wallet-extensions/yield-xyz"},{"title":"Morpho","href":"/wallets/guides/wallet-extensions/morpho"}]},{"group":"Card Issuance","pages":[{"title":"Rain Card Issuance","sidebarTitle":"Rain","href":"/wallets/guides/wallet-extensions/credit-cards"},{"title":"Reap Card Issuance","sidebarTitle":"Reap","href":"/wallets/guides/wallet-extensions/reap"}]},{"title":"Embedded Credit","href":"/wallets/guides/wallet-extensions/tala"},{"group":"Tokenized Stocks","pages":[{"title":"Ondo Global Markets","href":"/wallets/guides/wallet-extensions/swap-ondo"}]}]},{"group":"Advanced","pages":[{"title":"Use Your Own Auth Provider","href":"/wallets/guides/bring-your-own-auth"},{"title":"Cover Transaction Fees for Your Users","href":"/wallets/guides/gas-sponsorship"},{"title":"Wallet Webhooks","href":"/wallets/guides/webhooks"},{"title":"Set Up a Treasury Wallet","href":"/wallets/guides/treasury-wallets"},{"title":"Export Private Key","href":"/wallets/guides/export-private-key"},{"title":"Troubleshooting","href":"/wallets/guides/troubleshooting"},{"title":"Migrate to V1","href":"/wallets/guides/migrate-to-v1"},{"title":"Migrate to React Native SDK 2.0","href":"/wallets/guides/migrate-react-native-sdk-2"}]}]},{"group":"API Reference","pages":[{"group":"REST","icon":"brackets-curly","pages":[{"title":"Introduction","href":"/api-reference/introduction"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets","title":"Create Wallet","href":"/api-reference/wallets/create-wallet"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}","title":"Get Wallet By Locator","href":"/api-reference/wallets/get-wallet-by-locator"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}/balances","title":"Get Wallet Balance","href":"/api-reference/wallets/get-wallet-balance"},{"openapi":"api-reference/_open-api/Wallets.json POST /v1-alpha2/wallets/{walletLocator}/balances","title":"Fund Wallet","href":"/api-reference/wallets/fund-wallet"},{"openapi":"api-reference/_open-api/Wallets.json GET /2022-06-09/wallets/{locator}/nfts","title":"Get NFTs from Wallet","href":"/api-reference/wallets/get-nfts-from-wallet"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets/{walletLocator}/transactions","title":"Create Transaction","href":"/api-reference/wallets/create-transaction"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}/transactions/{transactionId}","title":"Get Transaction","href":"/api-reference/wallets/get-transaction"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}/transactions","title":"Get Wallet Transactions","href":"/api-reference/wallets/get-transactions"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets/{walletLocator}/transactions/{transactionId}/approvals","title":"Approve Transaction","href":"/api-reference/wallets/approve-transaction"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets/{walletLocator}/signatures","title":"Create Signature","href":"/api-reference/wallets/create-signature"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}/signatures","title":"Get All Signatures","href":"/api-reference/wallets/get-signatures"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}/signatures/{signatureId}","title":"Get Signature","href":"/api-reference/wallets/get-signature"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets/{walletLocator}/signatures/{signatureId}/approvals","title":"Approve Signature","href":"/api-reference/wallets/approve-signature"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets/{walletLocator}/signers","title":"Create Delegated Signer","href":"/api-reference/wallets/register-delegated-key"},{"openapi":"api-reference/_open-api/Wallets.json DELETE /2025-06-09/wallets/{walletLocator}/signers/{signer}","title":"Remove Delegated Signer","href":"/api-reference/wallets/remove-delegated-key"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}/signers/{signer}","title":"Get Delegated Signer","href":"/api-reference/wallets/get-signer"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets/{walletLocator}/recovery-methods","title":"Add Recovery Method","href":"/api-reference/wallets/add-recovery-method"},{"openapi":"api-reference/_open-api/Wallets.json DELETE /2025-06-09/wallets/{walletLocator}/recovery-methods/{signer}","title":"Remove Recovery Method","href":"/api-reference/wallets/remove-recovery-method"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets/{walletLocator}/tokens/{tokenLocator}/transfers","title":"Transfer Token","href":"/api-reference/wallets/transfer-token"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}/tokens/{tokenLocator}/transfers/{transactionId}","title":"Get Transfer Transaction","href":"/api-reference/wallets/get-transfer-token"},{"title":"List Wallet Transfers","openapi":"api-reference/_open-api/Wallets.json GET /unstable/wallets/{walletLocator}/transfers","href":"/api-reference/wallets/list-transfers"}]},{"group":"Typescript SDK","icon":"/images/icons/ts-logo-128.png","pages":[{"title":"Getting Started","href":"/sdk-reference/wallets/typescript/overview"},{"title":"Reference","href":"/sdk-reference/wallets/typescript/reference"},{"group":"Classes","pages":[{"title":"AuthRejectedError","href":"/sdk-reference/wallets/typescript/classes/AuthRejectedError"},{"title":"CrossmintWallets","href":"/sdk-reference/wallets/typescript/classes/CrossmintWallets"},{"title":"DeviceSignerKeyStorage","href":"/sdk-reference/wallets/typescript/classes/DeviceSignerKeyStorage"},{"title":"DuplicateRecoverySignerError","href":"/sdk-reference/wallets/typescript/classes/DuplicateRecoverySignerError"},{"title":"EVMWallet","href":"/sdk-reference/wallets/typescript/classes/EVMWallet"},{"title":"IframeDeviceSignerKeyStorage","href":"/sdk-reference/wallets/typescript/classes/IframeDeviceSignerKeyStorage"},{"title":"InvalidRecoveryConfigError","href":"/sdk-reference/wallets/typescript/classes/InvalidRecoveryConfigError"},{"title":"InvalidTransferAmountError","href":"/sdk-reference/wallets/typescript/classes/InvalidTransferAmountError"},{"title":"JWTDecryptionError","href":"/sdk-reference/wallets/typescript/classes/JWTDecryptionError"},{"title":"JWTExpiredError","href":"/sdk-reference/wallets/typescript/classes/JWTExpiredError"},{"title":"JWTIdentifierError","href":"/sdk-reference/wallets/typescript/classes/JWTIdentifierError"},{"title":"JWTInvalidError","href":"/sdk-reference/wallets/typescript/classes/JWTInvalidError"},{"title":"KeyExportError","href":"/sdk-reference/wallets/typescript/classes/KeyExportError"},{"title":"NotAuthorizedError","href":"/sdk-reference/wallets/typescript/classes/NotAuthorizedError"},{"title":"NotSupportedOnApiVersionError","href":"/sdk-reference/wallets/typescript/classes/NotSupportedOnApiVersionError"},{"title":"OnboardingSessionExpiredError","href":"/sdk-reference/wallets/typescript/classes/OnboardingSessionExpiredError"},{"title":"OtpValidationError","href":"/sdk-reference/wallets/typescript/classes/OtpValidationError"},{"title":"QuorumSignerNotSupportedError","href":"/sdk-reference/wallets/typescript/classes/QuorumSignerNotSupportedError"},{"title":"RecoveryAdminSignerConflictError","href":"/sdk-reference/wallets/typescript/classes/RecoveryAdminSignerConflictError"},{"title":"RecoveryMethodRequiredError","href":"/sdk-reference/wallets/typescript/classes/RecoveryMethodRequiredError"},{"title":"RecoveryNotSupportedOnChainError","href":"/sdk-reference/wallets/typescript/classes/RecoveryNotSupportedOnChainError"},{"title":"RecoverySignerConflictError","href":"/sdk-reference/wallets/typescript/classes/RecoverySignerConflictError"},{"title":"RecoverySignerLimitExceededError","href":"/sdk-reference/wallets/typescript/classes/RecoverySignerLimitExceededError"},{"title":"SignerAuthenticationError","href":"/sdk-reference/wallets/typescript/classes/SignerAuthenticationError"},{"title":"SignerRequiredError","href":"/sdk-reference/wallets/typescript/classes/SignerRequiredError"},{"title":"SignerStatusError","href":"/sdk-reference/wallets/typescript/classes/SignerStatusError"},{"title":"SolanaWallet","href":"/sdk-reference/wallets/typescript/classes/SolanaWallet"},{"title":"StellarWallet","href":"/sdk-reference/wallets/typescript/classes/StellarWallet"},{"title":"UnsupportedBrowserError","href":"/sdk-reference/wallets/typescript/classes/UnsupportedBrowserError"},{"title":"Wallet","href":"/sdk-reference/wallets/typescript/classes/Wallet"},{"title":"WalletNotAvailableError","href":"/sdk-reference/wallets/typescript/classes/WalletNotAvailableError"},{"title":"WalletsApiClient","href":"/sdk-reference/wallets/typescript/classes/WalletsApiClient"}]},{"group":"Interfaces","pages":[{"title":"ExportableSignerAdapter","href":"/sdk-reference/wallets/typescript/interfaces/ExportableSignerAdapter"},{"title":"SignerAdapter","href":"/sdk-reference/wallets/typescript/interfaces/SignerAdapter"}]},{"group":"Type Aliases","pages":[{"title":"AddRecoveryMethodOptions","href":"/sdk-reference/wallets/typescript/type-aliases/AddRecoveryMethodOptions"},{"title":"AddRecoveryMethodReturnType","href":"/sdk-reference/wallets/typescript/type-aliases/AddRecoveryMethodReturnType"},{"title":"AddSignerOptions","href":"/sdk-reference/wallets/typescript/type-aliases/AddSignerOptions"},{"title":"ApiKeySignerLocator","href":"/sdk-reference/wallets/typescript/type-aliases/ApiKeySignerLocator"},{"title":"ApproveOptions","href":"/sdk-reference/wallets/typescript/type-aliases/ApproveOptions"},{"title":"ApproveParams","href":"/sdk-reference/wallets/typescript/type-aliases/ApproveParams"},{"title":"ApproveTransactionParams","href":"/sdk-reference/wallets/typescript/type-aliases/ApproveTransactionParams"},{"title":"Balances","href":"/sdk-reference/wallets/typescript/type-aliases/Balances"},{"title":"BiometricRequestHandler","href":"/sdk-reference/wallets/typescript/type-aliases/BiometricRequestHandler"},{"title":"Callbacks","href":"/sdk-reference/wallets/typescript/type-aliases/Callbacks"},{"title":"Chain","href":"/sdk-reference/wallets/typescript/type-aliases/Chain"},{"title":"ClientSideWalletArgsFor","href":"/sdk-reference/wallets/typescript/type-aliases/ClientSideWalletArgsFor"},{"title":"ClientSideWalletCreateArgs","href":"/sdk-reference/wallets/typescript/type-aliases/ClientSideWalletCreateArgs"},{"title":"CreateServerSignerParams","href":"/sdk-reference/wallets/typescript/type-aliases/CreateServerSignerParams"},{"title":"CreateWalletParams","href":"/sdk-reference/wallets/typescript/type-aliases/CreateWalletParams"},{"title":"CreateWalletResponse","href":"/sdk-reference/wallets/typescript/type-aliases/CreateWalletResponse"},{"title":"DeviceSignerConfig","href":"/sdk-reference/wallets/typescript/type-aliases/DeviceSignerConfig"},{"title":"DeviceSignerLocator","href":"/sdk-reference/wallets/typescript/type-aliases/DeviceSignerLocator"},{"title":"EVMChain","href":"/sdk-reference/wallets/typescript/type-aliases/EVMChain"},{"title":"EVMTransactionInput","href":"/sdk-reference/wallets/typescript/type-aliases/EVMTransactionInput"},{"title":"EmailSignerConfig","href":"/sdk-reference/wallets/typescript/type-aliases/EmailSignerConfig"},{"title":"EmailSignerLocator","href":"/sdk-reference/wallets/typescript/type-aliases/EmailSignerLocator"},{"title":"EvmExternalWalletSignerConfig","href":"/sdk-reference/wallets/typescript/type-aliases/EvmExternalWalletSignerConfig"},{"title":"ExportSignerTEEConnection","href":"/sdk-reference/wallets/typescript/type-aliases/ExportSignerTEEConnection"},{"title":"ExternalWalletRegistrationConfig","href":"/sdk-reference/wallets/typescript/type-aliases/ExternalWalletRegistrationConfig"},{"title":"ExternalWalletSignerConfig","href":"/sdk-reference/wallets/typescript/type-aliases/ExternalWalletSignerConfig"},{"title":"ExternalWalletSignerConfigForChain","href":"/sdk-reference/wallets/typescript/type-aliases/ExternalWalletSignerConfigForChain"},{"title":"ExternalWalletSignerLocator","href":"/sdk-reference/wallets/typescript/type-aliases/ExternalWalletSignerLocator"},{"title":"FundWalletParams","href":"/sdk-reference/wallets/typescript/type-aliases/FundWalletParams"},{"title":"FundWalletResponse","href":"/sdk-reference/wallets/typescript/type-aliases/FundWalletResponse"},{"title":"GetBalanceResponse","href":"/sdk-reference/wallets/typescript/type-aliases/GetBalanceResponse"},{"title":"GetTransactionResponse","href":"/sdk-reference/wallets/typescript/type-aliases/GetTransactionResponse"},{"title":"PasskeyProvider","href":"/sdk-reference/wallets/typescript/type-aliases/PasskeyProvider"},{"title":"PasskeySignResult","href":"/sdk-reference/wallets/typescript/type-aliases/PasskeySignResult"},{"title":"PasskeySignerLocator","href":"/sdk-reference/wallets/typescript/type-aliases/PasskeySignerLocator"},{"title":"PhoneSignerConfig","href":"/sdk-reference/wallets/typescript/type-aliases/PhoneSignerConfig"},{"title":"PhoneSignerLocator","href":"/sdk-reference/wallets/typescript/type-aliases/PhoneSignerLocator"},{"title":"RecoverySignerConfigForChain","href":"/sdk-reference/wallets/typescript/type-aliases/RecoverySignerConfigForChain"},{"title":"RegisterSignerPasskeyParams","href":"/sdk-reference/wallets/typescript/type-aliases/RegisterSignerPasskeyParams"},{"title":"RemoveRecoveryMethodOptions","href":"/sdk-reference/wallets/typescript/type-aliases/RemoveRecoveryMethodOptions"},{"title":"RemoveRecoveryMethodReturnType","href":"/sdk-reference/wallets/typescript/type-aliases/RemoveRecoveryMethodReturnType"},{"title":"RemoveSignerOptions","href":"/sdk-reference/wallets/typescript/type-aliases/RemoveSignerOptions"},{"title":"Scope","href":"/sdk-reference/wallets/typescript/type-aliases/Scope"},{"title":"SendResponse","href":"/sdk-reference/wallets/typescript/type-aliases/SendResponse"},{"title":"ServerSigner","href":"/sdk-reference/wallets/typescript/type-aliases/ServerSigner"},{"title":"ServerSignerConfig","href":"/sdk-reference/wallets/typescript/type-aliases/ServerSignerConfig"},{"title":"Signature","href":"/sdk-reference/wallets/typescript/type-aliases/Signature"},{"title":"Signer","href":"/sdk-reference/wallets/typescript/type-aliases/Signer"},{"title":"SignerConfigForChain","href":"/sdk-reference/wallets/typescript/type-aliases/SignerConfigForChain"},{"title":"SignerLocator","href":"/sdk-reference/wallets/typescript/type-aliases/SignerLocator"},{"title":"SignerStatus","href":"/sdk-reference/wallets/typescript/type-aliases/SignerStatus"},{"title":"SolanaChain","href":"/sdk-reference/wallets/typescript/type-aliases/SolanaChain"},{"title":"SolanaExternalWalletSignerConfig","href":"/sdk-reference/wallets/typescript/type-aliases/SolanaExternalWalletSignerConfig"},{"title":"SolanaTransactionInput","href":"/sdk-reference/wallets/typescript/type-aliases/SolanaTransactionInput"},{"title":"StellarChain","href":"/sdk-reference/wallets/typescript/type-aliases/StellarChain"},{"title":"StellarExternalWalletSignerConfig","href":"/sdk-reference/wallets/typescript/type-aliases/StellarExternalWalletSignerConfig"},{"title":"Transaction","href":"/sdk-reference/wallets/typescript/type-aliases/Transaction"},{"title":"TransferScope","href":"/sdk-reference/wallets/typescript/type-aliases/TransferScope"},{"title":"Transfers","href":"/sdk-reference/wallets/typescript/type-aliases/Transfers"},{"title":"WalletArgsFor","href":"/sdk-reference/wallets/typescript/type-aliases/WalletArgsFor"},{"title":"WalletCreateArgs","href":"/sdk-reference/wallets/typescript/type-aliases/WalletCreateArgs"},{"title":"WalletLocator","href":"/sdk-reference/wallets/typescript/type-aliases/WalletLocator"},{"title":"WalletOptions","href":"/sdk-reference/wallets/typescript/type-aliases/WalletOptions"},{"title":"WalletPlugin","href":"/sdk-reference/wallets/typescript/type-aliases/WalletPlugin"}]},{"group":"Functions","pages":[{"title":"createCrossmint","href":"/sdk-reference/wallets/typescript/functions/createCrossmint"},{"title":"createDeviceSigner","href":"/sdk-reference/wallets/typescript/functions/createDeviceSigner"},{"title":"createServerSigner","href":"/sdk-reference/wallets/typescript/functions/createServerSigner"},{"title":"isExportableSignerAdapter","href":"/sdk-reference/wallets/typescript/functions/isExportableSignerAdapter"},{"title":"recoveryMethodsFromCreateArgs","href":"/sdk-reference/wallets/typescript/functions/recoveryMethodsFromCreateArgs"}]}]},{"group":"React SDK","icon":"/images/icons/react.svg","pages":[{"title":"Get Started","href":"/sdk-reference/wallets/react/get-started"},{"title":"Providers","href":"/sdk-reference/wallets/react/providers"},{"title":"Hooks","href":"/sdk-reference/wallets/react/hooks"},{"title":"Components","href":"/sdk-reference/wallets/react/components"}]},{"group":"React Native SDK","icon":"/images/icons/react-native.svg","pages":[{"title":"Get Started","href":"/sdk-reference/wallets/react-native/get-started"},{"title":"Providers","href":"/sdk-reference/wallets/react-native/providers"},{"title":"Hooks","href":"/sdk-reference/wallets/react-native/hooks"},{"title":"Components","href":"/sdk-reference/wallets/react-native/components"}]},{"group":"Flutter SDK","icon":"/images/icons/flutter.svg","pages":[{"title":"Get Started","href":"/sdk-reference/wallets/flutter/get-started"},{"title":"Providers","href":"/sdk-reference/wallets/flutter/providers"},{"title":"Controllers","href":"/sdk-reference/wallets/flutter/controllers"},{"title":"Widgets","href":"/sdk-reference/wallets/flutter/widgets"},{"group":"Classes","pages":[{"title":"ChainExplorerRegistry","href":"/sdk-reference/wallets/flutter/classes/chain-explorer-registry"},{"title":"CrossmintApiConfig","href":"/sdk-reference/wallets/flutter/classes/crossmint-api-config"},{"title":"CrossmintApiKeySigner","href":"/sdk-reference/wallets/flutter/classes/crossmint-api-key-signer"},{"title":"CrossmintApiVersions","href":"/sdk-reference/wallets/flutter/classes/crossmint-api-versions"},{"title":"CrossmintAuthClient","href":"/sdk-reference/wallets/flutter/classes/crossmint-auth-client"},{"title":"CrossmintAuthException","href":"/sdk-reference/wallets/flutter/classes/crossmint-auth-exception"},{"title":"CrossmintAuthRejectedException","href":"/sdk-reference/wallets/flutter/classes/crossmint-auth-rejected-exception"},{"title":"CrossmintAuthScope","href":"/sdk-reference/wallets/flutter/classes/crossmint-auth-scope"},{"title":"CrossmintClient","href":"/sdk-reference/wallets/flutter/classes/crossmint-client"},{"title":"CrossmintClientConfig","href":"/sdk-reference/wallets/flutter/classes/crossmint-client-config"},{"title":"CrossmintConfigurationException","href":"/sdk-reference/wallets/flutter/classes/crossmint-configuration-exception"},{"title":"CrossmintCredentialsException","href":"/sdk-reference/wallets/flutter/classes/crossmint-credentials-exception"},{"title":"CrossmintDeserializationException","href":"/sdk-reference/wallets/flutter/classes/crossmint-deserialization-exception"},{"title":"CrossmintDeviceWalletSigner","href":"/sdk-reference/wallets/flutter/classes/crossmint-device-wallet-signer"},{"title":"CrossmintEmailOtpDialog","href":"/sdk-reference/wallets/flutter/classes/crossmint-email-otp-dialog"},{"title":"CrossmintEvmExternalWalletSigner","href":"/sdk-reference/wallets/flutter/classes/crossmint-evm-external-wallet-signer"},{"title":"CrossmintEvmNonCustodialSigner","href":"/sdk-reference/wallets/flutter/classes/crossmint-evm-non-custodial-signer"},{"title":"CrossmintEvmWallet","href":"/sdk-reference/wallets/flutter/classes/crossmint-evm-wallet"},{"title":"CrossmintException","href":"/sdk-reference/wallets/flutter/classes/crossmint-exception"},{"title":"CrossmintExportPrivateKeyButton","href":"/sdk-reference/wallets/flutter/classes/crossmint-export-private-key-button"},{"title":"CrossmintExportableWalletSigner","href":"/sdk-reference/wallets/flutter/classes/crossmint-exportable-wallet-signer"},{"title":"CrossmintExternalWalletSigner","href":"/sdk-reference/wallets/flutter/classes/crossmint-external-wallet-signer"},{"title":"CrossmintNonCustodialSigner","href":"/sdk-reference/wallets/flutter/classes/crossmint-non-custodial-signer"},{"title":"CrossmintOtpCodeInputStep","href":"/sdk-reference/wallets/flutter/classes/crossmint-otp-code-input-step"},{"title":"CrossmintOtpConfirmationStep","href":"/sdk-reference/wallets/flutter/classes/crossmint-otp-confirmation-step"},{"title":"CrossmintOtpModalShell","href":"/sdk-reference/wallets/flutter/classes/crossmint-otp-modal-shell"},{"title":"CrossmintPasskeyApprovalSigner","href":"/sdk-reference/wallets/flutter/classes/crossmint-passkey-approval-signer"},{"title":"CrossmintPasskeySignerFactory","href":"/sdk-reference/wallets/flutter/classes/crossmint-passkey-signer-factory"},{"title":"CrossmintPhoneOtpDialog","href":"/sdk-reference/wallets/flutter/classes/crossmint-phone-otp-dialog"},{"title":"CrossmintPollingConfig","href":"/sdk-reference/wallets/flutter/classes/crossmint-polling-config"},{"title":"CrossmintRuntimeWalletBase","href":"/sdk-reference/wallets/flutter/classes/crossmint-runtime-wallet-base"},{"title":"CrossmintSignerException","href":"/sdk-reference/wallets/flutter/classes/crossmint-signer-exception"},{"title":"CrossmintSolanaExternalWalletSigner","href":"/sdk-reference/wallets/flutter/classes/crossmint-solana-external-wallet-signer"},{"title":"CrossmintSolanaNonCustodialSigner","href":"/sdk-reference/wallets/flutter/classes/crossmint-solana-non-custodial-signer"},{"title":"CrossmintSolanaWallet","href":"/sdk-reference/wallets/flutter/classes/crossmint-solana-wallet"},{"title":"CrossmintStellarExternalWalletSigner","href":"/sdk-reference/wallets/flutter/classes/crossmint-stellar-external-wallet-signer"},{"title":"CrossmintStellarNonCustodialSigner","href":"/sdk-reference/wallets/flutter/classes/crossmint-stellar-non-custodial-signer"},{"title":"CrossmintStellarWallet","href":"/sdk-reference/wallets/flutter/classes/crossmint-stellar-wallet"},{"title":"CrossmintTokensException","href":"/sdk-reference/wallets/flutter/classes/crossmint-tokens-exception"},{"title":"CrossmintUsersException","href":"/sdk-reference/wallets/flutter/classes/crossmint-users-exception"},{"title":"CrossmintWalletAuthChallenge","href":"/sdk-reference/wallets/flutter/classes/crossmint-wallet-auth-challenge"},{"title":"CrossmintWalletController","href":"/sdk-reference/wallets/flutter/classes/crossmint-wallet-controller"},{"title":"CrossmintWalletControllerConfig","href":"/sdk-reference/wallets/flutter/classes/crossmint-wallet-controller-config"},{"title":"CrossmintWalletException","href":"/sdk-reference/wallets/flutter/classes/crossmint-wallet-exception"},{"title":"CrossmintWalletHost","href":"/sdk-reference/wallets/flutter/classes/crossmint-wallet-host"},{"title":"CrossmintWalletLifecycleCallbacks","href":"/sdk-reference/wallets/flutter/classes/crossmint-wallet-lifecycle-callbacks"},{"title":"CrossmintWalletOtpController","href":"/sdk-reference/wallets/flutter/classes/crossmint-wallet-otp-controller"},{"title":"CrossmintWalletProvider","href":"/sdk-reference/wallets/flutter/classes/crossmint-wallet-provider"},{"title":"CrossmintWalletProviderConfig","href":"/sdk-reference/wallets/flutter/classes/crossmint-wallet-provider-config"},{"title":"CrossmintWalletProviderDependencies","href":"/sdk-reference/wallets/flutter/classes/crossmint-wallet-provider-dependencies"},{"title":"CrossmintWalletScope","href":"/sdk-reference/wallets/flutter/classes/crossmint-wallet-scope"},{"title":"CrossmintWalletStateRepository","href":"/sdk-reference/wallets/flutter/classes/crossmint-wallet-state-repository"},{"title":"CrossmintWalletStateView","href":"/sdk-reference/wallets/flutter/classes/crossmint-wallet-state-view"},{"title":"CrossmintWallets","href":"/sdk-reference/wallets/flutter/classes/crossmint-wallets"},{"title":"DefaultCrossmintAppIdentityResolver","href":"/sdk-reference/wallets/flutter/classes/default-crossmint-app-identity-resolver"},{"title":"SoftwareDeviceSignerKeyStorage","href":"/sdk-reference/wallets/flutter/classes/software-device-signer-key-storage"},{"title":"UnsupportedPasskeySignerFactory","href":"/sdk-reference/wallets/flutter/classes/unsupported-passkey-signer-factory"},{"title":"WalletResponseParser","href":"/sdk-reference/wallets/flutter/classes/wallet-response-parser"},{"title":"WalletSerializationCodec","href":"/sdk-reference/wallets/flutter/classes/wallet-serialization-codec"}]},{"group":"Enums","pages":[{"title":"CrossmintChain","href":"/sdk-reference/wallets/flutter/enums/crossmint-chain"},{"title":"CrossmintChainFamily","href":"/sdk-reference/wallets/flutter/enums/crossmint-chain-family"},{"title":"CrossmintErrorCode","href":"/sdk-reference/wallets/flutter/enums/crossmint-error-code"},{"title":"CrossmintWalletStatus","href":"/sdk-reference/wallets/flutter/enums/crossmint-wallet-status"}]},{"group":"Type Aliases","pages":[{"title":"CrossmintExportPrivateKeyButtonBuilder","href":"/sdk-reference/wallets/flutter/type-aliases/crossmint-export-private-key-button-builder"},{"title":"CrossmintExternalWalletSignCallback","href":"/sdk-reference/wallets/flutter/type-aliases/crossmint-external-wallet-sign-callback"},{"title":"CrossmintOtpPromptBuilder","href":"/sdk-reference/wallets/flutter/type-aliases/crossmint-otp-prompt-builder"},{"title":"CrossmintOtpRejectCallback","href":"/sdk-reference/wallets/flutter/type-aliases/crossmint-otp-reject-callback"},{"title":"CrossmintOtpSendCallback","href":"/sdk-reference/wallets/flutter/type-aliases/crossmint-otp-send-callback"},{"title":"CrossmintOtpVerifyCallback","href":"/sdk-reference/wallets/flutter/type-aliases/crossmint-otp-verify-callback"},{"title":"CrossmintSignerAuthRequiredCallback","href":"/sdk-reference/wallets/flutter/type-aliases/crossmint-signer-auth-required-callback"}]}]},{"group":"Swift SDK","icon":"/images/icons/swift.svg","pages":[{"group":"Classes","pages":[{"title":"ABI","href":"/sdk-reference/wallets/swift/classes/abi"},{"title":"ApiKeySigner","href":"/sdk-reference/wallets/swift/classes/apikeysigner"},{"title":"CrossmintAuthManager","href":"/sdk-reference/wallets/swift/classes/crossmintauthmanager"},{"title":"CrossmintSDK","href":"/sdk-reference/wallets/swift/classes/crossmintsdk"},{"title":"DefaultAuthClient","href":"/sdk-reference/wallets/swift/classes/defaultauthclient"},{"title":"DefaultAuthService","href":"/sdk-reference/wallets/swift/classes/defaultauthservice"},{"title":"DefaultCrossmintWallets","href":"/sdk-reference/wallets/swift/classes/defaultcrossmintwallets"},{"title":"DefaultSmartWalletService","href":"/sdk-reference/wallets/swift/classes/defaultsmartwalletservice"},{"title":"EVMEmailSigner","href":"/sdk-reference/wallets/swift/classes/evmemailsigner"},{"title":"EVMKeyPairSigner","href":"/sdk-reference/wallets/swift/classes/evmkeypairsigner"},{"title":"EVMWallet","href":"/sdk-reference/wallets/swift/classes/evmwallet"},{"title":"PasskeySigner","href":"/sdk-reference/wallets/swift/classes/passkeysigner"},{"title":"PhoneSigner","href":"/sdk-reference/wallets/swift/classes/phonesigner"},{"title":"SolanaEmailSigner","href":"/sdk-reference/wallets/swift/classes/solanaemailsigner"},{"title":"SolanaWallet","href":"/sdk-reference/wallets/swift/classes/solanawallet"},{"title":"StellarEmailSigner","href":"/sdk-reference/wallets/swift/classes/stellaremailsigner"},{"title":"StellarWallet","href":"/sdk-reference/wallets/swift/classes/stellarwallet"},{"title":"Wallet","href":"/sdk-reference/wallets/swift/classes/wallet"}]},{"group":"Protocols","pages":[{"title":"AdminSignerApiModel","href":"/sdk-reference/wallets/swift/protocols/adminsignerapimodel"},{"title":"AdminSignerData","href":"/sdk-reference/wallets/swift/protocols/adminsignerdata"},{"title":"AnyChain","href":"/sdk-reference/wallets/swift/protocols/anychain"},{"title":"ApprovalSigner","href":"/sdk-reference/wallets/swift/protocols/approvalsigner"},{"title":"AuthClient","href":"/sdk-reference/wallets/swift/protocols/authclient"},{"title":"AuthManager","href":"/sdk-reference/wallets/swift/protocols/authmanager"},{"title":"AuthService","href":"/sdk-reference/wallets/swift/protocols/authservice"},{"title":"BalanceService","href":"/sdk-reference/wallets/swift/protocols/balanceservice"},{"title":"BlockchainAddress","href":"/sdk-reference/wallets/swift/protocols/blockchainaddress"},{"title":"ChainWithSigners","href":"/sdk-reference/wallets/swift/protocols/chainwithsigners"},{"title":"CrossmintWallets","href":"/sdk-reference/wallets/swift/protocols/crossmintwallets"},{"title":"EVMCompatibleSigner","href":"/sdk-reference/wallets/swift/protocols/evmcompatiblesigner"},{"title":"NFTService","href":"/sdk-reference/wallets/swift/protocols/nftservice"},{"title":"SignatureApiModel","href":"/sdk-reference/wallets/swift/protocols/signatureapimodel"},{"title":"SignatureService","href":"/sdk-reference/wallets/swift/protocols/signatureservice"},{"title":"Signer","href":"/sdk-reference/wallets/swift/protocols/signer"},{"title":"SignerProvider","href":"/sdk-reference/wallets/swift/protocols/signerprovider"},{"title":"SmartWalletCreationQueryParams","href":"/sdk-reference/wallets/swift/protocols/smartwalletcreationqueryparams"},{"title":"SmartWalletService","href":"/sdk-reference/wallets/swift/protocols/smartwalletservice"},{"title":"SolanaCompatibleSigner","href":"/sdk-reference/wallets/swift/protocols/solanacompatiblesigner"},{"title":"SpecificChain","href":"/sdk-reference/wallets/swift/protocols/specificchain"},{"title":"StellarCompatibleSigner","href":"/sdk-reference/wallets/swift/protocols/stellarcompatiblesigner"},{"title":"TransactionApiModel","href":"/sdk-reference/wallets/swift/protocols/transactionapimodel"},{"title":"TransactionRequest","href":"/sdk-reference/wallets/swift/protocols/transactionrequest"},{"title":"TransactionService","href":"/sdk-reference/wallets/swift/protocols/transactionservice"},{"title":"TransferService","href":"/sdk-reference/wallets/swift/protocols/transferservice"},{"title":"WalletOnChain","href":"/sdk-reference/wallets/swift/protocols/walletonchain"},{"title":"WalletService","href":"/sdk-reference/wallets/swift/protocols/walletservice"},{"title":"WalletTypeTransactionMapping","href":"/sdk-reference/wallets/swift/protocols/wallettypetransactionmapping"}]},{"group":"Enums","pages":[{"title":"Address","href":"/sdk-reference/wallets/swift/enums/address"},{"title":"AdminSignerDataType","href":"/sdk-reference/wallets/swift/enums/adminsignerdatatype"},{"title":"AuthenticationStatus","href":"/sdk-reference/wallets/swift/enums/authenticationstatus"},{"title":"AuthError","href":"/sdk-reference/wallets/swift/enums/autherror"},{"title":"AuthManagerError","href":"/sdk-reference/wallets/swift/enums/authmanagererror"},{"title":"BlockchainAddressError","href":"/sdk-reference/wallets/swift/enums/blockchainaddresserror"},{"title":"BlockchainExplorerLinkType","href":"/sdk-reference/wallets/swift/enums/blockchainexplorerlinktype"},{"title":"Chain","href":"/sdk-reference/wallets/swift/enums/chain"},{"title":"ChainAndAddress","href":"/sdk-reference/wallets/swift/enums/chainandaddress"},{"title":"ChainType","href":"/sdk-reference/wallets/swift/enums/chaintype"},{"title":"CryptoCurrency","href":"/sdk-reference/wallets/swift/enums/cryptocurrency"},{"title":"CryptoPaymentFailureCode","href":"/sdk-reference/wallets/swift/enums/cryptopaymentfailurecode"},{"title":"EIP712","href":"/sdk-reference/wallets/swift/enums/eip712"},{"title":"EVMChain","href":"/sdk-reference/wallets/swift/enums/evmchain"},{"title":"EVMSigners","href":"/sdk-reference/wallets/swift/enums/evmsigners"},{"title":"EVMSmartWalletMapping","href":"/sdk-reference/wallets/swift/enums/evmsmartwalletmapping"},{"title":"FiatCurrency","href":"/sdk-reference/wallets/swift/enums/fiatcurrency"},{"title":"LinkedUserError","href":"/sdk-reference/wallets/swift/enums/linkedusererror"},{"title":"NonCustodialSignerError","href":"/sdk-reference/wallets/swift/enums/noncustodialsignererror"},{"title":"OTPAuthenticationStatus","href":"/sdk-reference/wallets/swift/enums/otpauthenticationstatus"},{"title":"OTPDeliveryChannel","href":"/sdk-reference/wallets/swift/enums/otpdeliverychannel"},{"title":"Owner","href":"/sdk-reference/wallets/swift/enums/owner"},{"title":"SignatureError","href":"/sdk-reference/wallets/swift/enums/signatureerror"},{"title":"SignerConfig","href":"/sdk-reference/wallets/swift/enums/signerconfig"},{"title":"SignerError","href":"/sdk-reference/wallets/swift/enums/signererror"},{"title":"SignerLocator","href":"/sdk-reference/wallets/swift/enums/signerlocator"},{"title":"Signers","href":"/sdk-reference/wallets/swift/enums/signers"},{"title":"SignerStatus","href":"/sdk-reference/wallets/swift/enums/signerstatus"},{"title":"SignerType","href":"/sdk-reference/wallets/swift/enums/signertype"},{"title":"SolanaChain","href":"/sdk-reference/wallets/swift/enums/solanachain"},{"title":"SolanaSigners","href":"/sdk-reference/wallets/swift/enums/solanasigners"},{"title":"SolanaSmartWalletMapping","href":"/sdk-reference/wallets/swift/enums/solanasmartwalletmapping"},{"title":"SolanaSupportedToken","href":"/sdk-reference/wallets/swift/enums/solanasupportedtoken"},{"title":"StellarChain","href":"/sdk-reference/wallets/swift/enums/stellarchain"},{"title":"StellarSigners","href":"/sdk-reference/wallets/swift/enums/stellarsigners"},{"title":"StellarSmartWalletMapping","href":"/sdk-reference/wallets/swift/enums/stellarsmartwalletmapping"},{"title":"StellarSupportedToken","href":"/sdk-reference/wallets/swift/enums/stellarsupportedtoken"},{"title":"TokenAccountType","href":"/sdk-reference/wallets/swift/enums/tokenaccounttype"},{"title":"TransactionError","href":"/sdk-reference/wallets/swift/enums/transactionerror"},{"title":"TransactionStatus","href":"/sdk-reference/wallets/swift/enums/transactionstatus"},{"title":"TransactionStatusApiModel","href":"/sdk-reference/wallets/swift/enums/transactionstatusapimodel"},{"title":"TransferTokenLocator","href":"/sdk-reference/wallets/swift/enums/transfertokenlocator"},{"title":"TransferTokenRecipient","href":"/sdk-reference/wallets/swift/enums/transfertokenrecipient"},{"title":"TransferType","href":"/sdk-reference/wallets/swift/enums/transfertype"},{"title":"UnknownChain","href":"/sdk-reference/wallets/swift/enums/unknownchain"},{"title":"WalletError","href":"/sdk-reference/wallets/swift/enums/walleterror"},{"title":"WalletLocator","href":"/sdk-reference/wallets/swift/enums/walletlocator"},{"title":"WalletType","href":"/sdk-reference/wallets/swift/enums/wallettype"}]},{"group":"Structs","pages":[{"title":"ABIAddress","href":"/sdk-reference/wallets/swift/structs/abiaddress"},{"title":"ABIUInt64","href":"/sdk-reference/wallets/swift/structs/abiuint64"},{"title":"AddDelegatedSignerResponse","href":"/sdk-reference/wallets/swift/structs/adddelegatedsignerresponse"},{"title":"ApiKeySignerApiModel","href":"/sdk-reference/wallets/swift/structs/apikeysignerapimodel"},{"title":"ApiKeySignerData","href":"/sdk-reference/wallets/swift/structs/apikeysignerdata"},{"title":"ApprovalEntry","href":"/sdk-reference/wallets/swift/structs/approvalentry"},{"title":"Approvals","href":"/sdk-reference/wallets/swift/structs/approvals"},{"title":"AuthSession","href":"/sdk-reference/wallets/swift/structs/authsession"},{"title":"AuthUser","href":"/sdk-reference/wallets/swift/structs/authuser"},{"title":"Balance","href":"/sdk-reference/wallets/swift/structs/balance"},{"title":"Balances","href":"/sdk-reference/wallets/swift/structs/balances"},{"title":"BlockchainAddressLink","href":"/sdk-reference/wallets/swift/structs/blockchainaddresslink"},{"title":"BlockchainTokenLink","href":"/sdk-reference/wallets/swift/structs/blockchaintokenlink"},{"title":"BlockchainTransactionLink","href":"/sdk-reference/wallets/swift/structs/blockchaintransactionlink"},{"title":"ChainBalances","href":"/sdk-reference/wallets/swift/structs/chainbalances"},{"title":"ChainRegistrationEntry","href":"/sdk-reference/wallets/swift/structs/chainregistrationentry"},{"title":"ChainRegistrationOnChain","href":"/sdk-reference/wallets/swift/structs/chainregistrationonchain"},{"title":"CreateEVMTransactionRequest","href":"/sdk-reference/wallets/swift/structs/createevmtransactionrequest"},{"title":"CreateSignatureRequest","href":"/sdk-reference/wallets/swift/structs/createsignaturerequest"},{"title":"CreateSolanaTransactionRequest","href":"/sdk-reference/wallets/swift/structs/createsolanatransactionrequest"},{"title":"CreateStellarTransactionRequest","href":"/sdk-reference/wallets/swift/structs/createstellartransactionrequest"},{"title":"CreateTransactionRequest","href":"/sdk-reference/wallets/swift/structs/createtransactionrequest"},{"title":"CreateWalletParams","href":"/sdk-reference/wallets/swift/structs/createwalletparams"},{"title":"DelegatedSignerEntry","href":"/sdk-reference/wallets/swift/structs/delegatedsignerentry"},{"title":"DevicePublicKey","href":"/sdk-reference/wallets/swift/structs/devicepublickey"},{"title":"EmailSignerApiModel","href":"/sdk-reference/wallets/swift/structs/emailsignerapimodel"},{"title":"EmailSignerData","href":"/sdk-reference/wallets/swift/structs/emailsignerdata"},{"title":"ERC20Encoder","href":"/sdk-reference/wallets/swift/structs/erc20encoder"},{"title":"EVMAddress","href":"/sdk-reference/wallets/swift/structs/evmaddress"},{"title":"EvmPasskeySignerApiModel","href":"/sdk-reference/wallets/swift/structs/evmpasskeysignerapimodel"},{"title":"EVMTransactionApiModel","href":"/sdk-reference/wallets/swift/structs/evmtransactionapimodel"},{"title":"ExternalWalletSigner","href":"/sdk-reference/wallets/swift/structs/externalwalletsigner"},{"title":"ExternalWalletSignerApiModel","href":"/sdk-reference/wallets/swift/structs/externalwalletsignerapimodel"},{"title":"ExternalWalletSignerData","href":"/sdk-reference/wallets/swift/structs/externalwalletsignerdata"},{"title":"FetchTransactionRequest","href":"/sdk-reference/wallets/swift/structs/fetchtransactionrequest"},{"title":"FundWalletApiRequest","href":"/sdk-reference/wallets/swift/structs/fundwalletapirequest"},{"title":"FundWalletRequest","href":"/sdk-reference/wallets/swift/structs/fundwalletrequest"},{"title":"GetBalanceQueryParams","href":"/sdk-reference/wallets/swift/structs/getbalancequeryparams"},{"title":"GetMeWalletRequest","href":"/sdk-reference/wallets/swift/structs/getmewalletrequest"},{"title":"GetNTFQueryParams","href":"/sdk-reference/wallets/swift/structs/getntfqueryparams"},{"title":"GetTransationQueryParams","href":"/sdk-reference/wallets/swift/structs/gettransationqueryparams"},{"title":"ListTransactionsRequest","href":"/sdk-reference/wallets/swift/structs/listtransactionsrequest"},{"title":"ListTransfersQueryParams","href":"/sdk-reference/wallets/swift/structs/listtransfersqueryparams"},{"title":"LogoutRequest","href":"/sdk-reference/wallets/swift/structs/logoutrequest"},{"title":"MessageSignatureResponse","href":"/sdk-reference/wallets/swift/structs/messagesignatureresponse"},{"title":"NFT","href":"/sdk-reference/wallets/swift/structs/nft"},{"title":"NonCustodialSignerCallback","href":"/sdk-reference/wallets/swift/structs/noncustodialsignercallback"},{"title":"OTPRequest","href":"/sdk-reference/wallets/swift/structs/otprequest"},{"title":"PasskeySignerData","href":"/sdk-reference/wallets/swift/structs/passkeysignerdata"},{"title":"PhoneSignerApiModel","href":"/sdk-reference/wallets/swift/structs/phonesignerapimodel"},{"title":"PhoneSignerData","href":"/sdk-reference/wallets/swift/structs/phonesignerdata"},{"title":"RecoveryMethod","href":"/sdk-reference/wallets/swift/structs/recoverymethod"},{"title":"RefreshJWTRequest","href":"/sdk-reference/wallets/swift/structs/refreshjwtrequest"},{"title":"RefreshJWTResponse","href":"/sdk-reference/wallets/swift/structs/refreshjwtresponse"},{"title":"RegistrationApprovals","href":"/sdk-reference/wallets/swift/structs/registrationapprovals"},{"title":"RegistrationTransaction","href":"/sdk-reference/wallets/swift/structs/registrationtransaction"},{"title":"ServerSignerApiModel","href":"/sdk-reference/wallets/swift/structs/serversignerapimodel"},{"title":"ServerSignerData","href":"/sdk-reference/wallets/swift/structs/serversignerdata"},{"title":"SignerApiModel","href":"/sdk-reference/wallets/swift/structs/signerapimodel"},{"title":"SignMessageRequest","href":"/sdk-reference/wallets/swift/structs/signmessagerequest"},{"title":"SignRequest","href":"/sdk-reference/wallets/swift/structs/signrequest"},{"title":"SignRequestApi","href":"/sdk-reference/wallets/swift/structs/signrequestapi"},{"title":"SignTypedDataRequest","href":"/sdk-reference/wallets/swift/structs/signtypeddatarequest"},{"title":"SolanaAddress","href":"/sdk-reference/wallets/swift/structs/solanaaddress"},{"title":"SolanaTransactionApiModel","href":"/sdk-reference/wallets/swift/structs/solanatransactionapimodel"},{"title":"StellarAddress","href":"/sdk-reference/wallets/swift/structs/stellaraddress"},{"title":"StellarTransactionApiModel","href":"/sdk-reference/wallets/swift/structs/stellartransactionapimodel"},{"title":"SubmittedApprovalEntry","href":"/sdk-reference/wallets/swift/structs/submittedapprovalentry"},{"title":"TokenAccountBalance","href":"/sdk-reference/wallets/swift/structs/tokenaccountbalance"},{"title":"TokenAmount","href":"/sdk-reference/wallets/swift/structs/tokenamount"},{"title":"TokenBalance","href":"/sdk-reference/wallets/swift/structs/tokenbalance"},{"title":"TokenLinkOptions","href":"/sdk-reference/wallets/swift/structs/tokenlinkoptions"},{"title":"Transaction","href":"/sdk-reference/wallets/swift/structs/transaction"},{"title":"TransactionErrorApiModel","href":"/sdk-reference/wallets/swift/structs/transactionerrorapimodel"},{"title":"TransactionSummary","href":"/sdk-reference/wallets/swift/structs/transactionsummary"},{"title":"Transfer","href":"/sdk-reference/wallets/swift/structs/transfer"},{"title":"TransferListResult","href":"/sdk-reference/wallets/swift/structs/transferlistresult"},{"title":"TransferTokenRequest","href":"/sdk-reference/wallets/swift/structs/transfertokenrequest"},{"title":"TypedDataSignatureResponse","href":"/sdk-reference/wallets/swift/structs/typeddatasignatureresponse"},{"title":"ValidateEmailRequest","href":"/sdk-reference/wallets/swift/structs/validateemailrequest"},{"title":"ValidateEmailResponse","href":"/sdk-reference/wallets/swift/structs/validateemailresponse"},{"title":"ValidateTokenRequest","href":"/sdk-reference/wallets/swift/structs/validatetokenrequest"},{"title":"ValidateTokenResponse","href":"/sdk-reference/wallets/swift/structs/validatetokenresponse"},{"title":"WalletApiModel","href":"/sdk-reference/wallets/swift/structs/walletapimodel"},{"title":"WalletConfig","href":"/sdk-reference/wallets/swift/structs/walletconfig"},{"title":"WalletConfigApiModel","href":"/sdk-reference/wallets/swift/structs/walletconfigapimodel"},{"title":"WalletOptions","href":"/sdk-reference/wallets/swift/structs/walletoptions"},{"title":"WalletSigner","href":"/sdk-reference/wallets/swift/structs/walletsigner"}]},{"group":"Type Aliases","pages":[{"title":"EmailSignerError","href":"/sdk-reference/wallets/swift/type-aliases/emailsignererror"},{"title":"Secp256k1PrivateKey","href":"/sdk-reference/wallets/swift/type-aliases/secp256k1privatekey"},{"title":"Secp256k1PublicKey","href":"/sdk-reference/wallets/swift/type-aliases/secp256k1publickey"}]},{"group":"Functions","pages":[{"title":"getBlockchainExplorerURL(for:)","href":"/sdk-reference/wallets/swift/functions/getblockchainexplorerurl-for"}]},{"group":"Extensions","pages":[{"title":"Logger","href":"/sdk-reference/wallets/swift/extensions/logger"},{"title":"SwiftUICore","href":"/sdk-reference/wallets/swift/extensions/swiftuicore"}]}]},{"group":"Kotlin SDK","icon":"/images/icons/kotlin.png","pages":[{"title":"Kotlin SDK Reference","href":"/sdk-reference/wallets/kotlin/index"},{"group":"Classes","pages":[{"title":"AndroidCrossmintTEE","href":"/sdk-reference/wallets/kotlin/classes/android-crossmint-tee"},{"title":"AndroidPasskeyProvider","href":"/sdk-reference/wallets/kotlin/classes/android-passkey-provider"},{"title":"AndroidWebViewBridge","href":"/sdk-reference/wallets/kotlin/classes/android-web-view-bridge"},{"title":"AuthSessionStore","href":"/sdk-reference/wallets/kotlin/classes/auth-session-store"},{"title":"Crossmint","deprecated":true,"href":"/sdk-reference/wallets/kotlin/classes/crossmint"},{"title":"CrossmintAuthManager","href":"/sdk-reference/wallets/kotlin/classes/crossmint-auth-manager"},{"title":"CrossmintSDK","href":"/sdk-reference/wallets/kotlin/classes/crossmint-sdk"},{"title":"DelegatedSigner.PasskeyActivation","href":"/sdk-reference/wallets/kotlin/classes/delegated-signer-passkey-activation"},{"title":"DeviceSignerStorageFactory","href":"/sdk-reference/wallets/kotlin/classes/device-signer-storage-factory"},{"title":"EncryptedSharedPreferenceStorage","href":"/sdk-reference/wallets/kotlin/classes/encrypted-shared-preference-storage"},{"title":"EVMWallet","href":"/sdk-reference/wallets/kotlin/classes/evm-wallet"},{"title":"FallbackPolicy.InsecurePersistent","href":"/sdk-reference/wallets/kotlin/classes/fallback-policy-insecure-persistent"},{"title":"FallbackPolicy.MemoryOnly","href":"/sdk-reference/wallets/kotlin/classes/fallback-policy-memory-only"},{"title":"InsecurePersistentSessionStore","href":"/sdk-reference/wallets/kotlin/classes/insecure-persistent-session-store"},{"title":"InvalidEnvironmentKeyException","href":"/sdk-reference/wallets/kotlin/classes/invalid-environment-key-exception"},{"title":"JvmWebViewBridge","href":"/sdk-reference/wallets/kotlin/classes/jvm-web-view-bridge"},{"title":"KeystoreKeyStorage","href":"/sdk-reference/wallets/kotlin/classes/keystore-key-storage"},{"title":"MalformedKeyException","href":"/sdk-reference/wallets/kotlin/classes/malformed-key-exception"},{"title":"OldKeyException","href":"/sdk-reference/wallets/kotlin/classes/old-key-exception"},{"title":"SolanaWallet","href":"/sdk-reference/wallets/kotlin/classes/solana-wallet"},{"title":"StellarWallet","href":"/sdk-reference/wallets/kotlin/classes/stellar-wallet"},{"title":"TinkSecureStorage","href":"/sdk-reference/wallets/kotlin/classes/tink-secure-storage"},{"title":"TinkWithFallbackSessionStore","href":"/sdk-reference/wallets/kotlin/classes/tink-with-fallback-session-store"},{"title":"Wallet","href":"/sdk-reference/wallets/kotlin/classes/wallet"},{"title":"WebViewNotAvailableException","href":"/sdk-reference/wallets/kotlin/classes/web-view-not-available-exception"}]},{"group":"Interfaces","pages":[{"title":"AuthManager","href":"/sdk-reference/wallets/kotlin/interfaces/auth-manager"},{"title":"AuthService","href":"/sdk-reference/wallets/kotlin/interfaces/auth-service"},{"title":"BalanceOperations","href":"/sdk-reference/wallets/kotlin/interfaces/balance-operations"},{"title":"CrossmintTEE","href":"/sdk-reference/wallets/kotlin/interfaces/crossmint-tee"},{"title":"CrossmintWallets","href":"/sdk-reference/wallets/kotlin/interfaces/crossmint-wallets"},{"title":"DeviceSignerKeyStorage","href":"/sdk-reference/wallets/kotlin/interfaces/device-signer-key-storage"},{"title":"EmailSigner","href":"/sdk-reference/wallets/kotlin/interfaces/email-signer"},{"title":"FailureAwareSessionStore","href":"/sdk-reference/wallets/kotlin/interfaces/failure-aware-session-store"},{"title":"NFTOperations","href":"/sdk-reference/wallets/kotlin/interfaces/nft-operations"},{"title":"NonCustodialSigner","href":"/sdk-reference/wallets/kotlin/interfaces/non-custodial-signer"},{"title":"PasskeyProvider","href":"/sdk-reference/wallets/kotlin/interfaces/passkey-provider"},{"title":"SessionStore","href":"/sdk-reference/wallets/kotlin/interfaces/session-store"},{"title":"Signer","href":"/sdk-reference/wallets/kotlin/interfaces/signer"},{"title":"SignerManagementOperations","href":"/sdk-reference/wallets/kotlin/interfaces/signer-management-operations"},{"title":"TransactionOperations","href":"/sdk-reference/wallets/kotlin/interfaces/transaction-operations"}]},{"group":"Enums","pages":[{"title":"ApiKey.Type","href":"/sdk-reference/wallets/kotlin/enums/api-key-type"},{"title":"AuthErrorCode","href":"/sdk-reference/wallets/kotlin/enums/auth-error-code"},{"title":"BalanceErrorCode","href":"/sdk-reference/wallets/kotlin/enums/balance-error-code"},{"title":"ChainType","href":"/sdk-reference/wallets/kotlin/enums/chain-type"},{"title":"ConfigurationErrorCode","href":"/sdk-reference/wallets/kotlin/enums/configuration-error-code"},{"title":"DelegatedSignerStatus","href":"/sdk-reference/wallets/kotlin/enums/delegated-signer-status"},{"title":"DelegatedSignerType","href":"/sdk-reference/wallets/kotlin/enums/delegated-signer-type"},{"title":"Environment","href":"/sdk-reference/wallets/kotlin/enums/environment"},{"title":"FallbackPolicy","href":"/sdk-reference/wallets/kotlin/enums/fallback-policy"},{"title":"IdentityVerificationErrorCode","href":"/sdk-reference/wallets/kotlin/enums/identity-verification-error-code"},{"title":"LogLevel","href":"/sdk-reference/wallets/kotlin/enums/log-level"},{"title":"NetworkErrorCode","href":"/sdk-reference/wallets/kotlin/enums/network-error-code"},{"title":"OTPDeliveryChannel","href":"/sdk-reference/wallets/kotlin/enums/otp-delivery-channel"},{"title":"PasskeyErrorCode","href":"/sdk-reference/wallets/kotlin/enums/passkey-error-code"},{"title":"SignatureErrorCode","href":"/sdk-reference/wallets/kotlin/enums/signature-error-code"},{"title":"TransactionErrorCode","href":"/sdk-reference/wallets/kotlin/enums/transaction-error-code"},{"title":"TransactionStatus","href":"/sdk-reference/wallets/kotlin/enums/transaction-status"},{"title":"TransferErrorCode","href":"/sdk-reference/wallets/kotlin/enums/transfer-error-code"},{"title":"TransferType","href":"/sdk-reference/wallets/kotlin/enums/transfer-type"},{"title":"WalletErrorCode","href":"/sdk-reference/wallets/kotlin/enums/wallet-error-code"},{"title":"WalletType","href":"/sdk-reference/wallets/kotlin/enums/wallet-type"}]},{"group":"Data Classes","pages":[{"title":"ApiKey","href":"/sdk-reference/wallets/kotlin/data-classes/api-key"},{"title":"ApiKeyError.InvalidEnvironmentKey","href":"/sdk-reference/wallets/kotlin/data-classes/api-key-error-invalid-environment-key"},{"title":"ApiKeyError.MalformedKey","href":"/sdk-reference/wallets/kotlin/data-classes/api-key-error-malformed-key"},{"title":"ApiKeyError.OldKey","href":"/sdk-reference/wallets/kotlin/data-classes/api-key-error-old-key"},{"title":"Approval","href":"/sdk-reference/wallets/kotlin/data-classes/approval"},{"title":"ApprovalMetadata.Passkey","href":"/sdk-reference/wallets/kotlin/data-classes/approval-metadata-passkey"},{"title":"ApprovalSignature.Device","href":"/sdk-reference/wallets/kotlin/data-classes/approval-signature-device"},{"title":"ApprovalSignature.Passkey","href":"/sdk-reference/wallets/kotlin/data-classes/approval-signature-passkey"},{"title":"ApprovalSignature.Raw","href":"/sdk-reference/wallets/kotlin/data-classes/approval-signature-raw"},{"title":"Approvals","href":"/sdk-reference/wallets/kotlin/data-classes/approvals"},{"title":"Approvals.PendingApproval","href":"/sdk-reference/wallets/kotlin/data-classes/approvals-pending-approval"},{"title":"Approvals.SubmittedApproval","href":"/sdk-reference/wallets/kotlin/data-classes/approvals-submitted-approval"},{"title":"AuthError.InvalidCredentials","href":"/sdk-reference/wallets/kotlin/data-classes/auth-error-invalid-credentials"},{"title":"AuthError.NotInitialized","href":"/sdk-reference/wallets/kotlin/data-classes/auth-error-not-initialized"},{"title":"AuthError.RateLimited","href":"/sdk-reference/wallets/kotlin/data-classes/auth-error-rate-limited"},{"title":"AuthError.ServerError","href":"/sdk-reference/wallets/kotlin/data-classes/auth-error-server-error"},{"title":"AuthError.TokenExpired","href":"/sdk-reference/wallets/kotlin/data-classes/auth-error-token-expired"},{"title":"AuthError.Unauthorized","href":"/sdk-reference/wallets/kotlin/data-classes/auth-error-unauthorized"},{"title":"BalanceError.BalanceNotFound","href":"/sdk-reference/wallets/kotlin/data-classes/balance-error-balance-not-found"},{"title":"BalanceError.BalanceOperationFailed","href":"/sdk-reference/wallets/kotlin/data-classes/balance-error-balance-operation-failed"},{"title":"BalanceError.Forbidden","href":"/sdk-reference/wallets/kotlin/data-classes/balance-error-forbidden"},{"title":"BalanceError.RateLimited","href":"/sdk-reference/wallets/kotlin/data-classes/balance-error-rate-limited"},{"title":"BalanceError.ServiceNotInitialized","href":"/sdk-reference/wallets/kotlin/data-classes/balance-error-service-not-initialized"},{"title":"BalanceError.Unauthorized","href":"/sdk-reference/wallets/kotlin/data-classes/balance-error-unauthorized"},{"title":"Balances","href":"/sdk-reference/wallets/kotlin/data-classes/balances"},{"title":"Call","href":"/sdk-reference/wallets/kotlin/data-classes/call"},{"title":"ChainInfo.Solana","href":"/sdk-reference/wallets/kotlin/data-classes/chain-info-solana"},{"title":"ChainInfo.Stellar","href":"/sdk-reference/wallets/kotlin/data-classes/chain-info-stellar"},{"title":"Chain.Unknown","href":"/sdk-reference/wallets/kotlin/data-classes/chain-unknown"},{"title":"Configuration","href":"/sdk-reference/wallets/kotlin/data-classes/configuration"},{"title":"DelegatedSigner.ApiKey","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-api-key"},{"title":"DelegatedSignerData","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-data"},{"title":"DelegatedSigner.Device","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-device"},{"title":"DelegatedSigner.Email","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-email"},{"title":"DelegatedSigner.ExternalWallet","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-external-wallet"},{"title":"DelegatedSigner.Locator","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-locator"},{"title":"DelegatedSigner.Passkey","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-passkey"},{"title":"DelegatedSigner.Phone","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-phone"},{"title":"DeviceSignerError.StorageError","href":"/sdk-reference/wallets/kotlin/data-classes/device-signer-error-storage-error"},{"title":"EVMTransactionParams","href":"/sdk-reference/wallets/kotlin/data-classes/evm-transaction-params"},{"title":"FeeConfig","href":"/sdk-reference/wallets/kotlin/data-classes/fee-config"},{"title":"IdentityVerificationError","href":"/sdk-reference/wallets/kotlin/data-classes/identity-verification-error"},{"title":"NetworkError.ConnectionError","href":"/sdk-reference/wallets/kotlin/data-classes/network-error-connection-error"},{"title":"NetworkError.HttpError","href":"/sdk-reference/wallets/kotlin/data-classes/network-error-http-error"},{"title":"NetworkError.ParseError","href":"/sdk-reference/wallets/kotlin/data-classes/network-error-parse-error"},{"title":"NetworkError.ServiceNotInitialized","href":"/sdk-reference/wallets/kotlin/data-classes/network-error-service-not-initialized"},{"title":"NetworkError.TimeoutError","href":"/sdk-reference/wallets/kotlin/data-classes/network-error-timeout-error"},{"title":"NetworkError.UnknownError","href":"/sdk-reference/wallets/kotlin/data-classes/network-error-unknown-error"},{"title":"OnChainData","href":"/sdk-reference/wallets/kotlin/data-classes/on-chain-data"},{"title":"Owner.Address","href":"/sdk-reference/wallets/kotlin/data-classes/owner-address"},{"title":"Owner.Email","href":"/sdk-reference/wallets/kotlin/data-classes/owner-email"},{"title":"Owner.PhoneNumber","href":"/sdk-reference/wallets/kotlin/data-classes/owner-phone-number"},{"title":"Owner.Twitter","href":"/sdk-reference/wallets/kotlin/data-classes/owner-twitter"},{"title":"Owner.UserId","href":"/sdk-reference/wallets/kotlin/data-classes/owner-user-id"},{"title":"PasskeyCredentialInfo","href":"/sdk-reference/wallets/kotlin/data-classes/passkey-credential-info"},{"title":"PasskeyError.Cancelled","href":"/sdk-reference/wallets/kotlin/data-classes/passkey-error-cancelled"},{"title":"PasskeyError.Failed","href":"/sdk-reference/wallets/kotlin/data-classes/passkey-error-failed"},{"title":"PasskeySignMetadata","href":"/sdk-reference/wallets/kotlin/data-classes/passkey-sign-metadata"},{"title":"PasskeySignResult","href":"/sdk-reference/wallets/kotlin/data-classes/passkey-sign-result"},{"title":"RawTransactionParams.Solana","href":"/sdk-reference/wallets/kotlin/data-classes/raw-transaction-params-solana"},{"title":"RawTransactionParams.Stellar","href":"/sdk-reference/wallets/kotlin/data-classes/raw-transaction-params-stellar"},{"title":"RawTransactionParams.StellarSerialized","href":"/sdk-reference/wallets/kotlin/data-classes/raw-transaction-params-stellar-serialized"},{"title":"RecoveryMethod","href":"/sdk-reference/wallets/kotlin/data-classes/recovery-method"},{"title":"Result.Failure","href":"/sdk-reference/wallets/kotlin/data-classes/result-failure"},{"title":"Result.Success","href":"/sdk-reference/wallets/kotlin/data-classes/result-success"},{"title":"SignatureError.ChainNotSupported","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-chain-not-supported"},{"title":"SignatureError.CreationFailed","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-creation-failed"},{"title":"SignatureError.Forbidden","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-forbidden"},{"title":"SignatureError.ServiceNotInitialized","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-service-not-initialized"},{"title":"SignatureError.SigningFailed","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-signing-failed"},{"title":"SignatureError.Timeout","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-timeout"},{"title":"SignatureError.Unauthorized","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-unauthorized"},{"title":"SignatureError.Unknown","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-unknown"},{"title":"SignatureError.UserCancelled","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-user-cancelled"},{"title":"SignerData.ApiKey","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-api-key"},{"title":"SignerData.Device","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-device"},{"title":"SignerData.Email","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-email"},{"title":"SignerData.ExternalWallet","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-external-wallet"},{"title":"SignerData.Passkey","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-passkey"},{"title":"SignerData.Phone","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-phone"},{"title":"SignerData.Server","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-server"},{"title":"SignerData.Unknown","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-unknown"},{"title":"SignerError.Generic","href":"/sdk-reference/wallets/kotlin/data-classes/signer-error-generic"},{"title":"SignerError.SigningFailed","href":"/sdk-reference/wallets/kotlin/data-classes/signer-error-signing-failed"},{"title":"SignerSelection.Delegated","href":"/sdk-reference/wallets/kotlin/data-classes/signer-selection-delegated"},{"title":"SignerType.Email","href":"/sdk-reference/wallets/kotlin/data-classes/signer-type-email"},{"title":"SignerType.ExternalWallet","href":"/sdk-reference/wallets/kotlin/data-classes/signer-type-external-wallet"},{"title":"SignerType.Passkey","href":"/sdk-reference/wallets/kotlin/data-classes/signer-type-passkey"},{"title":"SignerType.Phone","href":"/sdk-reference/wallets/kotlin/data-classes/signer-type-phone"},{"title":"SigningOutput.Passkey","href":"/sdk-reference/wallets/kotlin/data-classes/signing-output-passkey"},{"title":"SigningOutput.Standard","href":"/sdk-reference/wallets/kotlin/data-classes/signing-output-standard"},{"title":"SolanaTransactionParams","href":"/sdk-reference/wallets/kotlin/data-classes/solana-transaction-params"},{"title":"StellarTransactionParams","href":"/sdk-reference/wallets/kotlin/data-classes/stellar-transaction-params"},{"title":"TEEError.Generic","href":"/sdk-reference/wallets/kotlin/data-classes/tee-error-generic"},{"title":"TEEError.InvalidPayload","href":"/sdk-reference/wallets/kotlin/data-classes/tee-error-invalid-payload"},{"title":"TokenAccountBalance","href":"/sdk-reference/wallets/kotlin/data-classes/token-account-balance"},{"title":"TokenAccountType.Card","href":"/sdk-reference/wallets/kotlin/data-classes/token-account-type-card"},{"title":"TokenAccountType.Unknown","href":"/sdk-reference/wallets/kotlin/data-classes/token-account-type-unknown"},{"title":"TokenAmount","href":"/sdk-reference/wallets/kotlin/data-classes/token-amount"},{"title":"TokenBalance","href":"/sdk-reference/wallets/kotlin/data-classes/token-balance"},{"title":"Transaction","href":"/sdk-reference/wallets/kotlin/data-classes/transaction"},{"title":"TransactionErrorDetails","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-details"},{"title":"TransactionErrorDetails.Revert","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-details-revert"},{"title":"TransactionError.Forbidden","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-forbidden"},{"title":"TransactionError.InvalidTransactionState","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-invalid-transaction-state"},{"title":"TransactionError.RateLimited","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-rate-limited"},{"title":"TransactionError.ServiceNotInitialized","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-service-not-initialized"},{"title":"TransactionError.SigningFailed","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-signing-failed"},{"title":"TransactionError.Timeout","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-timeout"},{"title":"TransactionError.TransactionCreationFailed","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-transaction-creation-failed"},{"title":"TransactionError.TransactionFailed","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-transaction-failed"},{"title":"TransactionError.TransactionNotFound","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-transaction-not-found"},{"title":"TransactionError.TransactionOperationFailed","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-transaction-operation-failed"},{"title":"TransactionError.Unauthorized","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-unauthorized"},{"title":"TransactionError.UserCancelled","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-user-cancelled"},{"title":"Transfer","href":"/sdk-reference/wallets/kotlin/data-classes/transfer"},{"title":"TransferError.LoadFailed","href":"/sdk-reference/wallets/kotlin/data-classes/transfer-error-load-failed"},{"title":"TransferError.ServiceNotInitialized","href":"/sdk-reference/wallets/kotlin/data-classes/transfer-error-service-not-initialized"},{"title":"TransferError.Unauthorized","href":"/sdk-reference/wallets/kotlin/data-classes/transfer-error-unauthorized"},{"title":"TransferError.Unknown","href":"/sdk-reference/wallets/kotlin/data-classes/transfer-error-unknown"},{"title":"TransferList","href":"/sdk-reference/wallets/kotlin/data-classes/transfer-list"},{"title":"UserOperation","href":"/sdk-reference/wallets/kotlin/data-classes/user-operation"},{"title":"WalletConfig","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-config"},{"title":"WalletError.ChainNotSupported","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-chain-not-supported"},{"title":"WalletError.DelegatedSignerConflict","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-delegated-signer-conflict"},{"title":"WalletError.DeviceKeyIndexUnreadable","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-device-key-index-unreadable"},{"title":"WalletError.DeviceSignerNotSupported","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-device-signer-not-supported"},{"title":"WalletError.DuplicateRecoverySigner","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-duplicate-recovery-signer"},{"title":"WalletError.Forbidden","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-forbidden"},{"title":"WalletError.InvalidInput","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-invalid-input"},{"title":"WalletError.InvalidRecoveryConfig","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-invalid-recovery-config"},{"title":"WalletError.InvalidSigner","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-invalid-signer"},{"title":"WalletError.LastRecoverySigner","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-last-recovery-signer"},{"title":"WalletError.RateLimited","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-rate-limited"},{"title":"WalletError.RecoveryAdminSignerConflict","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-recovery-admin-signer-conflict"},{"title":"WalletError.RecoveryNotSupportedOnApiVersion","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-recovery-not-supported-on-api-version"},{"title":"WalletError.RecoveryNotSupportedOnChain","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-recovery-not-supported-on-chain"},{"title":"WalletError.RecoverySignerConflict","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-recovery-signer-conflict"},{"title":"WalletError.RecoverySignerNotAllowed","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-recovery-signer-not-allowed"},{"title":"WalletError.ServiceNotInitialized","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-service-not-initialized"},{"title":"WalletError.SignerLimitExceeded","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-signer-limit-exceeded"},{"title":"WalletError.SignerNotRegistered","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-signer-not-registered"},{"title":"WalletError.SignerRequired","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-signer-required"},{"title":"WalletError.SigningError","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-signing-error"},{"title":"WalletError.Unauthorized","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-unauthorized"},{"title":"WalletError.WalletNotFound","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-wallet-not-found"},{"title":"WalletError.WalletOperationFailed","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-wallet-operation-failed"},{"title":"WebViewMessage.Custom","href":"/sdk-reference/wallets/kotlin/data-classes/web-view-message-custom"}]},{"group":"Sealed Classes","pages":[{"title":"ApprovalMetadata","href":"/sdk-reference/wallets/kotlin/sealed-classes/approval-metadata"},{"title":"ApprovalSignature","href":"/sdk-reference/wallets/kotlin/sealed-classes/approval-signature"},{"title":"DelegatedSigner","href":"/sdk-reference/wallets/kotlin/sealed-classes/delegated-signer"},{"title":"DeviceSignerError","href":"/sdk-reference/wallets/kotlin/sealed-classes/device-signer-error"},{"title":"Owner","href":"/sdk-reference/wallets/kotlin/sealed-classes/owner"},{"title":"RawTransactionParams","href":"/sdk-reference/wallets/kotlin/sealed-classes/raw-transaction-params"},{"title":"SignerData","href":"/sdk-reference/wallets/kotlin/sealed-classes/signer-data"},{"title":"SignerError","href":"/sdk-reference/wallets/kotlin/sealed-classes/signer-error"},{"title":"SignerSelection","href":"/sdk-reference/wallets/kotlin/sealed-classes/signer-selection"},{"title":"SignerType","href":"/sdk-reference/wallets/kotlin/sealed-classes/signer-type"},{"title":"SigningOutput","href":"/sdk-reference/wallets/kotlin/sealed-classes/signing-output"},{"title":"TEEError","href":"/sdk-reference/wallets/kotlin/sealed-classes/tee-error"}]},{"group":"Sealed Interfaces","pages":[{"title":"ApiKeyError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/api-key-error"},{"title":"AuthError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/auth-error"},{"title":"BalanceError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/balance-error"},{"title":"Chain","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/chain"},{"title":"ChainInfo","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/chain-info"},{"title":"ConfigurationError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/configuration-error"},{"title":"CrossmintError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/crossmint-error"},{"title":"CrossmintErrorCode","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/crossmint-error-code"},{"title":"EVMChain","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/evm-chain"},{"title":"NetworkError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/network-error"},{"title":"PasskeyError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/passkey-error"},{"title":"Result","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/result"},{"title":"SignatureError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/signature-error"},{"title":"SolanaChain","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/solana-chain"},{"title":"StellarChain","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/stellar-chain"},{"title":"SupportedChain","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/supported-chain"},{"title":"TokenAccountType","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/token-account-type"},{"title":"TransactionError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/transaction-error"},{"title":"TransactionParams","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/transaction-params"},{"title":"TransferError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/transfer-error"},{"title":"WalletError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/wallet-error"}]},{"group":"Objects","pages":[{"title":"ApiKey.Companion","href":"/sdk-reference/wallets/kotlin/objects/api-key-companion"},{"title":"Chain.Companion","href":"/sdk-reference/wallets/kotlin/objects/chain-companion"},{"title":"Configuration.Companion","href":"/sdk-reference/wallets/kotlin/objects/configuration-companion"},{"title":"CrossmintAuthManager.Companion","href":"/sdk-reference/wallets/kotlin/objects/crossmint-auth-manager-companion"},{"title":"Crossmint.Companion","href":"/sdk-reference/wallets/kotlin/objects/crossmint-companion"},{"title":"CrossmintSDK.Companion","href":"/sdk-reference/wallets/kotlin/objects/crossmint-sdk-companion"},{"title":"DelegatedSignerStatus.Companion","href":"/sdk-reference/wallets/kotlin/objects/delegated-signer-status-companion"},{"title":"DelegatedSignerType.Companion","href":"/sdk-reference/wallets/kotlin/objects/delegated-signer-type-companion"},{"title":"DeviceSignerError.HardwareUnavailable","href":"/sdk-reference/wallets/kotlin/objects/device-signer-error-hardware-unavailable"},{"title":"DeviceSignerError.InvalidMessage","href":"/sdk-reference/wallets/kotlin/objects/device-signer-error-invalid-message"},{"title":"DeviceSignerError.KeyGenerationFailed","href":"/sdk-reference/wallets/kotlin/objects/device-signer-error-key-generation-failed"},{"title":"DeviceSignerError.KeyNotFound","href":"/sdk-reference/wallets/kotlin/objects/device-signer-error-key-not-found"},{"title":"DeviceSignerError.SigningFailed","href":"/sdk-reference/wallets/kotlin/objects/device-signer-error-signing-failed"},{"title":"EncryptedSharedPreferenceStorage.Companion","href":"/sdk-reference/wallets/kotlin/objects/encrypted-shared-preference-storage-companion"},{"title":"EVMChain.Apechain","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-apechain"},{"title":"EVMChain.Apex","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-apex"},{"title":"EVMChain.Arbitrum","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-arbitrum"},{"title":"EVMChain.ArbitrumNova","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-arbitrum-nova"},{"title":"EVMChain.ArbitrumSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-arbitrum-sepolia"},{"title":"EVMChain.AstarZkEVM","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-astar-zk-evm"},{"title":"EVMChain.Avalanche","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-avalanche"},{"title":"EVMChain.AvalancheFuji","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-avalanche-fuji"},{"title":"EVMChain.BarretTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-barret-testnet"},{"title":"EVMChain.Base","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-base"},{"title":"EVMChain.BaseGoerli","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-base-goerli"},{"title":"EVMChain.BaseSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-base-sepolia"},{"title":"EVMChain.Boss","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-boss"},{"title":"EVMChain.BSCTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-bsc-testnet"},{"title":"EVMChain.Chiliz","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-chiliz"},{"title":"EVMChain.ChilizSpicyTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-chiliz-spicy-testnet"},{"title":"EVMChain.Coti","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-coti"},{"title":"EVMChain.CotiTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-coti-testnet"},{"title":"EVMChain.Curtis","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-curtis"},{"title":"EVMChain.Ethereum","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-ethereum"},{"title":"EVMChain.EthereumGoerli","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-ethereum-goerli"},{"title":"EVMChain.EthereumSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-ethereum-sepolia"},{"title":"EVMChain.HypersonicTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-hypersonic-testnet"},{"title":"EVMChain.Lightlink","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-lightlink"},{"title":"EVMChain.LightlinkPegasus","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-lightlink-pegasus"},{"title":"EVMChain.Mode","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-mode"},{"title":"EVMChain.ModeSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-mode-sepolia"},{"title":"EVMChain.Optimism","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-optimism"},{"title":"EVMChain.OptimismGoerli","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-optimism-goerli"},{"title":"EVMChain.OptimismSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-optimism-sepolia"},{"title":"EVMChain.Polygon","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-polygon"},{"title":"EVMChain.PolygonAmoy","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-polygon-amoy"},{"title":"EVMChain.PolygonMumbai","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-polygon-mumbai"},{"title":"EVMChain.Rari","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-rari"},{"title":"EVMChain.RariTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-rari-testnet"},{"title":"EVMChain.Scroll","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-scroll"},{"title":"EVMChain.ScrollSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-scroll-sepolia"},{"title":"EVMChain.SeiAtlantic2Testnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-sei-atlantic2testnet"},{"title":"EVMChain.SeiPacific1","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-sei-pacific1"},{"title":"EVMChain.Shape","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-shape"},{"title":"EVMChain.ShapeSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-shape-sepolia"},{"title":"EVMChain.SkaleNebula","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-skale-nebula"},{"title":"EVMChain.SkaleNebulaTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-skale-nebula-testnet"},{"title":"EVMChain.Soneium","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-soneium"},{"title":"EVMChain.SoneiumMinatoTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-soneium-minato-testnet"},{"title":"EVMChain.Space","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-space"},{"title":"EVMChain.SpaceTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-space-testnet"},{"title":"EVMChain.Story","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-story"},{"title":"EVMChain.StoryTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-story-testnet"},{"title":"EVMChain.VerifyTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-verify-testnet"},{"title":"EVMChain.Viction","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-viction"},{"title":"EVMChain.VictionTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-viction-testnet"},{"title":"EVMChain.Xai","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-xai"},{"title":"EVMChain.XaiSepoliaTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-xai-sepolia-testnet"},{"title":"EVMChain.ZenchainTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-zenchain-testnet"},{"title":"EVMChain.Zkatana","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-zkatana"},{"title":"EVMChain.Zkyoto","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-zkyoto"},{"title":"EVMChain.Zora","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-zora"},{"title":"EVMChain.ZoraGoerli","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-zora-goerli"},{"title":"EVMChain.ZoraSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-zora-sepolia"},{"title":"InsecurePersistentSessionStore.Companion","href":"/sdk-reference/wallets/kotlin/objects/insecure-persistent-session-store-companion"},{"title":"KeystoreKeyStorage.Companion","href":"/sdk-reference/wallets/kotlin/objects/keystore-key-storage-companion"},{"title":"SignerError.Cancelled","href":"/sdk-reference/wallets/kotlin/objects/signer-error-cancelled"},{"title":"SignerError.InvalidEmail","href":"/sdk-reference/wallets/kotlin/objects/signer-error-invalid-email"},{"title":"SignerError.NotInitialized","href":"/sdk-reference/wallets/kotlin/objects/signer-error-not-initialized"},{"title":"SignerError.NotStarted","href":"/sdk-reference/wallets/kotlin/objects/signer-error-not-started"},{"title":"SignerError.TeeNotStarted","href":"/sdk-reference/wallets/kotlin/objects/signer-error-tee-not-started"},{"title":"SignerSelection.Admin","href":"/sdk-reference/wallets/kotlin/objects/signer-selection-admin"},{"title":"SignerType.ApiKey","href":"/sdk-reference/wallets/kotlin/objects/signer-type-api-key"},{"title":"SolanaChain.Solana","href":"/sdk-reference/wallets/kotlin/objects/solana-chain-solana"},{"title":"StellarChain.Stellar","href":"/sdk-reference/wallets/kotlin/objects/stellar-chain-stellar"},{"title":"TEEError.EncryptionUnavailable","href":"/sdk-reference/wallets/kotlin/objects/tee-error-encryption-unavailable"},{"title":"TEEError.ErrorLoadingService","href":"/sdk-reference/wallets/kotlin/objects/tee-error-error-loading-service"},{"title":"TEEError.HandshakeFailed","href":"/sdk-reference/wallets/kotlin/objects/tee-error-handshake-failed"},{"title":"TEEError.HandshakeRequired","href":"/sdk-reference/wallets/kotlin/objects/tee-error-handshake-required"},{"title":"TEEError.InvalidSignature","href":"/sdk-reference/wallets/kotlin/objects/tee-error-invalid-signature"},{"title":"TEEError.JWTRequired","href":"/sdk-reference/wallets/kotlin/objects/tee-error-jwt-required"},{"title":"TEEError.SignerStatusUnavailable","href":"/sdk-reference/wallets/kotlin/objects/tee-error-signer-status-unavailable"},{"title":"TEEError.Timeout","href":"/sdk-reference/wallets/kotlin/objects/tee-error-timeout"},{"title":"TEEError.UserCancelled","href":"/sdk-reference/wallets/kotlin/objects/tee-error-user-cancelled"},{"title":"TinkSecureStorage.Companion","href":"/sdk-reference/wallets/kotlin/objects/tink-secure-storage-companion"},{"title":"TinkWithFallbackSessionStore.Companion","href":"/sdk-reference/wallets/kotlin/objects/tink-with-fallback-session-store-companion"},{"title":"TokenAccountType.Wallet","href":"/sdk-reference/wallets/kotlin/objects/token-account-type-wallet"}]},{"group":"Composables","pages":[{"title":"CrossmintNonCustodialSignerProvider","href":"/sdk-reference/wallets/kotlin/composables/crossmint-non-custodial-signer-provider"},{"title":"CrossmintTEEWebView","href":"/sdk-reference/wallets/kotlin/composables/crossmint-tee-web-view"},{"title":"CrossmintTEEWebViewContainer","href":"/sdk-reference/wallets/kotlin/composables/crossmint-tee-web-view-container"},{"title":"PlatformSpecificProvider","href":"/sdk-reference/wallets/kotlin/composables/platform-specific-provider"}]},{"group":"Functions","pages":[{"title":"configure","href":"/sdk-reference/wallets/kotlin/functions/configure"},{"title":"createAndroidTEE","href":"/sdk-reference/wallets/kotlin/functions/create-android-tee"},{"title":"createAuthManager","href":"/sdk-reference/wallets/kotlin/functions/create-auth-manager"},{"title":"createCrossmintWallets","href":"/sdk-reference/wallets/kotlin/functions/create-crossmint-wallets"},{"title":"createDefaultAuthManager","href":"/sdk-reference/wallets/kotlin/functions/create-default-auth-manager"},{"title":"createDefaultSessionStore","href":"/sdk-reference/wallets/kotlin/functions/create-default-session-store"},{"title":"createEVMWallet","href":"/sdk-reference/wallets/kotlin/functions/create-evm-wallet"},{"title":"createPasskeyCredential","href":"/sdk-reference/wallets/kotlin/functions/create-passkey-credential"},{"title":"createSolanaWallet","href":"/sdk-reference/wallets/kotlin/functions/create-solana-wallet"},{"title":"createStellarWallet","href":"/sdk-reference/wallets/kotlin/functions/create-stellar-wallet"},{"title":"createWallet","href":"/sdk-reference/wallets/kotlin/functions/create-wallet"},{"title":"CrossmintTEEWebView","href":"/sdk-reference/wallets/kotlin/functions/crossmint-tee-web-view"},{"title":"flatMap","href":"/sdk-reference/wallets/kotlin/functions/flat-map"},{"title":"fold","href":"/sdk-reference/wallets/kotlin/functions/fold"},{"title":"getOrNull","href":"/sdk-reference/wallets/kotlin/functions/get-or-null"},{"title":"getOrThrow","href":"/sdk-reference/wallets/kotlin/functions/get-or-throw"},{"title":"isMainThread","href":"/sdk-reference/wallets/kotlin/functions/is-main-thread"},{"title":"makePasskeySignerCallback","href":"/sdk-reference/wallets/kotlin/functions/make-passkey-signer-callback"},{"title":"map","href":"/sdk-reference/wallets/kotlin/functions/map"},{"title":"mapError","href":"/sdk-reference/wallets/kotlin/functions/map-error"},{"title":"normalizeEmail","href":"/sdk-reference/wallets/kotlin/functions/normalize-email"},{"title":"runCatching","href":"/sdk-reference/wallets/kotlin/functions/run-catching"},{"title":"useSigner","href":"/sdk-reference/wallets/kotlin/functions/use-signer"},{"title":"waitForMessage","href":"/sdk-reference/wallets/kotlin/functions/wait-for-message"}]},{"group":"Properties","pages":[{"title":"LocalCrossmintSDK","href":"/sdk-reference/wallets/kotlin/properties/local-crossmint-sdk"}]}]},{"group":"Crossmint Auth","pages":[{"group":"Typescript SDK","icon":"/images/icons/ts-logo-128.png","pages":[{"title":"Getting Started","href":"/sdk-reference/auth/typescript/overview"},{"title":"Reference","href":"/sdk-reference/auth/typescript/reference"},{"group":"Classes","pages":[{"title":"CrossmintAuth","href":"/sdk-reference/auth/typescript/classes/CrossmintAuth"},{"title":"JwksUnavailableError","href":"/sdk-reference/auth/typescript/classes/JwksUnavailableError"}]},{"group":"Type Aliases","pages":[{"title":"CrossmintAuthServerOptions","href":"/sdk-reference/auth/typescript/type-aliases/CrossmintAuthServerOptions"},{"title":"GenericRequest","href":"/sdk-reference/auth/typescript/type-aliases/GenericRequest"},{"title":"GenericResponse","href":"/sdk-reference/auth/typescript/type-aliases/GenericResponse"},{"title":"JWKSInput","href":"/sdk-reference/auth/typescript/type-aliases/JWKSInput"},{"title":"VerifyCrossmintJwtOptions","href":"/sdk-reference/auth/typescript/type-aliases/VerifyCrossmintJwtOptions"}]},{"group":"Variables","pages":[{"title":"CROSSMINT_API_VERSION","href":"/sdk-reference/auth/typescript/variables/CROSSMINT_API_VERSION"},{"title":"SDK_NAME","href":"/sdk-reference/auth/typescript/variables/SDK_NAME"},{"title":"SDK_VERSION","href":"/sdk-reference/auth/typescript/variables/SDK_VERSION"}]},{"group":"Functions","pages":[{"title":"assertJwtAudience","href":"/sdk-reference/auth/typescript/functions/assertJwtAudience"},{"title":"createCrossmint","href":"/sdk-reference/auth/typescript/functions/createCrossmint"},{"title":"verifyCrossmintJwt","href":"/sdk-reference/auth/typescript/functions/verifyCrossmintJwt"}]}]},{"group":"React SDK","icon":"/images/icons/react.svg","pages":[{"title":"Get Started","href":"/sdk-reference/auth/react/get-started"},{"title":"Providers","href":"/sdk-reference/auth/react/providers"},{"title":"Hooks","href":"/sdk-reference/auth/react/hooks"},{"title":"Components","href":"/sdk-reference/auth/react/components"}]},{"group":"React Native SDK","icon":"/images/icons/react-native.svg","pages":[{"title":"Get Started","href":"/sdk-reference/auth/react-native/get-started"},{"title":"Providers","href":"/sdk-reference/auth/react-native/providers"},{"title":"Hooks","href":"/sdk-reference/auth/react-native/hooks"}]}]}]}]},{"dropdown":"Wallets V0","icon":"tag","groups":[{"group":"Introduction","pages":[{"title":"Overview","href":"/wallets/v0/overview"},{"title":"Why Smart Contract Wallets","href":"/wallets/v0/why-smart-wallets"}]},{"group":"Quickstarts ⚡","pages":[{"title":"React","href":"/wallets/v0/quickstarts/react"},{"title":"Node.js","href":"/wallets/v0/quickstarts/nodejs"},{"title":"REST API","href":"/wallets/v0/quickstarts/restapi"},{"title":"React Native","href":"/wallets/v0/quickstarts/react-native"},{"title":"Swift","href":"/wallets/v0/quickstarts/swift"},{"title":"Kotlin","href":"/wallets/v0/quickstarts/kotlin"}]},{"group":"Concepts","pages":[{"title":"Architecture","href":"/wallets/v0/architecture"},{"group":"Signers and Custody","pages":[{"title":"Custody Modalities","href":"/wallets/v0/concepts/custody-modalities"},{"title":"Wallet Signers","href":"/wallets/v0/concepts/wallet-signers"},{"title":"Signer Decision Tree","href":"/wallets/v0/concepts/decision-tree"},{"title":"Common Signer Configurations","href":"/wallets/v0/concepts/common-signer-configurations"}]}]},{"group":"Guides","pages":[{"group":"Wallet Actions","pages":[{"title":"Create Wallet","href":"/wallets/v0/guides/create-wallet"},{"title":"Transfer Tokens","href":"/wallets/v0/guides/transfer-tokens"},{"title":"Check Balances","href":"/wallets/v0/guides/check-balances"},{"title":"Get Staging Tokens (USDXM)","href":"/wallets/v0/guides/get-staging-tokens"},{"title":"List Wallet Transfers","href":"/wallets/v0/guides/list-transfers"},{"group":"Send Transaction","pages":[{"title":"EVM","href":"/wallets/v0/guides/send-transaction-evm"},{"title":"Solana","href":"/wallets/v0/guides/send-transaction-solana"},{"title":"Stellar","href":"/wallets/v0/guides/send-transaction-stellar"}]},{"group":"Sign Message","pages":[{"title":"EVM","href":"/wallets/v0/guides/sign-message-evm"},{"title":"Solana","href":"/wallets/v0/guides/sign-message-solana"},{"title":"Stellar","href":"/wallets/v0/guides/sign-message-stellar"}]}]},{"group":"Wallet Extensions","pages":[{"group":"Swapping \u0026 Bridging","pages":[{"title":"Swapping \u0026 Bridging Overview","sidebarTitle":"Overview","href":"/wallets/guides/wallet-extensions/swapping-and-bridging"},{"title":"Jupiter","href":"/wallets/v0/guides/wallet-extensions/swap-jupiter"},{"title":"LI.FI","href":"/wallets/v0/guides/wallet-extensions/bridge-lifi"}]},{"title":"Yield Generation","href":"/wallets/v0/guides/wallet-extensions/generate-yield"},{"title":"Rain Card Issuance","sidebarTitle":"Rain","href":"/wallets/guides/wallet-extensions/credit-cards"}]},{"group":"Signers","pages":[{"title":"Registering a Signer","href":"/wallets/v0/guides/signers/registering-a-signer"},{"title":"Email OTP Signer","href":"/wallets/v0/guides/signers/email-otp"},{"title":"SMS OTP Signer","href":"/wallets/v0/guides/signers/sms-otp"},{"title":"Passkey Signer","href":"/wallets/v0/guides/signers/passkey"},{"title":"External Wallet Signer","href":"/wallets/v0/guides/signers/external-wallet"},{"title":"Device Key Signer","href":"/wallets/v0/guides/signers/device-key"},{"title":"Server Signer","href":"/wallets/v0/guides/signers/server-key"},{"title":"Cloud KMS Signers","href":"/wallets/guides/signers/cloud-kms"},{"title":"API Key Signer (Deprecated)","href":"/wallets/v0/guides/signers/api-key"},{"title":"Social Recovery Signer","href":"/wallets/v0/guides/signers/social-recovery"},{"title":"Recover a Wallet","href":"/wallets/guides/recovery/wallet-recovery"}]},{"group":"Advanced","pages":[{"title":"Bring Your Own Auth","href":"/wallets/v0/guides/bring-your-own-auth"},{"title":"Export Private Key","href":"/wallets/v0/guides/export-private-key"},{"title":"Cover Transaction Fees for Your Users","href":"/wallets/guides/gas-sponsorship"},{"title":"Wallet Webhooks","href":"/wallets/guides/webhooks"},{"title":"Error Handling","href":"/wallets/v0/guides/error-handling"}]}]},{"group":"API Reference","pages":[{"group":"REST","icon":"brackets-curly","pages":[{"title":"Introduction","href":"/api-reference/introduction"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets","title":"Create Wallet","href":"/api-reference/wallets/create-wallet"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}","title":"Get Wallet By Locator","href":"/api-reference/wallets/get-wallet-by-locator"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}/balances","title":"Get Wallet Balance","href":"/api-reference/wallets/get-wallet-balance"},{"openapi":"api-reference/_open-api/Wallets.json POST /v1-alpha2/wallets/{walletLocator}/balances","title":"Fund Wallet","href":"/api-reference/wallets/fund-wallet"},{"openapi":"api-reference/_open-api/Wallets.json GET /2022-06-09/wallets/{locator}/nfts","title":"Get NFTs from Wallet","href":"/api-reference/wallets/get-nfts-from-wallet"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets/{walletLocator}/transactions","title":"Create Transaction","href":"/api-reference/wallets/create-transaction"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}/transactions/{transactionId}","title":"Get Transaction","href":"/api-reference/wallets/get-transaction"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}/transactions","title":"Get Wallet Transactions","href":"/api-reference/wallets/get-transactions"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets/{walletLocator}/transactions/{transactionId}/approvals","title":"Approve Transaction","href":"/api-reference/wallets/approve-transaction"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets/{walletLocator}/signatures","title":"Create Signature","href":"/api-reference/wallets/create-signature"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}/signatures","title":"Get All Signatures","href":"/api-reference/wallets/get-signatures"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}/signatures/{signatureId}","title":"Get Signature","href":"/api-reference/wallets/get-signature"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets/{walletLocator}/signatures/{signatureId}/approvals","title":"Approve Signature","href":"/api-reference/wallets/approve-signature"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets/{walletLocator}/signers","title":"Create Delegated Signer","href":"/api-reference/wallets/register-delegated-key"},{"openapi":"api-reference/_open-api/Wallets.json DELETE /2025-06-09/wallets/{walletLocator}/signers/{signer}","title":"Remove Delegated Signer","href":"/api-reference/wallets/remove-delegated-key"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}/signers/{signer}","title":"Get Delegated Signer","href":"/api-reference/wallets/get-signer"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets/{walletLocator}/recovery-methods","title":"Add Recovery Method","href":"/api-reference/wallets/add-recovery-method"},{"openapi":"api-reference/_open-api/Wallets.json DELETE /2025-06-09/wallets/{walletLocator}/recovery-methods/{signer}","title":"Remove Recovery Method","href":"/api-reference/wallets/remove-recovery-method"},{"openapi":"api-reference/_open-api/Wallets.json POST /2025-06-09/wallets/{walletLocator}/tokens/{tokenLocator}/transfers","title":"Transfer Token","href":"/api-reference/wallets/transfer-token"},{"openapi":"api-reference/_open-api/Wallets.json GET /2025-06-09/wallets/{walletLocator}/tokens/{tokenLocator}/transfers/{transactionId}","title":"Get Transfer Transaction","href":"/api-reference/wallets/get-transfer-token"},{"title":"List Wallet Transfers","openapi":"api-reference/_open-api/Wallets.json GET /unstable/wallets/{walletLocator}/transfers","href":"/api-reference/wallets/list-transfers"}]},{"group":"Typescript SDK","icon":"/images/icons/ts-logo-128.png","pages":[{"title":"Getting Started","href":"/sdk-reference/wallets/v0/typescript/overview"},{"title":"Reference","href":"/sdk-reference/wallets/v0/typescript/reference"},{"group":"Classes","pages":[{"title":"CrossmintWallets","href":"/sdk-reference/wallets/v0/typescript/classes/CrossmintWallets"},{"title":"Wallet","href":"/sdk-reference/wallets/v0/typescript/classes/Wallet"},{"title":"EVMWallet","href":"/sdk-reference/wallets/v0/typescript/classes/EVMWallet"},{"title":"SolanaWallet","href":"/sdk-reference/wallets/v0/typescript/classes/SolanaWallet"},{"title":"StellarWallet","href":"/sdk-reference/wallets/v0/typescript/classes/StellarWallet"},{"title":"WalletsApiClient","href":"/sdk-reference/wallets/v0/typescript/classes/WalletsApiClient"}]},{"group":"Interfaces","pages":[{"title":"ExportableSigner","href":"/sdk-reference/wallets/v0/typescript/interfaces/ExportableSigner"},{"title":"Signer","href":"/sdk-reference/wallets/v0/typescript/interfaces/Signer"}]},{"group":"Type Aliases","pages":[{"title":"Activity","href":"/sdk-reference/wallets/v0/typescript/type-aliases/Activity"},{"title":"Balances","href":"/sdk-reference/wallets/v0/typescript/type-aliases/Balances"},{"title":"Chain","href":"/sdk-reference/wallets/v0/typescript/type-aliases/Chain"},{"title":"DelegatedSigner","href":"/sdk-reference/wallets/v0/typescript/type-aliases/DelegatedSigner"},{"title":"EVMChain","href":"/sdk-reference/wallets/v0/typescript/type-aliases/EVMChain"},{"title":"EVMTransactionInput","href":"/sdk-reference/wallets/v0/typescript/type-aliases/EVMTransactionInput"},{"title":"EmailSignerConfig","href":"/sdk-reference/wallets/v0/typescript/type-aliases/EmailSignerConfig"},{"title":"EvmExternalWalletSignerConfig","href":"/sdk-reference/wallets/v0/typescript/type-aliases/EvmExternalWalletSignerConfig"},{"title":"ExportSignerTEEConnection","href":"/sdk-reference/wallets/v0/typescript/type-aliases/ExportSignerTEEConnection"},{"title":"ExternalWalletSignerConfigForChain","href":"/sdk-reference/wallets/v0/typescript/type-aliases/ExternalWalletSignerConfigForChain"},{"title":"PhoneSignerConfig","href":"/sdk-reference/wallets/v0/typescript/type-aliases/PhoneSignerConfig"},{"title":"Signature","href":"/sdk-reference/wallets/v0/typescript/type-aliases/Signature"},{"title":"SignerConfigForChain","href":"/sdk-reference/wallets/v0/typescript/type-aliases/SignerConfigForChain"},{"title":"SolanaChain","href":"/sdk-reference/wallets/v0/typescript/type-aliases/SolanaChain"},{"title":"SolanaExternalWalletSignerConfig","href":"/sdk-reference/wallets/v0/typescript/type-aliases/SolanaExternalWalletSignerConfig"},{"title":"SolanaTransactionInput","href":"/sdk-reference/wallets/v0/typescript/type-aliases/SolanaTransactionInput"},{"title":"StellarChain","href":"/sdk-reference/wallets/v0/typescript/type-aliases/StellarChain"},{"title":"StellarExternalWalletSignerConfig","href":"/sdk-reference/wallets/v0/typescript/type-aliases/StellarExternalWalletSignerConfig"},{"title":"Transaction","href":"/sdk-reference/wallets/v0/typescript/type-aliases/Transaction"},{"title":"WalletArgsFor","href":"/sdk-reference/wallets/v0/typescript/type-aliases/WalletArgsFor"},{"title":"WalletPlugin","href":"/sdk-reference/wallets/v0/typescript/type-aliases/WalletPlugin"}]},{"group":"Functions","pages":[{"title":"createCrossmint","href":"/sdk-reference/wallets/v0/typescript/functions/createCrossmint"},{"title":"isExportableSigner","href":"/sdk-reference/wallets/v0/typescript/functions/isExportableSigner"}]}]},{"group":"React SDK","icon":"/images/icons/react.svg","pages":[{"title":"Get Started","href":"/sdk-reference/wallets/v0/react/get-started"},{"title":"Providers","href":"/sdk-reference/wallets/v0/react/providers"},{"title":"Hooks","href":"/sdk-reference/wallets/v0/react/hooks"},{"title":"Components","href":"/sdk-reference/wallets/react/components"}]},{"group":"React Native SDK","icon":"/images/icons/react-native.svg","pages":[{"title":"Get Started","href":"/sdk-reference/wallets/v0/react-native/get-started"},{"title":"Providers","href":"/sdk-reference/wallets/v0/react-native/providers"},{"title":"Hooks","href":"/sdk-reference/wallets/v0/react-native/hooks"},{"title":"Components","href":"/sdk-reference/wallets/react-native/components"}]},{"group":"Swift SDK","icon":"/images/icons/swift.svg","pages":[{"group":"Classes","pages":[{"title":"ABI","href":"/sdk-reference/wallets/swift/classes/abi"},{"title":"ApiKeySigner","href":"/sdk-reference/wallets/swift/classes/apikeysigner"},{"title":"CrossmintAuthManager","href":"/sdk-reference/wallets/swift/classes/crossmintauthmanager"},{"title":"CrossmintSDK","href":"/sdk-reference/wallets/swift/classes/crossmintsdk"},{"title":"DefaultAuthClient","href":"/sdk-reference/wallets/swift/classes/defaultauthclient"},{"title":"DefaultAuthService","href":"/sdk-reference/wallets/swift/classes/defaultauthservice"},{"title":"DefaultCrossmintWallets","href":"/sdk-reference/wallets/swift/classes/defaultcrossmintwallets"},{"title":"DefaultSmartWalletService","href":"/sdk-reference/wallets/swift/classes/defaultsmartwalletservice"},{"title":"EVMEmailSigner","href":"/sdk-reference/wallets/swift/classes/evmemailsigner"},{"title":"EVMKeyPairSigner","href":"/sdk-reference/wallets/swift/classes/evmkeypairsigner"},{"title":"EVMWallet","href":"/sdk-reference/wallets/swift/classes/evmwallet"},{"title":"PasskeySigner","href":"/sdk-reference/wallets/swift/classes/passkeysigner"},{"title":"PhoneSigner","href":"/sdk-reference/wallets/swift/classes/phonesigner"},{"title":"SolanaEmailSigner","href":"/sdk-reference/wallets/swift/classes/solanaemailsigner"},{"title":"SolanaWallet","href":"/sdk-reference/wallets/swift/classes/solanawallet"},{"title":"StellarEmailSigner","href":"/sdk-reference/wallets/swift/classes/stellaremailsigner"},{"title":"StellarWallet","href":"/sdk-reference/wallets/swift/classes/stellarwallet"},{"title":"Wallet","href":"/sdk-reference/wallets/swift/classes/wallet"}]},{"group":"Protocols","pages":[{"title":"AdminSignerApiModel","href":"/sdk-reference/wallets/swift/protocols/adminsignerapimodel"},{"title":"AdminSignerData","href":"/sdk-reference/wallets/swift/protocols/adminsignerdata"},{"title":"AnyChain","href":"/sdk-reference/wallets/swift/protocols/anychain"},{"title":"ApprovalSigner","href":"/sdk-reference/wallets/swift/protocols/approvalsigner"},{"title":"AuthClient","href":"/sdk-reference/wallets/swift/protocols/authclient"},{"title":"AuthManager","href":"/sdk-reference/wallets/swift/protocols/authmanager"},{"title":"AuthService","href":"/sdk-reference/wallets/swift/protocols/authservice"},{"title":"BalanceService","href":"/sdk-reference/wallets/swift/protocols/balanceservice"},{"title":"BlockchainAddress","href":"/sdk-reference/wallets/swift/protocols/blockchainaddress"},{"title":"ChainWithSigners","href":"/sdk-reference/wallets/swift/protocols/chainwithsigners"},{"title":"CrossmintWallets","href":"/sdk-reference/wallets/swift/protocols/crossmintwallets"},{"title":"EVMCompatibleSigner","href":"/sdk-reference/wallets/swift/protocols/evmcompatiblesigner"},{"title":"NFTService","href":"/sdk-reference/wallets/swift/protocols/nftservice"},{"title":"SignatureApiModel","href":"/sdk-reference/wallets/swift/protocols/signatureapimodel"},{"title":"SignatureService","href":"/sdk-reference/wallets/swift/protocols/signatureservice"},{"title":"Signer","href":"/sdk-reference/wallets/swift/protocols/signer"},{"title":"SignerProvider","href":"/sdk-reference/wallets/swift/protocols/signerprovider"},{"title":"SmartWalletCreationQueryParams","href":"/sdk-reference/wallets/swift/protocols/smartwalletcreationqueryparams"},{"title":"SmartWalletService","href":"/sdk-reference/wallets/swift/protocols/smartwalletservice"},{"title":"SolanaCompatibleSigner","href":"/sdk-reference/wallets/swift/protocols/solanacompatiblesigner"},{"title":"SpecificChain","href":"/sdk-reference/wallets/swift/protocols/specificchain"},{"title":"StellarCompatibleSigner","href":"/sdk-reference/wallets/swift/protocols/stellarcompatiblesigner"},{"title":"TransactionApiModel","href":"/sdk-reference/wallets/swift/protocols/transactionapimodel"},{"title":"TransactionRequest","href":"/sdk-reference/wallets/swift/protocols/transactionrequest"},{"title":"TransactionService","href":"/sdk-reference/wallets/swift/protocols/transactionservice"},{"title":"TransferService","href":"/sdk-reference/wallets/swift/protocols/transferservice"},{"title":"WalletOnChain","href":"/sdk-reference/wallets/swift/protocols/walletonchain"},{"title":"WalletService","href":"/sdk-reference/wallets/swift/protocols/walletservice"},{"title":"WalletTypeTransactionMapping","href":"/sdk-reference/wallets/swift/protocols/wallettypetransactionmapping"}]},{"group":"Enums","pages":[{"title":"Address","href":"/sdk-reference/wallets/swift/enums/address"},{"title":"AdminSignerDataType","href":"/sdk-reference/wallets/swift/enums/adminsignerdatatype"},{"title":"AuthenticationStatus","href":"/sdk-reference/wallets/swift/enums/authenticationstatus"},{"title":"AuthError","href":"/sdk-reference/wallets/swift/enums/autherror"},{"title":"AuthManagerError","href":"/sdk-reference/wallets/swift/enums/authmanagererror"},{"title":"BlockchainAddressError","href":"/sdk-reference/wallets/swift/enums/blockchainaddresserror"},{"title":"BlockchainExplorerLinkType","href":"/sdk-reference/wallets/swift/enums/blockchainexplorerlinktype"},{"title":"Chain","href":"/sdk-reference/wallets/swift/enums/chain"},{"title":"ChainAndAddress","href":"/sdk-reference/wallets/swift/enums/chainandaddress"},{"title":"ChainType","href":"/sdk-reference/wallets/swift/enums/chaintype"},{"title":"CryptoCurrency","href":"/sdk-reference/wallets/swift/enums/cryptocurrency"},{"title":"CryptoPaymentFailureCode","href":"/sdk-reference/wallets/swift/enums/cryptopaymentfailurecode"},{"title":"EIP712","href":"/sdk-reference/wallets/swift/enums/eip712"},{"title":"EVMChain","href":"/sdk-reference/wallets/swift/enums/evmchain"},{"title":"EVMSigners","href":"/sdk-reference/wallets/swift/enums/evmsigners"},{"title":"EVMSmartWalletMapping","href":"/sdk-reference/wallets/swift/enums/evmsmartwalletmapping"},{"title":"FiatCurrency","href":"/sdk-reference/wallets/swift/enums/fiatcurrency"},{"title":"LinkedUserError","href":"/sdk-reference/wallets/swift/enums/linkedusererror"},{"title":"NonCustodialSignerError","href":"/sdk-reference/wallets/swift/enums/noncustodialsignererror"},{"title":"OTPAuthenticationStatus","href":"/sdk-reference/wallets/swift/enums/otpauthenticationstatus"},{"title":"OTPDeliveryChannel","href":"/sdk-reference/wallets/swift/enums/otpdeliverychannel"},{"title":"Owner","href":"/sdk-reference/wallets/swift/enums/owner"},{"title":"SignatureError","href":"/sdk-reference/wallets/swift/enums/signatureerror"},{"title":"SignerConfig","href":"/sdk-reference/wallets/swift/enums/signerconfig"},{"title":"SignerError","href":"/sdk-reference/wallets/swift/enums/signererror"},{"title":"SignerLocator","href":"/sdk-reference/wallets/swift/enums/signerlocator"},{"title":"Signers","href":"/sdk-reference/wallets/swift/enums/signers"},{"title":"SignerStatus","href":"/sdk-reference/wallets/swift/enums/signerstatus"},{"title":"SignerType","href":"/sdk-reference/wallets/swift/enums/signertype"},{"title":"SolanaChain","href":"/sdk-reference/wallets/swift/enums/solanachain"},{"title":"SolanaSigners","href":"/sdk-reference/wallets/swift/enums/solanasigners"},{"title":"SolanaSmartWalletMapping","href":"/sdk-reference/wallets/swift/enums/solanasmartwalletmapping"},{"title":"SolanaSupportedToken","href":"/sdk-reference/wallets/swift/enums/solanasupportedtoken"},{"title":"StellarChain","href":"/sdk-reference/wallets/swift/enums/stellarchain"},{"title":"StellarSigners","href":"/sdk-reference/wallets/swift/enums/stellarsigners"},{"title":"StellarSmartWalletMapping","href":"/sdk-reference/wallets/swift/enums/stellarsmartwalletmapping"},{"title":"StellarSupportedToken","href":"/sdk-reference/wallets/swift/enums/stellarsupportedtoken"},{"title":"TokenAccountType","href":"/sdk-reference/wallets/swift/enums/tokenaccounttype"},{"title":"TransactionError","href":"/sdk-reference/wallets/swift/enums/transactionerror"},{"title":"TransactionStatus","href":"/sdk-reference/wallets/swift/enums/transactionstatus"},{"title":"TransactionStatusApiModel","href":"/sdk-reference/wallets/swift/enums/transactionstatusapimodel"},{"title":"TransferTokenLocator","href":"/sdk-reference/wallets/swift/enums/transfertokenlocator"},{"title":"TransferTokenRecipient","href":"/sdk-reference/wallets/swift/enums/transfertokenrecipient"},{"title":"TransferType","href":"/sdk-reference/wallets/swift/enums/transfertype"},{"title":"UnknownChain","href":"/sdk-reference/wallets/swift/enums/unknownchain"},{"title":"WalletError","href":"/sdk-reference/wallets/swift/enums/walleterror"},{"title":"WalletLocator","href":"/sdk-reference/wallets/swift/enums/walletlocator"},{"title":"WalletType","href":"/sdk-reference/wallets/swift/enums/wallettype"}]},{"group":"Structs","pages":[{"title":"ABIAddress","href":"/sdk-reference/wallets/swift/structs/abiaddress"},{"title":"ABIUInt64","href":"/sdk-reference/wallets/swift/structs/abiuint64"},{"title":"AddDelegatedSignerResponse","href":"/sdk-reference/wallets/swift/structs/adddelegatedsignerresponse"},{"title":"ApiKeySignerApiModel","href":"/sdk-reference/wallets/swift/structs/apikeysignerapimodel"},{"title":"ApiKeySignerData","href":"/sdk-reference/wallets/swift/structs/apikeysignerdata"},{"title":"ApprovalEntry","href":"/sdk-reference/wallets/swift/structs/approvalentry"},{"title":"Approvals","href":"/sdk-reference/wallets/swift/structs/approvals"},{"title":"AuthSession","href":"/sdk-reference/wallets/swift/structs/authsession"},{"title":"AuthUser","href":"/sdk-reference/wallets/swift/structs/authuser"},{"title":"Balance","href":"/sdk-reference/wallets/swift/structs/balance"},{"title":"Balances","href":"/sdk-reference/wallets/swift/structs/balances"},{"title":"BlockchainAddressLink","href":"/sdk-reference/wallets/swift/structs/blockchainaddresslink"},{"title":"BlockchainTokenLink","href":"/sdk-reference/wallets/swift/structs/blockchaintokenlink"},{"title":"BlockchainTransactionLink","href":"/sdk-reference/wallets/swift/structs/blockchaintransactionlink"},{"title":"ChainBalances","href":"/sdk-reference/wallets/swift/structs/chainbalances"},{"title":"ChainRegistrationEntry","href":"/sdk-reference/wallets/swift/structs/chainregistrationentry"},{"title":"ChainRegistrationOnChain","href":"/sdk-reference/wallets/swift/structs/chainregistrationonchain"},{"title":"CreateEVMTransactionRequest","href":"/sdk-reference/wallets/swift/structs/createevmtransactionrequest"},{"title":"CreateSignatureRequest","href":"/sdk-reference/wallets/swift/structs/createsignaturerequest"},{"title":"CreateSolanaTransactionRequest","href":"/sdk-reference/wallets/swift/structs/createsolanatransactionrequest"},{"title":"CreateStellarTransactionRequest","href":"/sdk-reference/wallets/swift/structs/createstellartransactionrequest"},{"title":"CreateTransactionRequest","href":"/sdk-reference/wallets/swift/structs/createtransactionrequest"},{"title":"CreateWalletParams","href":"/sdk-reference/wallets/swift/structs/createwalletparams"},{"title":"DelegatedSignerEntry","href":"/sdk-reference/wallets/swift/structs/delegatedsignerentry"},{"title":"DevicePublicKey","href":"/sdk-reference/wallets/swift/structs/devicepublickey"},{"title":"EmailSignerApiModel","href":"/sdk-reference/wallets/swift/structs/emailsignerapimodel"},{"title":"EmailSignerData","href":"/sdk-reference/wallets/swift/structs/emailsignerdata"},{"title":"ERC20Encoder","href":"/sdk-reference/wallets/swift/structs/erc20encoder"},{"title":"EVMAddress","href":"/sdk-reference/wallets/swift/structs/evmaddress"},{"title":"EvmPasskeySignerApiModel","href":"/sdk-reference/wallets/swift/structs/evmpasskeysignerapimodel"},{"title":"EVMTransactionApiModel","href":"/sdk-reference/wallets/swift/structs/evmtransactionapimodel"},{"title":"ExternalWalletSigner","href":"/sdk-reference/wallets/swift/structs/externalwalletsigner"},{"title":"ExternalWalletSignerApiModel","href":"/sdk-reference/wallets/swift/structs/externalwalletsignerapimodel"},{"title":"ExternalWalletSignerData","href":"/sdk-reference/wallets/swift/structs/externalwalletsignerdata"},{"title":"FetchTransactionRequest","href":"/sdk-reference/wallets/swift/structs/fetchtransactionrequest"},{"title":"FundWalletApiRequest","href":"/sdk-reference/wallets/swift/structs/fundwalletapirequest"},{"title":"FundWalletRequest","href":"/sdk-reference/wallets/swift/structs/fundwalletrequest"},{"title":"GetBalanceQueryParams","href":"/sdk-reference/wallets/swift/structs/getbalancequeryparams"},{"title":"GetMeWalletRequest","href":"/sdk-reference/wallets/swift/structs/getmewalletrequest"},{"title":"GetNTFQueryParams","href":"/sdk-reference/wallets/swift/structs/getntfqueryparams"},{"title":"GetTransationQueryParams","href":"/sdk-reference/wallets/swift/structs/gettransationqueryparams"},{"title":"ListTransactionsRequest","href":"/sdk-reference/wallets/swift/structs/listtransactionsrequest"},{"title":"ListTransfersQueryParams","href":"/sdk-reference/wallets/swift/structs/listtransfersqueryparams"},{"title":"LogoutRequest","href":"/sdk-reference/wallets/swift/structs/logoutrequest"},{"title":"MessageSignatureResponse","href":"/sdk-reference/wallets/swift/structs/messagesignatureresponse"},{"title":"NFT","href":"/sdk-reference/wallets/swift/structs/nft"},{"title":"NonCustodialSignerCallback","href":"/sdk-reference/wallets/swift/structs/noncustodialsignercallback"},{"title":"OTPRequest","href":"/sdk-reference/wallets/swift/structs/otprequest"},{"title":"PasskeySignerData","href":"/sdk-reference/wallets/swift/structs/passkeysignerdata"},{"title":"PhoneSignerApiModel","href":"/sdk-reference/wallets/swift/structs/phonesignerapimodel"},{"title":"PhoneSignerData","href":"/sdk-reference/wallets/swift/structs/phonesignerdata"},{"title":"RecoveryMethod","href":"/sdk-reference/wallets/swift/structs/recoverymethod"},{"title":"RefreshJWTRequest","href":"/sdk-reference/wallets/swift/structs/refreshjwtrequest"},{"title":"RefreshJWTResponse","href":"/sdk-reference/wallets/swift/structs/refreshjwtresponse"},{"title":"RegistrationApprovals","href":"/sdk-reference/wallets/swift/structs/registrationapprovals"},{"title":"RegistrationTransaction","href":"/sdk-reference/wallets/swift/structs/registrationtransaction"},{"title":"ServerSignerApiModel","href":"/sdk-reference/wallets/swift/structs/serversignerapimodel"},{"title":"ServerSignerData","href":"/sdk-reference/wallets/swift/structs/serversignerdata"},{"title":"SignerApiModel","href":"/sdk-reference/wallets/swift/structs/signerapimodel"},{"title":"SignMessageRequest","href":"/sdk-reference/wallets/swift/structs/signmessagerequest"},{"title":"SignRequest","href":"/sdk-reference/wallets/swift/structs/signrequest"},{"title":"SignRequestApi","href":"/sdk-reference/wallets/swift/structs/signrequestapi"},{"title":"SignTypedDataRequest","href":"/sdk-reference/wallets/swift/structs/signtypeddatarequest"},{"title":"SolanaAddress","href":"/sdk-reference/wallets/swift/structs/solanaaddress"},{"title":"SolanaTransactionApiModel","href":"/sdk-reference/wallets/swift/structs/solanatransactionapimodel"},{"title":"StellarAddress","href":"/sdk-reference/wallets/swift/structs/stellaraddress"},{"title":"StellarTransactionApiModel","href":"/sdk-reference/wallets/swift/structs/stellartransactionapimodel"},{"title":"SubmittedApprovalEntry","href":"/sdk-reference/wallets/swift/structs/submittedapprovalentry"},{"title":"TokenAccountBalance","href":"/sdk-reference/wallets/swift/structs/tokenaccountbalance"},{"title":"TokenAmount","href":"/sdk-reference/wallets/swift/structs/tokenamount"},{"title":"TokenBalance","href":"/sdk-reference/wallets/swift/structs/tokenbalance"},{"title":"TokenLinkOptions","href":"/sdk-reference/wallets/swift/structs/tokenlinkoptions"},{"title":"Transaction","href":"/sdk-reference/wallets/swift/structs/transaction"},{"title":"TransactionErrorApiModel","href":"/sdk-reference/wallets/swift/structs/transactionerrorapimodel"},{"title":"TransactionSummary","href":"/sdk-reference/wallets/swift/structs/transactionsummary"},{"title":"Transfer","href":"/sdk-reference/wallets/swift/structs/transfer"},{"title":"TransferListResult","href":"/sdk-reference/wallets/swift/structs/transferlistresult"},{"title":"TransferTokenRequest","href":"/sdk-reference/wallets/swift/structs/transfertokenrequest"},{"title":"TypedDataSignatureResponse","href":"/sdk-reference/wallets/swift/structs/typeddatasignatureresponse"},{"title":"ValidateEmailRequest","href":"/sdk-reference/wallets/swift/structs/validateemailrequest"},{"title":"ValidateEmailResponse","href":"/sdk-reference/wallets/swift/structs/validateemailresponse"},{"title":"ValidateTokenRequest","href":"/sdk-reference/wallets/swift/structs/validatetokenrequest"},{"title":"ValidateTokenResponse","href":"/sdk-reference/wallets/swift/structs/validatetokenresponse"},{"title":"WalletApiModel","href":"/sdk-reference/wallets/swift/structs/walletapimodel"},{"title":"WalletConfig","href":"/sdk-reference/wallets/swift/structs/walletconfig"},{"title":"WalletConfigApiModel","href":"/sdk-reference/wallets/swift/structs/walletconfigapimodel"},{"title":"WalletOptions","href":"/sdk-reference/wallets/swift/structs/walletoptions"},{"title":"WalletSigner","href":"/sdk-reference/wallets/swift/structs/walletsigner"}]},{"group":"Type Aliases","pages":[{"title":"EmailSignerError","href":"/sdk-reference/wallets/swift/type-aliases/emailsignererror"},{"title":"Secp256k1PrivateKey","href":"/sdk-reference/wallets/swift/type-aliases/secp256k1privatekey"},{"title":"Secp256k1PublicKey","href":"/sdk-reference/wallets/swift/type-aliases/secp256k1publickey"}]},{"group":"Functions","pages":[{"title":"getBlockchainExplorerURL(for:)","href":"/sdk-reference/wallets/swift/functions/getblockchainexplorerurl-for"}]},{"group":"Extensions","pages":[{"title":"Logger","href":"/sdk-reference/wallets/swift/extensions/logger"},{"title":"SwiftUICore","href":"/sdk-reference/wallets/swift/extensions/swiftuicore"}]}]},{"group":"Kotlin SDK","icon":"/images/icons/kotlin.png","pages":[{"title":"Kotlin SDK Reference","href":"/sdk-reference/wallets/kotlin/index"},{"group":"Classes","pages":[{"title":"AndroidCrossmintTEE","href":"/sdk-reference/wallets/kotlin/classes/android-crossmint-tee"},{"title":"AndroidPasskeyProvider","href":"/sdk-reference/wallets/kotlin/classes/android-passkey-provider"},{"title":"AndroidWebViewBridge","href":"/sdk-reference/wallets/kotlin/classes/android-web-view-bridge"},{"title":"AuthSessionStore","href":"/sdk-reference/wallets/kotlin/classes/auth-session-store"},{"title":"Crossmint","deprecated":true,"href":"/sdk-reference/wallets/kotlin/classes/crossmint"},{"title":"CrossmintAuthManager","href":"/sdk-reference/wallets/kotlin/classes/crossmint-auth-manager"},{"title":"CrossmintSDK","href":"/sdk-reference/wallets/kotlin/classes/crossmint-sdk"},{"title":"DelegatedSigner.PasskeyActivation","href":"/sdk-reference/wallets/kotlin/classes/delegated-signer-passkey-activation"},{"title":"DeviceSignerStorageFactory","href":"/sdk-reference/wallets/kotlin/classes/device-signer-storage-factory"},{"title":"EncryptedSharedPreferenceStorage","href":"/sdk-reference/wallets/kotlin/classes/encrypted-shared-preference-storage"},{"title":"EVMWallet","href":"/sdk-reference/wallets/kotlin/classes/evm-wallet"},{"title":"FallbackPolicy.InsecurePersistent","href":"/sdk-reference/wallets/kotlin/classes/fallback-policy-insecure-persistent"},{"title":"FallbackPolicy.MemoryOnly","href":"/sdk-reference/wallets/kotlin/classes/fallback-policy-memory-only"},{"title":"InsecurePersistentSessionStore","href":"/sdk-reference/wallets/kotlin/classes/insecure-persistent-session-store"},{"title":"InvalidEnvironmentKeyException","href":"/sdk-reference/wallets/kotlin/classes/invalid-environment-key-exception"},{"title":"JvmWebViewBridge","href":"/sdk-reference/wallets/kotlin/classes/jvm-web-view-bridge"},{"title":"KeystoreKeyStorage","href":"/sdk-reference/wallets/kotlin/classes/keystore-key-storage"},{"title":"MalformedKeyException","href":"/sdk-reference/wallets/kotlin/classes/malformed-key-exception"},{"title":"OldKeyException","href":"/sdk-reference/wallets/kotlin/classes/old-key-exception"},{"title":"SolanaWallet","href":"/sdk-reference/wallets/kotlin/classes/solana-wallet"},{"title":"StellarWallet","href":"/sdk-reference/wallets/kotlin/classes/stellar-wallet"},{"title":"TinkSecureStorage","href":"/sdk-reference/wallets/kotlin/classes/tink-secure-storage"},{"title":"TinkWithFallbackSessionStore","href":"/sdk-reference/wallets/kotlin/classes/tink-with-fallback-session-store"},{"title":"Wallet","href":"/sdk-reference/wallets/kotlin/classes/wallet"},{"title":"WebViewNotAvailableException","href":"/sdk-reference/wallets/kotlin/classes/web-view-not-available-exception"}]},{"group":"Interfaces","pages":[{"title":"AuthManager","href":"/sdk-reference/wallets/kotlin/interfaces/auth-manager"},{"title":"AuthService","href":"/sdk-reference/wallets/kotlin/interfaces/auth-service"},{"title":"BalanceOperations","href":"/sdk-reference/wallets/kotlin/interfaces/balance-operations"},{"title":"CrossmintTEE","href":"/sdk-reference/wallets/kotlin/interfaces/crossmint-tee"},{"title":"CrossmintWallets","href":"/sdk-reference/wallets/kotlin/interfaces/crossmint-wallets"},{"title":"DeviceSignerKeyStorage","href":"/sdk-reference/wallets/kotlin/interfaces/device-signer-key-storage"},{"title":"EmailSigner","href":"/sdk-reference/wallets/kotlin/interfaces/email-signer"},{"title":"FailureAwareSessionStore","href":"/sdk-reference/wallets/kotlin/interfaces/failure-aware-session-store"},{"title":"NFTOperations","href":"/sdk-reference/wallets/kotlin/interfaces/nft-operations"},{"title":"NonCustodialSigner","href":"/sdk-reference/wallets/kotlin/interfaces/non-custodial-signer"},{"title":"PasskeyProvider","href":"/sdk-reference/wallets/kotlin/interfaces/passkey-provider"},{"title":"SessionStore","href":"/sdk-reference/wallets/kotlin/interfaces/session-store"},{"title":"Signer","href":"/sdk-reference/wallets/kotlin/interfaces/signer"},{"title":"SignerManagementOperations","href":"/sdk-reference/wallets/kotlin/interfaces/signer-management-operations"},{"title":"TransactionOperations","href":"/sdk-reference/wallets/kotlin/interfaces/transaction-operations"}]},{"group":"Enums","pages":[{"title":"ApiKey.Type","href":"/sdk-reference/wallets/kotlin/enums/api-key-type"},{"title":"AuthErrorCode","href":"/sdk-reference/wallets/kotlin/enums/auth-error-code"},{"title":"BalanceErrorCode","href":"/sdk-reference/wallets/kotlin/enums/balance-error-code"},{"title":"ChainType","href":"/sdk-reference/wallets/kotlin/enums/chain-type"},{"title":"ConfigurationErrorCode","href":"/sdk-reference/wallets/kotlin/enums/configuration-error-code"},{"title":"DelegatedSignerStatus","href":"/sdk-reference/wallets/kotlin/enums/delegated-signer-status"},{"title":"DelegatedSignerType","href":"/sdk-reference/wallets/kotlin/enums/delegated-signer-type"},{"title":"Environment","href":"/sdk-reference/wallets/kotlin/enums/environment"},{"title":"FallbackPolicy","href":"/sdk-reference/wallets/kotlin/enums/fallback-policy"},{"title":"IdentityVerificationErrorCode","href":"/sdk-reference/wallets/kotlin/enums/identity-verification-error-code"},{"title":"LogLevel","href":"/sdk-reference/wallets/kotlin/enums/log-level"},{"title":"NetworkErrorCode","href":"/sdk-reference/wallets/kotlin/enums/network-error-code"},{"title":"OTPDeliveryChannel","href":"/sdk-reference/wallets/kotlin/enums/otp-delivery-channel"},{"title":"PasskeyErrorCode","href":"/sdk-reference/wallets/kotlin/enums/passkey-error-code"},{"title":"SignatureErrorCode","href":"/sdk-reference/wallets/kotlin/enums/signature-error-code"},{"title":"TransactionErrorCode","href":"/sdk-reference/wallets/kotlin/enums/transaction-error-code"},{"title":"TransactionStatus","href":"/sdk-reference/wallets/kotlin/enums/transaction-status"},{"title":"TransferErrorCode","href":"/sdk-reference/wallets/kotlin/enums/transfer-error-code"},{"title":"TransferType","href":"/sdk-reference/wallets/kotlin/enums/transfer-type"},{"title":"WalletErrorCode","href":"/sdk-reference/wallets/kotlin/enums/wallet-error-code"},{"title":"WalletType","href":"/sdk-reference/wallets/kotlin/enums/wallet-type"}]},{"group":"Data Classes","pages":[{"title":"ApiKey","href":"/sdk-reference/wallets/kotlin/data-classes/api-key"},{"title":"ApiKeyError.InvalidEnvironmentKey","href":"/sdk-reference/wallets/kotlin/data-classes/api-key-error-invalid-environment-key"},{"title":"ApiKeyError.MalformedKey","href":"/sdk-reference/wallets/kotlin/data-classes/api-key-error-malformed-key"},{"title":"ApiKeyError.OldKey","href":"/sdk-reference/wallets/kotlin/data-classes/api-key-error-old-key"},{"title":"Approval","href":"/sdk-reference/wallets/kotlin/data-classes/approval"},{"title":"ApprovalMetadata.Passkey","href":"/sdk-reference/wallets/kotlin/data-classes/approval-metadata-passkey"},{"title":"ApprovalSignature.Device","href":"/sdk-reference/wallets/kotlin/data-classes/approval-signature-device"},{"title":"ApprovalSignature.Passkey","href":"/sdk-reference/wallets/kotlin/data-classes/approval-signature-passkey"},{"title":"ApprovalSignature.Raw","href":"/sdk-reference/wallets/kotlin/data-classes/approval-signature-raw"},{"title":"Approvals","href":"/sdk-reference/wallets/kotlin/data-classes/approvals"},{"title":"Approvals.PendingApproval","href":"/sdk-reference/wallets/kotlin/data-classes/approvals-pending-approval"},{"title":"Approvals.SubmittedApproval","href":"/sdk-reference/wallets/kotlin/data-classes/approvals-submitted-approval"},{"title":"AuthError.InvalidCredentials","href":"/sdk-reference/wallets/kotlin/data-classes/auth-error-invalid-credentials"},{"title":"AuthError.NotInitialized","href":"/sdk-reference/wallets/kotlin/data-classes/auth-error-not-initialized"},{"title":"AuthError.RateLimited","href":"/sdk-reference/wallets/kotlin/data-classes/auth-error-rate-limited"},{"title":"AuthError.ServerError","href":"/sdk-reference/wallets/kotlin/data-classes/auth-error-server-error"},{"title":"AuthError.TokenExpired","href":"/sdk-reference/wallets/kotlin/data-classes/auth-error-token-expired"},{"title":"AuthError.Unauthorized","href":"/sdk-reference/wallets/kotlin/data-classes/auth-error-unauthorized"},{"title":"BalanceError.BalanceNotFound","href":"/sdk-reference/wallets/kotlin/data-classes/balance-error-balance-not-found"},{"title":"BalanceError.BalanceOperationFailed","href":"/sdk-reference/wallets/kotlin/data-classes/balance-error-balance-operation-failed"},{"title":"BalanceError.Forbidden","href":"/sdk-reference/wallets/kotlin/data-classes/balance-error-forbidden"},{"title":"BalanceError.RateLimited","href":"/sdk-reference/wallets/kotlin/data-classes/balance-error-rate-limited"},{"title":"BalanceError.ServiceNotInitialized","href":"/sdk-reference/wallets/kotlin/data-classes/balance-error-service-not-initialized"},{"title":"BalanceError.Unauthorized","href":"/sdk-reference/wallets/kotlin/data-classes/balance-error-unauthorized"},{"title":"Balances","href":"/sdk-reference/wallets/kotlin/data-classes/balances"},{"title":"Call","href":"/sdk-reference/wallets/kotlin/data-classes/call"},{"title":"ChainInfo.Solana","href":"/sdk-reference/wallets/kotlin/data-classes/chain-info-solana"},{"title":"ChainInfo.Stellar","href":"/sdk-reference/wallets/kotlin/data-classes/chain-info-stellar"},{"title":"Chain.Unknown","href":"/sdk-reference/wallets/kotlin/data-classes/chain-unknown"},{"title":"Configuration","href":"/sdk-reference/wallets/kotlin/data-classes/configuration"},{"title":"DelegatedSigner.ApiKey","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-api-key"},{"title":"DelegatedSignerData","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-data"},{"title":"DelegatedSigner.Device","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-device"},{"title":"DelegatedSigner.Email","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-email"},{"title":"DelegatedSigner.ExternalWallet","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-external-wallet"},{"title":"DelegatedSigner.Locator","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-locator"},{"title":"DelegatedSigner.Passkey","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-passkey"},{"title":"DelegatedSigner.Phone","href":"/sdk-reference/wallets/kotlin/data-classes/delegated-signer-phone"},{"title":"DeviceSignerError.StorageError","href":"/sdk-reference/wallets/kotlin/data-classes/device-signer-error-storage-error"},{"title":"EVMTransactionParams","href":"/sdk-reference/wallets/kotlin/data-classes/evm-transaction-params"},{"title":"FeeConfig","href":"/sdk-reference/wallets/kotlin/data-classes/fee-config"},{"title":"IdentityVerificationError","href":"/sdk-reference/wallets/kotlin/data-classes/identity-verification-error"},{"title":"NetworkError.ConnectionError","href":"/sdk-reference/wallets/kotlin/data-classes/network-error-connection-error"},{"title":"NetworkError.HttpError","href":"/sdk-reference/wallets/kotlin/data-classes/network-error-http-error"},{"title":"NetworkError.ParseError","href":"/sdk-reference/wallets/kotlin/data-classes/network-error-parse-error"},{"title":"NetworkError.ServiceNotInitialized","href":"/sdk-reference/wallets/kotlin/data-classes/network-error-service-not-initialized"},{"title":"NetworkError.TimeoutError","href":"/sdk-reference/wallets/kotlin/data-classes/network-error-timeout-error"},{"title":"NetworkError.UnknownError","href":"/sdk-reference/wallets/kotlin/data-classes/network-error-unknown-error"},{"title":"OnChainData","href":"/sdk-reference/wallets/kotlin/data-classes/on-chain-data"},{"title":"Owner.Address","href":"/sdk-reference/wallets/kotlin/data-classes/owner-address"},{"title":"Owner.Email","href":"/sdk-reference/wallets/kotlin/data-classes/owner-email"},{"title":"Owner.PhoneNumber","href":"/sdk-reference/wallets/kotlin/data-classes/owner-phone-number"},{"title":"Owner.Twitter","href":"/sdk-reference/wallets/kotlin/data-classes/owner-twitter"},{"title":"Owner.UserId","href":"/sdk-reference/wallets/kotlin/data-classes/owner-user-id"},{"title":"PasskeyCredentialInfo","href":"/sdk-reference/wallets/kotlin/data-classes/passkey-credential-info"},{"title":"PasskeyError.Cancelled","href":"/sdk-reference/wallets/kotlin/data-classes/passkey-error-cancelled"},{"title":"PasskeyError.Failed","href":"/sdk-reference/wallets/kotlin/data-classes/passkey-error-failed"},{"title":"PasskeySignMetadata","href":"/sdk-reference/wallets/kotlin/data-classes/passkey-sign-metadata"},{"title":"PasskeySignResult","href":"/sdk-reference/wallets/kotlin/data-classes/passkey-sign-result"},{"title":"RawTransactionParams.Solana","href":"/sdk-reference/wallets/kotlin/data-classes/raw-transaction-params-solana"},{"title":"RawTransactionParams.Stellar","href":"/sdk-reference/wallets/kotlin/data-classes/raw-transaction-params-stellar"},{"title":"RawTransactionParams.StellarSerialized","href":"/sdk-reference/wallets/kotlin/data-classes/raw-transaction-params-stellar-serialized"},{"title":"RecoveryMethod","href":"/sdk-reference/wallets/kotlin/data-classes/recovery-method"},{"title":"Result.Failure","href":"/sdk-reference/wallets/kotlin/data-classes/result-failure"},{"title":"Result.Success","href":"/sdk-reference/wallets/kotlin/data-classes/result-success"},{"title":"SignatureError.ChainNotSupported","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-chain-not-supported"},{"title":"SignatureError.CreationFailed","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-creation-failed"},{"title":"SignatureError.Forbidden","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-forbidden"},{"title":"SignatureError.ServiceNotInitialized","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-service-not-initialized"},{"title":"SignatureError.SigningFailed","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-signing-failed"},{"title":"SignatureError.Timeout","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-timeout"},{"title":"SignatureError.Unauthorized","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-unauthorized"},{"title":"SignatureError.Unknown","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-unknown"},{"title":"SignatureError.UserCancelled","href":"/sdk-reference/wallets/kotlin/data-classes/signature-error-user-cancelled"},{"title":"SignerData.ApiKey","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-api-key"},{"title":"SignerData.Device","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-device"},{"title":"SignerData.Email","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-email"},{"title":"SignerData.ExternalWallet","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-external-wallet"},{"title":"SignerData.Passkey","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-passkey"},{"title":"SignerData.Phone","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-phone"},{"title":"SignerData.Server","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-server"},{"title":"SignerData.Unknown","href":"/sdk-reference/wallets/kotlin/data-classes/signer-data-unknown"},{"title":"SignerError.Generic","href":"/sdk-reference/wallets/kotlin/data-classes/signer-error-generic"},{"title":"SignerError.SigningFailed","href":"/sdk-reference/wallets/kotlin/data-classes/signer-error-signing-failed"},{"title":"SignerSelection.Delegated","href":"/sdk-reference/wallets/kotlin/data-classes/signer-selection-delegated"},{"title":"SignerType.Email","href":"/sdk-reference/wallets/kotlin/data-classes/signer-type-email"},{"title":"SignerType.ExternalWallet","href":"/sdk-reference/wallets/kotlin/data-classes/signer-type-external-wallet"},{"title":"SignerType.Passkey","href":"/sdk-reference/wallets/kotlin/data-classes/signer-type-passkey"},{"title":"SignerType.Phone","href":"/sdk-reference/wallets/kotlin/data-classes/signer-type-phone"},{"title":"SigningOutput.Passkey","href":"/sdk-reference/wallets/kotlin/data-classes/signing-output-passkey"},{"title":"SigningOutput.Standard","href":"/sdk-reference/wallets/kotlin/data-classes/signing-output-standard"},{"title":"SolanaTransactionParams","href":"/sdk-reference/wallets/kotlin/data-classes/solana-transaction-params"},{"title":"StellarTransactionParams","href":"/sdk-reference/wallets/kotlin/data-classes/stellar-transaction-params"},{"title":"TEEError.Generic","href":"/sdk-reference/wallets/kotlin/data-classes/tee-error-generic"},{"title":"TEEError.InvalidPayload","href":"/sdk-reference/wallets/kotlin/data-classes/tee-error-invalid-payload"},{"title":"TokenAccountBalance","href":"/sdk-reference/wallets/kotlin/data-classes/token-account-balance"},{"title":"TokenAccountType.Card","href":"/sdk-reference/wallets/kotlin/data-classes/token-account-type-card"},{"title":"TokenAccountType.Unknown","href":"/sdk-reference/wallets/kotlin/data-classes/token-account-type-unknown"},{"title":"TokenAmount","href":"/sdk-reference/wallets/kotlin/data-classes/token-amount"},{"title":"TokenBalance","href":"/sdk-reference/wallets/kotlin/data-classes/token-balance"},{"title":"Transaction","href":"/sdk-reference/wallets/kotlin/data-classes/transaction"},{"title":"TransactionErrorDetails","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-details"},{"title":"TransactionErrorDetails.Revert","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-details-revert"},{"title":"TransactionError.Forbidden","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-forbidden"},{"title":"TransactionError.InvalidTransactionState","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-invalid-transaction-state"},{"title":"TransactionError.RateLimited","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-rate-limited"},{"title":"TransactionError.ServiceNotInitialized","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-service-not-initialized"},{"title":"TransactionError.SigningFailed","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-signing-failed"},{"title":"TransactionError.Timeout","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-timeout"},{"title":"TransactionError.TransactionCreationFailed","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-transaction-creation-failed"},{"title":"TransactionError.TransactionFailed","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-transaction-failed"},{"title":"TransactionError.TransactionNotFound","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-transaction-not-found"},{"title":"TransactionError.TransactionOperationFailed","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-transaction-operation-failed"},{"title":"TransactionError.Unauthorized","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-unauthorized"},{"title":"TransactionError.UserCancelled","href":"/sdk-reference/wallets/kotlin/data-classes/transaction-error-user-cancelled"},{"title":"Transfer","href":"/sdk-reference/wallets/kotlin/data-classes/transfer"},{"title":"TransferError.LoadFailed","href":"/sdk-reference/wallets/kotlin/data-classes/transfer-error-load-failed"},{"title":"TransferError.ServiceNotInitialized","href":"/sdk-reference/wallets/kotlin/data-classes/transfer-error-service-not-initialized"},{"title":"TransferError.Unauthorized","href":"/sdk-reference/wallets/kotlin/data-classes/transfer-error-unauthorized"},{"title":"TransferError.Unknown","href":"/sdk-reference/wallets/kotlin/data-classes/transfer-error-unknown"},{"title":"TransferList","href":"/sdk-reference/wallets/kotlin/data-classes/transfer-list"},{"title":"UserOperation","href":"/sdk-reference/wallets/kotlin/data-classes/user-operation"},{"title":"WalletConfig","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-config"},{"title":"WalletError.ChainNotSupported","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-chain-not-supported"},{"title":"WalletError.DelegatedSignerConflict","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-delegated-signer-conflict"},{"title":"WalletError.DeviceKeyIndexUnreadable","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-device-key-index-unreadable"},{"title":"WalletError.DeviceSignerNotSupported","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-device-signer-not-supported"},{"title":"WalletError.DuplicateRecoverySigner","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-duplicate-recovery-signer"},{"title":"WalletError.Forbidden","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-forbidden"},{"title":"WalletError.InvalidInput","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-invalid-input"},{"title":"WalletError.InvalidRecoveryConfig","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-invalid-recovery-config"},{"title":"WalletError.InvalidSigner","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-invalid-signer"},{"title":"WalletError.LastRecoverySigner","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-last-recovery-signer"},{"title":"WalletError.RateLimited","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-rate-limited"},{"title":"WalletError.RecoveryAdminSignerConflict","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-recovery-admin-signer-conflict"},{"title":"WalletError.RecoveryNotSupportedOnApiVersion","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-recovery-not-supported-on-api-version"},{"title":"WalletError.RecoveryNotSupportedOnChain","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-recovery-not-supported-on-chain"},{"title":"WalletError.RecoverySignerConflict","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-recovery-signer-conflict"},{"title":"WalletError.RecoverySignerNotAllowed","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-recovery-signer-not-allowed"},{"title":"WalletError.ServiceNotInitialized","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-service-not-initialized"},{"title":"WalletError.SignerLimitExceeded","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-signer-limit-exceeded"},{"title":"WalletError.SignerNotRegistered","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-signer-not-registered"},{"title":"WalletError.SignerRequired","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-signer-required"},{"title":"WalletError.SigningError","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-signing-error"},{"title":"WalletError.Unauthorized","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-unauthorized"},{"title":"WalletError.WalletNotFound","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-wallet-not-found"},{"title":"WalletError.WalletOperationFailed","href":"/sdk-reference/wallets/kotlin/data-classes/wallet-error-wallet-operation-failed"},{"title":"WebViewMessage.Custom","href":"/sdk-reference/wallets/kotlin/data-classes/web-view-message-custom"}]},{"group":"Sealed Classes","pages":[{"title":"ApprovalMetadata","href":"/sdk-reference/wallets/kotlin/sealed-classes/approval-metadata"},{"title":"ApprovalSignature","href":"/sdk-reference/wallets/kotlin/sealed-classes/approval-signature"},{"title":"DelegatedSigner","href":"/sdk-reference/wallets/kotlin/sealed-classes/delegated-signer"},{"title":"DeviceSignerError","href":"/sdk-reference/wallets/kotlin/sealed-classes/device-signer-error"},{"title":"Owner","href":"/sdk-reference/wallets/kotlin/sealed-classes/owner"},{"title":"RawTransactionParams","href":"/sdk-reference/wallets/kotlin/sealed-classes/raw-transaction-params"},{"title":"SignerData","href":"/sdk-reference/wallets/kotlin/sealed-classes/signer-data"},{"title":"SignerError","href":"/sdk-reference/wallets/kotlin/sealed-classes/signer-error"},{"title":"SignerSelection","href":"/sdk-reference/wallets/kotlin/sealed-classes/signer-selection"},{"title":"SignerType","href":"/sdk-reference/wallets/kotlin/sealed-classes/signer-type"},{"title":"SigningOutput","href":"/sdk-reference/wallets/kotlin/sealed-classes/signing-output"},{"title":"TEEError","href":"/sdk-reference/wallets/kotlin/sealed-classes/tee-error"}]},{"group":"Sealed Interfaces","pages":[{"title":"ApiKeyError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/api-key-error"},{"title":"AuthError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/auth-error"},{"title":"BalanceError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/balance-error"},{"title":"Chain","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/chain"},{"title":"ChainInfo","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/chain-info"},{"title":"ConfigurationError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/configuration-error"},{"title":"CrossmintError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/crossmint-error"},{"title":"CrossmintErrorCode","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/crossmint-error-code"},{"title":"EVMChain","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/evm-chain"},{"title":"NetworkError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/network-error"},{"title":"PasskeyError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/passkey-error"},{"title":"Result","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/result"},{"title":"SignatureError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/signature-error"},{"title":"SolanaChain","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/solana-chain"},{"title":"StellarChain","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/stellar-chain"},{"title":"SupportedChain","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/supported-chain"},{"title":"TokenAccountType","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/token-account-type"},{"title":"TransactionError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/transaction-error"},{"title":"TransactionParams","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/transaction-params"},{"title":"TransferError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/transfer-error"},{"title":"WalletError","href":"/sdk-reference/wallets/kotlin/sealed-interfaces/wallet-error"}]},{"group":"Objects","pages":[{"title":"ApiKey.Companion","href":"/sdk-reference/wallets/kotlin/objects/api-key-companion"},{"title":"Chain.Companion","href":"/sdk-reference/wallets/kotlin/objects/chain-companion"},{"title":"Configuration.Companion","href":"/sdk-reference/wallets/kotlin/objects/configuration-companion"},{"title":"CrossmintAuthManager.Companion","href":"/sdk-reference/wallets/kotlin/objects/crossmint-auth-manager-companion"},{"title":"Crossmint.Companion","href":"/sdk-reference/wallets/kotlin/objects/crossmint-companion"},{"title":"CrossmintSDK.Companion","href":"/sdk-reference/wallets/kotlin/objects/crossmint-sdk-companion"},{"title":"DelegatedSignerStatus.Companion","href":"/sdk-reference/wallets/kotlin/objects/delegated-signer-status-companion"},{"title":"DelegatedSignerType.Companion","href":"/sdk-reference/wallets/kotlin/objects/delegated-signer-type-companion"},{"title":"DeviceSignerError.HardwareUnavailable","href":"/sdk-reference/wallets/kotlin/objects/device-signer-error-hardware-unavailable"},{"title":"DeviceSignerError.InvalidMessage","href":"/sdk-reference/wallets/kotlin/objects/device-signer-error-invalid-message"},{"title":"DeviceSignerError.KeyGenerationFailed","href":"/sdk-reference/wallets/kotlin/objects/device-signer-error-key-generation-failed"},{"title":"DeviceSignerError.KeyNotFound","href":"/sdk-reference/wallets/kotlin/objects/device-signer-error-key-not-found"},{"title":"DeviceSignerError.SigningFailed","href":"/sdk-reference/wallets/kotlin/objects/device-signer-error-signing-failed"},{"title":"EncryptedSharedPreferenceStorage.Companion","href":"/sdk-reference/wallets/kotlin/objects/encrypted-shared-preference-storage-companion"},{"title":"EVMChain.Apechain","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-apechain"},{"title":"EVMChain.Apex","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-apex"},{"title":"EVMChain.Arbitrum","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-arbitrum"},{"title":"EVMChain.ArbitrumNova","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-arbitrum-nova"},{"title":"EVMChain.ArbitrumSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-arbitrum-sepolia"},{"title":"EVMChain.AstarZkEVM","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-astar-zk-evm"},{"title":"EVMChain.Avalanche","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-avalanche"},{"title":"EVMChain.AvalancheFuji","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-avalanche-fuji"},{"title":"EVMChain.BarretTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-barret-testnet"},{"title":"EVMChain.Base","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-base"},{"title":"EVMChain.BaseGoerli","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-base-goerli"},{"title":"EVMChain.BaseSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-base-sepolia"},{"title":"EVMChain.Boss","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-boss"},{"title":"EVMChain.BSCTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-bsc-testnet"},{"title":"EVMChain.Chiliz","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-chiliz"},{"title":"EVMChain.ChilizSpicyTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-chiliz-spicy-testnet"},{"title":"EVMChain.Coti","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-coti"},{"title":"EVMChain.CotiTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-coti-testnet"},{"title":"EVMChain.Curtis","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-curtis"},{"title":"EVMChain.Ethereum","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-ethereum"},{"title":"EVMChain.EthereumGoerli","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-ethereum-goerli"},{"title":"EVMChain.EthereumSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-ethereum-sepolia"},{"title":"EVMChain.HypersonicTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-hypersonic-testnet"},{"title":"EVMChain.Lightlink","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-lightlink"},{"title":"EVMChain.LightlinkPegasus","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-lightlink-pegasus"},{"title":"EVMChain.Mode","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-mode"},{"title":"EVMChain.ModeSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-mode-sepolia"},{"title":"EVMChain.Optimism","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-optimism"},{"title":"EVMChain.OptimismGoerli","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-optimism-goerli"},{"title":"EVMChain.OptimismSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-optimism-sepolia"},{"title":"EVMChain.Polygon","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-polygon"},{"title":"EVMChain.PolygonAmoy","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-polygon-amoy"},{"title":"EVMChain.PolygonMumbai","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-polygon-mumbai"},{"title":"EVMChain.Rari","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-rari"},{"title":"EVMChain.RariTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-rari-testnet"},{"title":"EVMChain.Scroll","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-scroll"},{"title":"EVMChain.ScrollSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-scroll-sepolia"},{"title":"EVMChain.SeiAtlantic2Testnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-sei-atlantic2testnet"},{"title":"EVMChain.SeiPacific1","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-sei-pacific1"},{"title":"EVMChain.Shape","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-shape"},{"title":"EVMChain.ShapeSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-shape-sepolia"},{"title":"EVMChain.SkaleNebula","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-skale-nebula"},{"title":"EVMChain.SkaleNebulaTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-skale-nebula-testnet"},{"title":"EVMChain.Soneium","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-soneium"},{"title":"EVMChain.SoneiumMinatoTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-soneium-minato-testnet"},{"title":"EVMChain.Space","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-space"},{"title":"EVMChain.SpaceTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-space-testnet"},{"title":"EVMChain.Story","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-story"},{"title":"EVMChain.StoryTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-story-testnet"},{"title":"EVMChain.VerifyTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-verify-testnet"},{"title":"EVMChain.Viction","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-viction"},{"title":"EVMChain.VictionTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-viction-testnet"},{"title":"EVMChain.Xai","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-xai"},{"title":"EVMChain.XaiSepoliaTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-xai-sepolia-testnet"},{"title":"EVMChain.ZenchainTestnet","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-zenchain-testnet"},{"title":"EVMChain.Zkatana","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-zkatana"},{"title":"EVMChain.Zkyoto","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-zkyoto"},{"title":"EVMChain.Zora","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-zora"},{"title":"EVMChain.ZoraGoerli","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-zora-goerli"},{"title":"EVMChain.ZoraSepolia","href":"/sdk-reference/wallets/kotlin/objects/evm-chain-zora-sepolia"},{"title":"InsecurePersistentSessionStore.Companion","href":"/sdk-reference/wallets/kotlin/objects/insecure-persistent-session-store-companion"},{"title":"KeystoreKeyStorage.Companion","href":"/sdk-reference/wallets/kotlin/objects/keystore-key-storage-companion"},{"title":"SignerError.Cancelled","href":"/sdk-reference/wallets/kotlin/objects/signer-error-cancelled"},{"title":"SignerError.InvalidEmail","href":"/sdk-reference/wallets/kotlin/objects/signer-error-invalid-email"},{"title":"SignerError.NotInitialized","href":"/sdk-reference/wallets/kotlin/objects/signer-error-not-initialized"},{"title":"SignerError.NotStarted","href":"/sdk-reference/wallets/kotlin/objects/signer-error-not-started"},{"title":"SignerError.TeeNotStarted","href":"/sdk-reference/wallets/kotlin/objects/signer-error-tee-not-started"},{"title":"SignerSelection.Admin","href":"/sdk-reference/wallets/kotlin/objects/signer-selection-admin"},{"title":"SignerType.ApiKey","href":"/sdk-reference/wallets/kotlin/objects/signer-type-api-key"},{"title":"SolanaChain.Solana","href":"/sdk-reference/wallets/kotlin/objects/solana-chain-solana"},{"title":"StellarChain.Stellar","href":"/sdk-reference/wallets/kotlin/objects/stellar-chain-stellar"},{"title":"TEEError.EncryptionUnavailable","href":"/sdk-reference/wallets/kotlin/objects/tee-error-encryption-unavailable"},{"title":"TEEError.ErrorLoadingService","href":"/sdk-reference/wallets/kotlin/objects/tee-error-error-loading-service"},{"title":"TEEError.HandshakeFailed","href":"/sdk-reference/wallets/kotlin/objects/tee-error-handshake-failed"},{"title":"TEEError.HandshakeRequired","href":"/sdk-reference/wallets/kotlin/objects/tee-error-handshake-required"},{"title":"TEEError.InvalidSignature","href":"/sdk-reference/wallets/kotlin/objects/tee-error-invalid-signature"},{"title":"TEEError.JWTRequired","href":"/sdk-reference/wallets/kotlin/objects/tee-error-jwt-required"},{"title":"TEEError.SignerStatusUnavailable","href":"/sdk-reference/wallets/kotlin/objects/tee-error-signer-status-unavailable"},{"title":"TEEError.Timeout","href":"/sdk-reference/wallets/kotlin/objects/tee-error-timeout"},{"title":"TEEError.UserCancelled","href":"/sdk-reference/wallets/kotlin/objects/tee-error-user-cancelled"},{"title":"TinkSecureStorage.Companion","href":"/sdk-reference/wallets/kotlin/objects/tink-secure-storage-companion"},{"title":"TinkWithFallbackSessionStore.Companion","href":"/sdk-reference/wallets/kotlin/objects/tink-with-fallback-session-store-companion"},{"title":"TokenAccountType.Wallet","href":"/sdk-reference/wallets/kotlin/objects/token-account-type-wallet"}]},{"group":"Composables","pages":[{"title":"CrossmintNonCustodialSignerProvider","href":"/sdk-reference/wallets/kotlin/composables/crossmint-non-custodial-signer-provider"},{"title":"CrossmintTEEWebView","href":"/sdk-reference/wallets/kotlin/composables/crossmint-tee-web-view"},{"title":"CrossmintTEEWebViewContainer","href":"/sdk-reference/wallets/kotlin/composables/crossmint-tee-web-view-container"},{"title":"PlatformSpecificProvider","href":"/sdk-reference/wallets/kotlin/composables/platform-specific-provider"}]},{"group":"Functions","pages":[{"title":"configure","href":"/sdk-reference/wallets/kotlin/functions/configure"},{"title":"createAndroidTEE","href":"/sdk-reference/wallets/kotlin/functions/create-android-tee"},{"title":"createAuthManager","href":"/sdk-reference/wallets/kotlin/functions/create-auth-manager"},{"title":"createCrossmintWallets","href":"/sdk-reference/wallets/kotlin/functions/create-crossmint-wallets"},{"title":"createDefaultAuthManager","href":"/sdk-reference/wallets/kotlin/functions/create-default-auth-manager"},{"title":"createDefaultSessionStore","href":"/sdk-reference/wallets/kotlin/functions/create-default-session-store"},{"title":"createEVMWallet","href":"/sdk-reference/wallets/kotlin/functions/create-evm-wallet"},{"title":"createPasskeyCredential","href":"/sdk-reference/wallets/kotlin/functions/create-passkey-credential"},{"title":"createSolanaWallet","href":"/sdk-reference/wallets/kotlin/functions/create-solana-wallet"},{"title":"createStellarWallet","href":"/sdk-reference/wallets/kotlin/functions/create-stellar-wallet"},{"title":"createWallet","href":"/sdk-reference/wallets/kotlin/functions/create-wallet"},{"title":"CrossmintTEEWebView","href":"/sdk-reference/wallets/kotlin/functions/crossmint-tee-web-view"},{"title":"flatMap","href":"/sdk-reference/wallets/kotlin/functions/flat-map"},{"title":"fold","href":"/sdk-reference/wallets/kotlin/functions/fold"},{"title":"getOrNull","href":"/sdk-reference/wallets/kotlin/functions/get-or-null"},{"title":"getOrThrow","href":"/sdk-reference/wallets/kotlin/functions/get-or-throw"},{"title":"isMainThread","href":"/sdk-reference/wallets/kotlin/functions/is-main-thread"},{"title":"makePasskeySignerCallback","href":"/sdk-reference/wallets/kotlin/functions/make-passkey-signer-callback"},{"title":"map","href":"/sdk-reference/wallets/kotlin/functions/map"},{"title":"mapError","href":"/sdk-reference/wallets/kotlin/functions/map-error"},{"title":"normalizeEmail","href":"/sdk-reference/wallets/kotlin/functions/normalize-email"},{"title":"runCatching","href":"/sdk-reference/wallets/kotlin/functions/run-catching"},{"title":"useSigner","href":"/sdk-reference/wallets/kotlin/functions/use-signer"},{"title":"waitForMessage","href":"/sdk-reference/wallets/kotlin/functions/wait-for-message"}]},{"group":"Properties","pages":[{"title":"LocalCrossmintSDK","href":"/sdk-reference/wallets/kotlin/properties/local-crossmint-sdk"}]}]}]}]}]},{"tab":"Identity","pages":[{"title":"Identity","href":"/identity/overview"}]},{"tab":"Stablecoin Orchestration","pages":[{"title":"Stablecoin Orchestration","href":"/stablecoin-orchestration/overview"}]},{"tab":"Checkout","pages":[{"title":"Checkout","href":"/payments/introduction"}]},{"tab":"Onramp","pages":[{"title":"Onramp","href":"/onramp/overview"}]},{"tab":"Offramp","groups":[{"group":"Introduction","pages":[{"title":"Overview","href":"/offramp/overview"},{"title":"Countries and Rails","sidebarTitle":"Countries \u0026 Rails","href":"/offramp/supported-countries-and-rails"}]},{"group":"Quickstarts ⚡","pages":[{"title":"REST API Quickstart","sidebarTitle":"REST API","href":"/offramp/quickstarts/rest-api"}]},{"group":"Concepts","pages":[{"title":"How It Works","href":"/offramp/concepts/how-it-works"},{"title":"KYC \u0026 Compliance","href":"/offramp/concepts/kyc-and-compliance"}]},{"group":"Guides","pages":[{"title":"Import User KYC Data","href":"/offramp/guides/import-user-kyc-data"},{"title":"Manage Payment Methods","href":"/offramp/guides/collect-bank-accounts"},{"title":"Get an Offramp Quote","sidebarTitle":"Get a Quote","href":"/offramp/guides/preview-a-quote"},{"title":"Send or Receive an Exact Amount","href":"/offramp/guides/send-or-receive-an-exact-amount"},{"title":"Offramp Orders on Solana","href":"/offramp/guides/sign-deposit-solana"},{"title":"Manage Orders","href":"/offramp/guides/manage-orders"},{"title":"Institution IDs","mode":"wide","href":"/offramp/guides/institution-ids"},{"title":"Test a Failed Payout","href":"/offramp/guides/test-payout-failures"},{"title":"Launch in Production","href":"/offramp/guides/going-to-production"}]},{"group":"API Reference","pages":[{"group":"REST","icon":"brackets-curly","pages":[{"group":"Orders","pages":[{"title":"Create Order","openapi":"api-reference/_open-api/Orders.json POST /2022-06-09/orders","href":"/offramp/api-reference/create-order"},{"title":"Submit Deposit","openapi":"api-reference/_open-api/Orders.json POST /2022-06-09/orders/{orderId}/payment","href":"/offramp/api-reference/process-payment"},{"title":"Get Order","openapi":"api-reference/_open-api/Orders.json GET /2022-06-09/orders/{orderId}","href":"/offramp/api-reference/get-order"},{"title":"List Orders","openapi":"api-reference/_open-api/Orders.json GET /2022-06-09/orders","href":"/offramp/api-reference/list-orders"}]},{"group":"Payment Methods","pages":[{"title":"The Payment Method Object","description":"Attributes and structure of a saved payment method","href":"/api-reference/headless/payment-methods/payment-method-object"},{"title":"Create Payment Method","openapi":"api-reference/_open-api/PaymentMethods.json POST /2026-09-16/payment-methods","href":"/offramp/api-reference/payment-methods/create-payment-method"},{"title":"List Payment Methods by User","description":"Retrieve the bank account payout methods saved for a given user.","openapi":"api-reference/_open-api/PaymentMethods.json GET /2026-09-16/payment-methods","href":"/offramp/api-reference/payment-methods/list-payment-methods"},{"title":"Retrieve a Payment Method","openapi":"api-reference/_open-api/PaymentMethods.json GET /2026-09-16/payment-methods/{paymentMethodId}","href":"/offramp/api-reference/payment-methods/get-payment-method"},{"title":"Update a Payment Method","openapi":"api-reference/_open-api/PaymentMethods.json PATCH /2026-09-16/payment-methods/{paymentMethodId}","href":"/offramp/api-reference/payment-methods/update-payment-method"},{"title":"Delete a Payment Method","openapi":"api-reference/_open-api/PaymentMethods.json DELETE /2026-09-16/payment-methods/{paymentMethodId}","href":"/offramp/api-reference/payment-methods/delete-payment-method"}]}]}]}]},{"tab":"Agents","pages":[{"title":"Agents","href":"/agents/overview"}]},{"tab":"Others","menu":[{"item":"Tokenization","pages":[{"title":"Tokenization","href":"/tokenization/introduction"}]}],"pages":[{"title":"Others","href":"/tokenization/introduction"}]}]},"basePath":"","title":"Create Payment Method - Crossmint Docs","buildId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","deploymentId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-B7XKH4J3.js","utils-lOYzL7z-.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DF6jUUIM.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Dpsj5f7C.js","snippetPresets-CYeiDe8v.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CUFz1YZ_.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-D8H_iLS4.js","shallow-DdluZBHX.js","getApiPlaygroundDisplay-B9922vev.js","CodeSnippet-CMoRNGYs.js","CodeSnippets-DwyrPHuw.js","Page-DSVu9Ucl.js","getPastedJson-G-zIvlHh.js","icon-B03fnEy0.js","MethodPill-CW7teklc.js","DuplicateIcon-CtO8eekd.js","createIcon-DZTKdM_A.js","DynamicMarkdown-D5M2At0B.js","SectionHeading-C_2NaA2U.js","axios-vUo_bRtp.js","Markdown-D7QRHV3m.js","clsx-D1Z-ELXV.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-lvhuD9Du.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-CKfC4ywL.js"]}