Call GET /customers/:customerId/features/requirements first. Send dynamic data under fields (nested objects, NOT dotted keys). Upload each required document via POST /v2/documents (file only) and pass returned ids in documentIds[]. asset is required for VIRTUAL_ACCOUNT.
{
"type": "INVALID_OID_FORMAT",
"title": "Invalid Object ID Format",
"status": 400,
"detail": "A path or query parameter expected a valid object identifier but received a value that does not match the expected format.",
"resolution": "Verify that all IDs in the request URL and query parameters are correctly formatted. IDs are typically prefixed strings like 'cus_...', 'app_...', or 'doc_...'.",
"docs": "https://v2.docs.conduit.financial/errors#invalid-oid-format",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "API_KEY_MISSING",
"title": "API Key Missing",
"status": 401,
"detail": "The request did not include an API key. All API requests must be authenticated.",
"resolution": "Include your API key in the 'x-api-key' header with every request.",
"docs": "https://v2.docs.conduit.financial/errors#api-key-missing",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "ORGANIZATION_ACCESS_SUSPENDED",
"title": "Organization Access Suspended",
"status": 403,
"detail": "Conduit has suspended this organization's access. Requests with the organization's API keys and from its users are refused until Conduit restores access.",
"resolution": "Contact Conduit support.",
"docs": "https://v2.docs.conduit.financial/errors#organization-access-suspended",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "CUSTOMER_NOT_FOUND",
"title": "Customer Not Found",
"status": 404,
"detail": "No customer exists with the specified ID, or the customer belongs to a different organization.",
"resolution": "Verify the customer ID is correct. Use the list customers endpoint to find valid customer IDs for your organization.",
"docs": "https://v2.docs.conduit.financial/errors#customer-not-found",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "IDEMPOTENCY_KEY_CONFLICT",
"title": "Idempotency Key Conflict",
"status": 409,
"detail": "The idempotency key was previously used with a different request body, and that request succeeded or ended in a `5xx`. A `4xx` response does not bind the key. Idempotency keys are bound to the exact request shape — replays must match the original.",
"resolution": "Use a fresh idempotency key for the new request, or replay the original request unchanged.",
"docs": "https://v2.docs.conduit.financial/errors#idempotency-key-conflict",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "UNSUPPORTED_MEDIA_TYPE",
"title": "Unsupported Media Type",
"status": 415,
"detail": "The request carries a body with a Content-Type this endpoint cannot parse. JSON endpoints accept 'application/json'; a body with no Content-Type header at all is assumed to be JSON. File-upload endpoints accept only 'multipart/form-data' — JSON or undeclared bodies are rejected there.",
"resolution": "Send the request body with the 'Content-Type: application/json' header. For file uploads, use 'Content-Type: multipart/form-data' — upload endpoints accept no other body type.",
"docs": "https://v2.docs.conduit.financial/errors#unsupported-media-type",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "CUSTOMER_NOT_ONBOARDED",
"title": "Customer Not Onboarded",
"status": 422,
"detail": "This operation requires the customer to have completed onboarding, but the customer has not been fully onboarded yet.",
"resolution": "Complete the customer onboarding process before attempting this operation. See the onboarding guide for the required steps.",
"docs": "https://v2.docs.conduit.financial/errors/customer-not-onboarded",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "RATE_LIMITED",
"title": "Rate Limited",
"status": 429,
"detail": "Too many requests. This error is returned by three independent checks: the per-organization bucket applied to every authenticated API request; the per-IP bucket applied to unauthenticated traffic before an API key is validated; and the per-IP bucket applied when repeated invalid API keys are submitted from the same address. Honor the Retry-After header (also exposed as retryAfterSeconds in the body) before retrying. Current limits and remaining budget are visible in X-RateLimit-Limit (the bucket size), X-RateLimit-Remaining, and X-RateLimit-Reset (seconds until the bucket refills) on every response once your API key is accepted.",
"resolution": "Sleep until Retry-After seconds have elapsed, then retry. For sustained workloads exceeding the per-organization defaults, request a rate-limit increase through your support contact.",
"docs": "https://v2.docs.conduit.financial/errors#rate-limited",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z",
"retryAfterSeconds": 3
}
{
"type": "INTERNAL_ERROR",
"title": "Internal Error",
"status": 500,
"detail": "An unexpected error occurred while processing your request.",
"resolution": "Retry the request after a brief delay. If the error persists, contact support and include the correlationId from the error response for investigation.",
"docs": "https://v2.docs.conduit.financial/errors#internal-error",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
Caller-generated unique key that lets the server safely replay this request. The original response is returned for 30 days on any retry with the same key from the same organization, with the response header Idempotency-Replayed: true. Required on every state-changing money-moving or resource-creating POST.
Client-supplied reference for the application this feature request creates. Stored on that application and echoed on it, so GET /v2/applications?clientReferenceId= finds it again. 1-255 characters from A-Za-z, 0-9, underscore, hyphen, colon, and period — no spaces.
Client-provided identifier for cross-referencing. Omitted when the client did not supply one. 1-255 characters from A-Za-z, 0-9, underscore, hyphen, colon, and period — no spaces.
Whether a corrected application will be considered. true: correct the data and submit a fresh application. false: the decision is final, do not resubmit. Omitted on non-rejected applications.
Where the review of a processing application stands. automated: Conduit's automated review is still running. operator: the automated review finished without a decision, or Conduit has an open request for information about the application. A Conduit operator owns the next step unless the request needs your answer. operator means no automated decision will come; expect a decision or a request for information from Conduit. Present only while status is processing.
Customer this onboarding application produced. Omitted while the application is still being reviewed; present after approval persists the customer row.
People declared on the submission, in submit order: the owners, controlling persons and legal representatives of a business, or the one account holder of an individual. Omitted before the application carries a submission.
Integrator guidance for the resubmission. Present only on a rejected application whose resubmittable is true. A fixed line — display or log it, do not parse it. Omitted on non-rejected applications and on final rejections.
Questions to address in the resubmission. Present only on a rejected application whose resubmittable is true when Conduit asks for more information. Omitted otherwise.
{
"type": "INVALID_OID_FORMAT",
"title": "Invalid Object ID Format",
"status": 400,
"detail": "A path or query parameter expected a valid object identifier but received a value that does not match the expected format.",
"resolution": "Verify that all IDs in the request URL and query parameters are correctly formatted. IDs are typically prefixed strings like 'cus_...', 'app_...', or 'doc_...'.",
"docs": "https://v2.docs.conduit.financial/errors#invalid-oid-format",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "API_KEY_MISSING",
"title": "API Key Missing",
"status": 401,
"detail": "The request did not include an API key. All API requests must be authenticated.",
"resolution": "Include your API key in the 'x-api-key' header with every request.",
"docs": "https://v2.docs.conduit.financial/errors#api-key-missing",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "ORGANIZATION_ACCESS_SUSPENDED",
"title": "Organization Access Suspended",
"status": 403,
"detail": "Conduit has suspended this organization's access. Requests with the organization's API keys and from its users are refused until Conduit restores access.",
"resolution": "Contact Conduit support.",
"docs": "https://v2.docs.conduit.financial/errors#organization-access-suspended",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "CUSTOMER_NOT_FOUND",
"title": "Customer Not Found",
"status": 404,
"detail": "No customer exists with the specified ID, or the customer belongs to a different organization.",
"resolution": "Verify the customer ID is correct. Use the list customers endpoint to find valid customer IDs for your organization.",
"docs": "https://v2.docs.conduit.financial/errors#customer-not-found",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "IDEMPOTENCY_KEY_CONFLICT",
"title": "Idempotency Key Conflict",
"status": 409,
"detail": "The idempotency key was previously used with a different request body, and that request succeeded or ended in a `5xx`. A `4xx` response does not bind the key. Idempotency keys are bound to the exact request shape — replays must match the original.",
"resolution": "Use a fresh idempotency key for the new request, or replay the original request unchanged.",
"docs": "https://v2.docs.conduit.financial/errors#idempotency-key-conflict",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "UNSUPPORTED_MEDIA_TYPE",
"title": "Unsupported Media Type",
"status": 415,
"detail": "The request carries a body with a Content-Type this endpoint cannot parse. JSON endpoints accept 'application/json'; a body with no Content-Type header at all is assumed to be JSON. File-upload endpoints accept only 'multipart/form-data' — JSON or undeclared bodies are rejected there.",
"resolution": "Send the request body with the 'Content-Type: application/json' header. For file uploads, use 'Content-Type: multipart/form-data' — upload endpoints accept no other body type.",
"docs": "https://v2.docs.conduit.financial/errors#unsupported-media-type",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "CUSTOMER_NOT_ONBOARDED",
"title": "Customer Not Onboarded",
"status": 422,
"detail": "This operation requires the customer to have completed onboarding, but the customer has not been fully onboarded yet.",
"resolution": "Complete the customer onboarding process before attempting this operation. See the onboarding guide for the required steps.",
"docs": "https://v2.docs.conduit.financial/errors/customer-not-onboarded",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{
"type": "RATE_LIMITED",
"title": "Rate Limited",
"status": 429,
"detail": "Too many requests. This error is returned by three independent checks: the per-organization bucket applied to every authenticated API request; the per-IP bucket applied to unauthenticated traffic before an API key is validated; and the per-IP bucket applied when repeated invalid API keys are submitted from the same address. Honor the Retry-After header (also exposed as retryAfterSeconds in the body) before retrying. Current limits and remaining budget are visible in X-RateLimit-Limit (the bucket size), X-RateLimit-Remaining, and X-RateLimit-Reset (seconds until the bucket refills) on every response once your API key is accepted.",
"resolution": "Sleep until Retry-After seconds have elapsed, then retry. For sustained workloads exceeding the per-organization defaults, request a rate-limit increase through your support contact.",
"docs": "https://v2.docs.conduit.financial/errors#rate-limited",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z",
"retryAfterSeconds": 3
}
{
"type": "INTERNAL_ERROR",
"title": "Internal Error",
"status": 500,
"detail": "An unexpected error occurred while processing your request.",
"resolution": "Retry the request after a brief delay. If the error persists, contact support and include the correlationId from the error response for investigation.",
"docs": "https://v2.docs.conduit.financial/errors#internal-error",
"instance": "/v2/...",
"correlationId": "00469ea4-52c1-4ffa-bd05-9f28b236a5fe",
"timestamp": "2026-01-15T09:30:00.000Z"
}
{"docsConfig":{"theme":"maple","$schema":"https://mintlify.com/docs.json","name":"Conduit API","colors":{"primary":"#0445F5"},"favicon":"https://mintcdn.com/conduit-v2/TDfL4m3KARlDDGif/favicon.svg?fit=max\u0026auto=format\u0026n=TDfL4m3KARlDDGif\u0026q=85\u0026s=26f960e7de4cc7324c4942bb0970c778","api":{"playground":{}},"navbar":{"primary":{"type":"button","label":"Talk to Sales","href":"https://meetings.hubspot.com/gianmarco-carmelino/talk-to-sales"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"variables":{"production-host":"https://api.conduit.financial","sandbox-host":"https://api.sandbox.conduit.financial"},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"Trust Center","href":"https://trust.conduitpay.com/"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"conduit-v2","hasAudioNarration":false,"actualSubdomain":"conduit-v2","customDomains":["docs.conduit.financial"],"gitSource":{"type":"github","owner":"conduit-financial","repo":"conduit-api","deployBranch":"main","contentDirectory":"api-docs","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af240c680c4ca53605dbb7e","clientVersion":"0.0.4094","searchFilterCounts":[{"language":"default","tag":"KYB Reference","count":204},{"language":"default","tag":"API Reference","count":138},{"language":"default","tag":"Africa","count":47},{"language":"default","tag":"Europe","count":45},{"language":"default","tag":"Latin America","count":41},{"language":"default","tag":"Sandbox","count":36},{"language":"default","tag":"Asia-Pacific","count":35},{"language":"default","tag":"Guides","count":33},{"language":"default","tag":"Asia (West, South \u0026 Central)","count":28},{"language":"default","tag":"Errors","count":22}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"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":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/features/submit-a-feature-request","slug":"/api-reference/features/submit-a-feature-request","pageMetadata":{"title":"Submit a feature request","description":"Call `GET /customers/:customerId/features/requirements` first. Send dynamic data under `fields` (nested objects, NOT dotted keys). Upload each required document via `POST /v2/documents` (file only) and pass returned ids in `documentIds[]`. `asset` is required for VIRTUAL_ACCOUNT.","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/features","href":"/api-reference/features/submit-a-feature-request","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Call \", _jsx(_components.code, {\n children: \"GET /customers/:customerId/features/requirements\"\n }), \" first. Send dynamic data under \", _jsx(_components.code, {\n children: \"fields\"\n }), \" (nested objects, NOT dotted keys). Upload each required document via \", _jsx(_components.code, {\n children: \"POST /v2/documents\"\n }), \" (file only) and pass returned ids in \", _jsx(_components.code, {\n children: \"documentIds[]\"\n }), \". \", _jsx(_components.code, {\n children: \"asset\"\n }), \" is required for VIRTUAL_ACCOUNT.\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Submit a feature request","description":"Call `GET /customers/:customerId/features/requirements` first. Send dynamic data under `fields` (nested objects, NOT dotted keys). Upload each required document via `POST /v2/documents` (file only) and pass returned ids in `documentIds[]`. `asset` is required for VIRTUAL_ACCOUNT.","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/features","href":"/api-reference/features/submit-a-feature-request","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/conduit-v2/fc10fecbb08a67cd/changelog-feed.js"],"openApiReferenceData":{"operation":{"description":"Call `GET /customers/:customerId/features/requirements` first. Send dynamic data under `fields` (nested objects, NOT dotted keys). Upload each required document via `POST /v2/documents` (file only) and pass returned ids in `documentIds[]`. `asset` is required for VIRTUAL_ACCOUNT.","operationId":"FeaturesController_request_v2","parameters":["484a55de-2b50-4c7c-b33e-4a67a33bbde1","e8e3e389-f87b-4336-8dbd-0a9804e78e3b"],"requestBody":"2990803b-2ed1-4597-801d-d09dbe00979c","responses":{"202":"40fdf7bf-7a8f-4bd9-af97-d9d0a912666f","400":"64135a33-ad38-4b53-a6d5-46f4827200ff","401":"bf25a157-1def-4c12-b9fc-bb8e4a128347","403":"71752115-7700-4328-a56f-c27c097d688b","404":"f8fa5bcf-5988-4b7d-bb6a-f15bff856804","409":"20bfa581-5caf-401a-9d50-965a419b83cb","415":"90516499-de04-42e8-a9a0-e15dbbca9d4e","422":"631eae0b-c7b6-42cc-8b2c-298ff05099da","429":"b90dab93-df09-47fa-9b28-7bb225e57430","500":"fc9cde29-5e47-4cfc-a3e6-51ff4ba3235f"},"summary":"Submit a feature request","tags":["Features"],"method":"post","type":"path","servers":["5707e0ee-a73c-4f7a-b3dd-5e91e6ddef88","107fb7ae-4503-4921-bfe7-67fa54c45455"],"security":["e216d117-afec-4a29-92f2-646b533f2725"],"path":"/customers/{customerId}/features","baseUrlOptions":["https://api.sandbox.conduit.financial/v2","https://api.conduit.financial/v2"],"title":"Submit a feature request","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"484a55de-2b50-4c7c-b33e-4a67a33bbde1":{"name":"customerId","required":true,"in":"path","schema":{"type":"string","example":"cus_1A2b3C4d5E6f7G8h9I0jKl","isRequired":true,"uniqueKey":"","typeLabel":"string"}},"e8e3e389-f87b-4336-8dbd-0a9804e78e3b":{"name":"Idempotency-Key","in":"header","description":"Caller-generated unique key that lets the server safely replay this request. The original response is returned for 30 days on any retry with the same key from the same organization, with the response header `Idempotency-Replayed: true`. Required on every state-changing money-moving or resource-creating POST.","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,128}$","minLength":1,"maxLength":128,"example":"01J7B3K2X9M8N5P6Q7R8S9T0V1","isRequired":true,"description":"Caller-generated unique key that lets the server safely replay this request. The original response is returned for 30 days on any retry with the same key from the same organization, with the response header `Idempotency-Replayed: true`. Required on every state-changing money-moving or resource-creating POST.","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["virtual_account","crypto_wallet","yield"],"description":"The feature being requested","isRequired":true,"uniqueKey":"type","typeLabel":"enum\u003cstring>"},"clientReferenceId":{"description":"Client-supplied reference for the application this feature request creates. Stored on that application and echoed on it, so GET /v2/applications?clientReferenceId= finds it again. 1-255 characters from A-Za-z, 0-9, underscore, hyphen, colon, and period — no spaces.","example":"ext-feature-001","type":"string","pattern":"^[A-Za-z0-9_\\-:.]{1,255}$","uniqueKey":"clientReferenceId","typeLabel":"string"},"fields":{"description":"Key-value data required by the feature's requirements","type":"object","additionalProperties":false,"properties":{"businessInfo":{"type":"object","description":"Business-level data about the entity.","properties":{"legalName":{"type":"string","description":"The full legal name of the entity as registered with government authorities (matches its Articles of Incorporation or equivalent formation document). Do not abbreviate.","maxLength":255,"uniqueKey":"fields.businessInfo.legalName","typeLabel":"string"},"alternateNameDba":{"type":"string","description":"Any trading name, brand name, or 'doing business as' (DBA) the company uses publicly that differs from the legal name. Leave blank if the company only trades under the legal name.","maxLength":255,"uniqueKey":"fields.businessInfo.alternateNameDba","typeLabel":"string"},"businessEntityId":{"type":"string","description":"Business Entity ID","maxLength":255,"uniqueKey":"fields.businessInfo.businessEntityId","typeLabel":"string"},"taxId":{"type":"string","description":"Tax Identification Number","uniqueKey":"fields.businessInfo.taxId","typeLabel":"string"},"chapter4Status":{"type":"string","description":"The entity's chapter 4 status as stated on line 5 of its Form W-8BEN-E.","enum":["Participating FFI","Reporting Model 1 FFI","Reporting Model 2 FFI","Active NFFE","Passive NFFE"],"uniqueKey":"fields.businessInfo.chapter4Status","typeLabel":"enum\u003cstring>"},"giin":{"type":"string","description":"Global Intermediary Identification Number from the IRS FFI List, line 9a of Form W-8BEN-E; required for an FFI status.","pattern":"^[0-9A-Z]{6}\\.[0-9A-Z]{5}\\.[A-Z]{2}\\.[0-9]{3}$","uniqueKey":"fields.businessInfo.giin","typeLabel":"string"},"website":{"type":"string","description":"Website","format":"uri","maxLength":500,"uniqueKey":"fields.businessInfo.website","typeLabel":"string\u003curi>"},"companyEmail":{"type":"string","description":"Company Email","format":"email","maxLength":255,"uniqueKey":"fields.businessInfo.companyEmail","typeLabel":"string\u003cemail>"},"companyPhone":{"type":"string","description":"Company Phone","uniqueKey":"fields.businessInfo.companyPhone","typeLabel":"string"}},"uniqueKey":"fields.businessInfo","typeLabel":"object"},"registeredAddress":{"type":"object","description":"Registered business address. `country` accepts ISO 3166-1 alpha-2 or alpha-3.","properties":{"country":{"type":"string","description":"Country","uniqueKey":"fields.registeredAddress.country","typeLabel":"string"},"addressLine1":{"type":"string","description":"Street 1","maxLength":500,"uniqueKey":"fields.registeredAddress.addressLine1","typeLabel":"string"},"addressLine2":{"type":"string","description":"Street 2","maxLength":500,"uniqueKey":"fields.registeredAddress.addressLine2","typeLabel":"string"},"city":{"type":"string","description":"City","maxLength":255,"uniqueKey":"fields.registeredAddress.city","typeLabel":"string"},"state":{"type":"string","description":"State / Province","maxLength":255,"uniqueKey":"fields.registeredAddress.state","typeLabel":"string"},"postalCode":{"type":"string","description":"Zip Code","maxLength":20,"uniqueKey":"fields.registeredAddress.postalCode","typeLabel":"string"},"poBox":{"type":"string","description":"P.O. Box Number","pattern":"^[0-9]{4,5}$","uniqueKey":"fields.registeredAddress.poBox","typeLabel":"string"}},"uniqueKey":"fields.registeredAddress","typeLabel":"object"},"operatingAddress":{"type":"object","description":"Operating address when it differs from the registered one. Same leaves and `country` rules.","properties":{"sameAsRegistered":{"type":"boolean","description":"Is the operating address the same as the registered address?","uniqueKey":"fields.operatingAddress.sameAsRegistered","typeLabel":"boolean"},"addressLine1":{"type":"string","description":"Street 1","uniqueKey":"fields.operatingAddress.addressLine1","typeLabel":"string"},"addressLine2":{"type":"string","description":"Street 2","uniqueKey":"fields.operatingAddress.addressLine2","typeLabel":"string"},"city":{"type":"string","description":"City","uniqueKey":"fields.operatingAddress.city","typeLabel":"string"},"state":{"type":"string","description":"State / Province","uniqueKey":"fields.operatingAddress.state","typeLabel":"string"},"country":{"type":"string","description":"Country","uniqueKey":"fields.operatingAddress.country","typeLabel":"string"},"postalCode":{"type":"string","description":"Zip Code","uniqueKey":"fields.operatingAddress.postalCode","typeLabel":"string"}},"uniqueKey":"fields.operatingAddress","typeLabel":"object"},"companyClassification":{"type":"object","description":"Legal-structure and industry classification. `legalStructure` and `primaryIndustry` are jurisdiction-specific; take their accepted values from `GET /v2/onboarding/requirements`.","properties":{"legalStructure":{"type":"string","description":"Legal Structure","uniqueKey":"fields.companyClassification.legalStructure","typeLabel":"string"},"llcTaxClassification":{"type":"string","description":"How the IRS taxes this US LLC: Partnership, C-Corp or S-Corp. A multi-member LLC that made no election is a Partnership. Applies only to an LLC registered in the USA.","enum":["Partnership","C-Corp","S-Corp"],"uniqueKey":"fields.companyClassification.llcTaxClassification","typeLabel":"enum\u003cstring>"},"legalStructureOther":{"type":"string","description":"Legal Structure (Other)","pattern":"\\S","maxLength":255,"uniqueKey":"fields.companyClassification.legalStructureOther","typeLabel":"string"},"incorporationDate":{"type":"string","description":"Date of Incorporation","format":"date","uniqueKey":"fields.companyClassification.incorporationDate","typeLabel":"string\u003cdate>"},"primaryIndustry":{"type":"string","description":"The single industry that best describes your primary revenue source, chosen from the current policy catalog. If the business spans multiple industries, pick the one generating the most revenue rather than the broadest category.","maxLength":120,"uniqueKey":"fields.companyClassification.primaryIndustry","typeLabel":"string"},"primaryIndustryOther":{"type":"string","description":"Primary Industry (Other)","maxLength":500,"uniqueKey":"fields.companyClassification.primaryIndustryOther","typeLabel":"string"},"hasDba":{"type":"boolean","description":"Has DBA / Trade Name?","uniqueKey":"fields.companyClassification.hasDba","typeLabel":"boolean"},"isPubliclyListed":{"type":"boolean","description":"Publicly Listed?","uniqueKey":"fields.companyClassification.isPubliclyListed","typeLabel":"boolean"},"stockExchange":{"type":"string","description":"Stock Exchange","enum":["NYSE","NASDAQ","LSE","JSE","NSE","B3","BMV","SGX","HKEX","TSX","ASX","Other"],"uniqueKey":"fields.companyClassification.stockExchange","typeLabel":"enum\u003cstring>"},"stockExchangeOther":{"type":"string","description":"Stock Exchange (Other)","uniqueKey":"fields.companyClassification.stockExchangeOther","typeLabel":"string"},"tickerSymbol":{"type":"string","description":"Ticker Symbol","uniqueKey":"fields.companyClassification.tickerSymbol","typeLabel":"string"}},"uniqueKey":"fields.companyClassification","typeLabel":"object"},"businessActivity":{"type":"object","description":"Operating-activity descriptors.","properties":{"businessActivitiesDescription":{"type":"string","description":"Plain-language summary of what the business actually does day-to-day. A paragraph is enough — describe the core economic activity, not the legal form.","uniqueKey":"fields.businessActivity.businessActivitiesDescription","typeLabel":"string"},"accountPurpose":{"type":"array","description":"Select every USD virtual-account use case that applies, even those that are infrequent. This drives risk-tier categorisation and monitoring thresholds, so being complete is better than picking only the dominant flow.","items":{"type":"string","enum":["Treasury Management","Payroll","Vendor/Supplier Payments","Operating Expenses","Client Collections","Investment","FX Settlement","Escrow","Other"],"uniqueKey":"fields.businessActivity.accountPurpose.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.businessActivity.accountPurpose","typeLabel":"enum\u003cstring>[]"},"accountPurposeOther":{"type":"string","description":"Describe the USD VA use case","uniqueKey":"fields.businessActivity.accountPurposeOther","typeLabel":"string"},"productsServices":{"type":"array","description":"What the business sells to its customers. Internal-use products (HR systems, IT tooling, etc.) are not the target here — focus on what generates revenue. Select all that apply.","items":{"type":"string","enum":["Technology / SaaS Provider","Sale of Goods / Non-Financial Services","Import / Export","Wholesale / Distribution","Investment Advisory","Digital Wallets / Stored Value","Custody","Lending / Credit","Escrow / Settlement Services","Crypto Exchange or Trading","Cross-Border Payments","NFT / DeFi / Web3","Foreign Exchange / Currency Conversion","Card Issuance \u0026 Merchant Services","Brokerage / Trading Platform","Asset Management / Fund Services","Precious Metals / High-Value Commodities","Marketplace or Platform Operator","Real Estate / Title / Property Escrow","Crowdfunding / Capital Raising Platforms","Trust and Company Services (TCSP)"],"uniqueKey":"fields.businessActivity.productsServices.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.businessActivity.productsServices","typeLabel":"enum\u003cstring>[]"},"productsServicesOther":{"type":"string","description":"Products / Services (Other)","uniqueKey":"fields.businessActivity.productsServicesOther","typeLabel":"string"},"countriesOfActivity":{"type":"array","description":"Countries where the business has customers, counterparties, or operations. Include jurisdictions where the business receives payments, sends payments, or holds assets — not just the country of incorporation.","items":{"type":"string","enum":["AFG","ALB","DZA","ASM","AND","AGO","AIA","ATA","ATG","ARG","ARM","ABW","AUS","AUT","AZE","BHS","BHR","BGD","BRB","BLR","BEL","BLZ","BEN","BMU","BTN","BOL","BES","BIH","BWA","BVT","BRA","IOT","BRN","BGR","BFA","BDI","CPV","KHM","CMR","CAN","CYM","CAF","TCD","CHL","CHN","CXR","CCK","COL","COM","COG","COD","COK","CRI","CIV","HRV","CUB","CUW","CYP","CZE","DNK","DJI","DMA","DOM","ECU","EGY","SLV","GNQ","ERI","EST","SWZ","ETH","FLK","FRO","FJI","FIN","FRA","GUF","PYF","ATF","GAB","GMB","GEO","DEU","GHA","GIB","GRC","GRL","GRD","GLP","GUM","GTM","GGY","GIN","GNB","GUY","HTI","HMD","VAT","HND","HKG","HUN","ISL","IND","IDN","IRN","IRQ","IRL","IMN","ISR","ITA","JAM","JPN","JEY","JOR","KAZ","KEN","KIR","PRK","KOR","KWT","KGZ","LAO","LVA","LBN","LSO","LBR","LBY","LIE","LTU","LUX","MAC","MDG","MWI","MYS","MDV","MLI","MLT","MHL","MTQ","MRT","MUS","MYT","MEX","FSM","MDA","MCO","MNG","MNE","MSR","MAR","MOZ","MMR","NAM","NRU","NPL","NLD","NCL","NZL","NIC","NER","NGA","NIU","NFK","MKD","MNP","NOR","OMN","PAK","PLW","PSE","PAN","PNG","PRY","PER","PHL","PCN","POL","PRT","PRI","QAT","REU","ROU","RUS","RWA","BLM","SHN","KNA","LCA","MAF","SPM","VCT","WSM","SMR","STP","SAU","SEN","SRB","SYC","SLE","SGP","SXM","SVK","SVN","SLB","SOM","ZAF","SGS","SSD","ESP","LKA","SDN","SUR","SJM","SWE","CHE","SYR","TWN","TJK","TZA","THA","TLS","TGO","TKL","TON","TTO","TUN","TUR","TKM","TCA","TUV","UGA","UKR","ARE","GBR","USA","UMI","URY","UZB","VUT","VEN","VNM","VGB","VIR","WLF","ESH","YEM","ZMB","ZWE"],"uniqueKey":"fields.businessActivity.countriesOfActivity.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.businessActivity.countriesOfActivity","typeLabel":"enum\u003cstring>[]"},"countriesOfActivityOther":{"type":"string","description":"Countries of Activity (Other)","uniqueKey":"fields.businessActivity.countriesOfActivityOther","typeLabel":"string"},"avgMonthlyVolume":{"type":"string","description":"Expected average USD value flowing through the business's Conduit virtual account each month, across all in- and out-bound transactions combined.","enum":["VOLUME_LT_10K","VOLUME_10K_50K","VOLUME_50K_250K","VOLUME_250K_1M","VOLUME_GT_1M"],"uniqueKey":"fields.businessActivity.avgMonthlyVolume","typeLabel":"enum\u003cstring>"},"estimatedTransactionsPerMonth":{"type":"string","description":"Expected average count of transactions per month through the business's Conduit virtual account, across all flows combined (deposits, withdrawals, conversions).","enum":["\u003c10","10-50","50-200","200-1,000","1,000+"],"uniqueKey":"fields.businessActivity.estimatedTransactionsPerMonth","typeLabel":"enum\u003cstring>"},"sourceOfFunds":{"type":"array","description":"Where the money the business expects to receive through Conduit originates. Select all that apply (e.g. customer revenue, investor capital, lending proceeds). Use the 'Other' follow-up for sources not on the list.","items":{"type":"string","enum":["Revenue/Sales","VC/PE Investment","Loans/Debt Financing","Government Grant","Personal/Founder Funds","Donations","Other"],"uniqueKey":"fields.businessActivity.sourceOfFunds.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.businessActivity.sourceOfFunds","typeLabel":"enum\u003cstring>[]"},"sourceOfFundsOther":{"type":"string","description":"Source of Funds (Other)","uniqueKey":"fields.businessActivity.sourceOfFundsOther","typeLabel":"string"},"fundFlowDescription":{"type":"string","description":"Describe the typical end-to-end flow of funds through the business: who sends money in, what triggers the inbound flow, and where the money is ultimately paid out. One or two paragraphs.","uniqueKey":"fields.businessActivity.fundFlowDescription","typeLabel":"string"},"isRegulated":{"type":"boolean","description":"Regulated / Financial Services?","uniqueKey":"fields.businessActivity.isRegulated","typeLabel":"boolean"},"regulatoryAuthorities":{"type":"array","description":"Regulatory Authorities","items":{"type":"string","enum":["Central Bank of Kenya","FCA","SEC","OCC","FinCEN","SARB","CBN","BdF","BaFin","MAS","Other"],"uniqueKey":"fields.businessActivity.regulatoryAuthorities.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.businessActivity.regulatoryAuthorities","typeLabel":"enum\u003cstring>[]"},"regulatoryAuthorityOther":{"type":"string","description":"Regulatory Authority (Other)","uniqueKey":"fields.businessActivity.regulatoryAuthorityOther","typeLabel":"string"},"licenseNumber":{"type":"string","description":"License / Registration Number","uniqueKey":"fields.businessActivity.licenseNumber","typeLabel":"string"},"isNonbankFinancialInstitution":{"type":"boolean","description":"Yes if the business provides financial services without holding a banking charter — e.g. lending, money transmission or payment services, broker-dealer or investment advisory activity, insurance, currency exchange, or consumer finance. Chartered banks and credit unions answer No.","uniqueKey":"fields.businessActivity.isNonbankFinancialInstitution","typeLabel":"boolean"},"operatesOnBehalf":{"type":"boolean","description":"Select Yes if the business receives, holds or sends money that belongs to its own clients or customers. Select No if the business only moves its own money, including payments to its own vendors or suppliers.","uniqueKey":"fields.businessActivity.operatesOnBehalf","typeLabel":"boolean"},"holdsClientFundsInVirtualAccounts":{"type":"boolean","description":"Select Yes if the business holds, receives or sends funds that belong to its clients through virtual accounts opened in its name. Select No if every virtual account holds only the company's own funds.","uniqueKey":"fields.businessActivity.holdsClientFundsInVirtualAccounts","typeLabel":"boolean"},"usesBlockchainWallets":{"type":"boolean","description":"Uses Blockchain Wallets?","uniqueKey":"fields.businessActivity.usesBlockchainWallets","typeLabel":"boolean"},"onBehalfDescription":{"type":"string","description":"On Behalf Description","uniqueKey":"fields.businessActivity.onBehalfDescription","typeLabel":"string"},"walletAddresses":{"type":"string","description":"Blockchain Wallet Addresses","uniqueKey":"fields.businessActivity.walletAddresses","typeLabel":"string"},"walletExchanges":{"type":"string","description":"Blockchain Wallet Exchanges","uniqueKey":"fields.businessActivity.walletExchanges","typeLabel":"string"},"isGeneratingRevenue":{"type":"boolean","description":"Currently Generating Revenue?","uniqueKey":"fields.businessActivity.isGeneratingRevenue","typeLabel":"boolean"},"revenueCovers":{"type":"string","description":"What share of the business's monthly operating expenses its revenue currently covers, on average over the trailing three months.","enum":["All operating expenses","Most","Some","Minimal"],"uniqueKey":"fields.businessActivity.revenueCovers","typeLabel":"enum\u003cstring>"},"hasInstitutionalInvestors":{"type":"boolean","description":"Yes if the business has raised capital from venture capital, private equity, hedge funds, family offices, or strategic corporate investors. Friends-and-family or solo-angel equity does not count as institutional.","uniqueKey":"fields.businessActivity.hasInstitutionalInvestors","typeLabel":"boolean"},"financialRunway":{"type":"string","description":"Financial Runway (Months)","enum":["RUNWAY_LT_3M","RUNWAY_3M_6M","RUNWAY_6M_12M","RUNWAY_GT_12M"],"uniqueKey":"fields.businessActivity.financialRunway","typeLabel":"enum\u003cstring>"},"cashOnHand":{"type":"string","description":"Total liquid funds the business currently holds across all business accounts (cash, money-market, short-dated treasuries). Excludes owners' personal accounts and illiquid or locked-up assets.","enum":["\u003c$50K","$50K-$250K","$250K-$1M","$1M-$5M","$5M-$25M","$25M+"],"uniqueKey":"fields.businessActivity.cashOnHand","typeLabel":"enum\u003cstring>"},"runwayExplanation":{"type":"string","description":"Runway Explanation","uniqueKey":"fields.businessActivity.runwayExplanation","typeLabel":"string"},"hasIndependentAmlAudit":{"type":"boolean","description":"Has Independent AML Audit?","uniqueKey":"fields.businessActivity.hasIndependentAmlAudit","typeLabel":"boolean"},"hasHighRiskIndustries":{"type":"boolean","description":"Answer Yes if the business directly participates in or earns revenue from any of these high-risk industries: Adult Entertainment, Cannabis/Marijuana, Cryptocurrency/Digital Assets, Firearms/Ammunition, Gambling/Online Gaming, Money Services Business, Precious Metals/Stones, Third-Party Payment Processing, Virtual Currency/Digital Tokens, Pawnbroker, Tobacco, Pharmaceutical Sales (Online), Shell Banks, Non-Profit / Charity, Cash-Intensive Retail. If the activity isn't listed but is high-risk, answer Yes and select \"Other\" to describe it.","uniqueKey":"fields.businessActivity.hasHighRiskIndustries","typeLabel":"boolean"},"highRiskIndustries":{"type":"array","description":"Industries the business directly participates in or earns revenue from. This asks about direct participation, not incidental exposure (e.g. having a customer in a high-risk industry). Select 'Other' if the activity isn't listed, then describe it.","items":{"type":"string","enum":["Adult Entertainment","Cannabis/Marijuana","Cryptocurrency/Digital Assets","Firearms/Ammunition","Gambling/Online Gaming","Money Services Business","Precious Metals/Stones","Third-Party Payment Processing","Virtual Currency/Digital Tokens","Pawnbroker","Tobacco","Pharmaceutical Sales (Online)","Shell Banks","Non-Profit / Charity","Cash-Intensive Retail","Other","None of the Above"],"uniqueKey":"fields.businessActivity.highRiskIndustries.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.businessActivity.highRiskIndustries","typeLabel":"enum\u003cstring>[]"},"highRiskDetails":{"type":"string","description":"High-Risk Details","uniqueKey":"fields.businessActivity.highRiskDetails","typeLabel":"string"},"hasRegulatedOrRestrictedActivities":{"type":"boolean","description":"Answer Yes if the business directly participates in or earns revenue from any activity on the current policy catalog. If the activity isn't listed but is regulated or restricted, answer Yes and select \"Other\" to describe it.","uniqueKey":"fields.businessActivity.hasRegulatedOrRestrictedActivities","typeLabel":"boolean"},"regulatedOrRestrictedActivities":{"type":"array","description":"Activities the business directly participates in or earns revenue from, chosen from the current policy catalog. This asks about direct participation, not incidental exposure. \"Other\" is composable with named activities — select it alongside any that apply, then describe it below.","items":{"type":"string","uniqueKey":"fields.businessActivity.regulatedOrRestrictedActivities.items.[INDEX]","typeLabel":"string"},"uniqueKey":"fields.businessActivity.regulatedOrRestrictedActivities","typeLabel":"string[]"},"otherActivityDescription":{"type":"string","description":"Other Activity Description","maxLength":500,"uniqueKey":"fields.businessActivity.otherActivityDescription","typeLabel":"string"}},"uniqueKey":"fields.businessActivity","typeLabel":"object"},"compliance":{"type":"object","description":"Compliance-programme attestations.","properties":{"hasComplianceProgram":{"type":"boolean","description":"Yes if the business has documented BSA/AML or KYC policies, named a compliance owner, and operates ongoing controls (screening, monitoring, periodic reviews). Informal or ad-hoc controls do not qualify as a 'program'.","uniqueKey":"fields.compliance.hasComplianceProgram","typeLabel":"boolean"},"complianceManager":{"type":"string","description":"Compliance Manager","uniqueKey":"fields.compliance.complianceManager","typeLabel":"string"},"complianceManagerEmail":{"type":"string","description":"Compliance Manager Email","format":"email","uniqueKey":"fields.compliance.complianceManagerEmail","typeLabel":"string\u003cemail>"},"sanctionsScreening":{"type":"string","description":"How the business screens customers and counterparties against sanctions lists (OFAC, UN, EU). Pick the primary method: automated vendor (e.g. ComplyAdvantage, LexisNexis, Refinitiv), in-house tooling, manual checks against published lists, or none.","enum":["Chainalysis","Elliptic","ComplyAdvantage","Sardine","TRM Labs","Refinitiv World-Check","Dow Jones Risk \u0026 Compliance","LexisNexis","Sanctions.io","Manual OFAC List Checks","No Screening","Other"],"uniqueKey":"fields.compliance.sanctionsScreening","typeLabel":"enum\u003cstring>"},"sanctionsScreeningOther":{"type":"string","description":"Sanctions Screening (Other)","uniqueKey":"fields.compliance.sanctionsScreeningOther","typeLabel":"string"},"cddMethod":{"type":"string","description":"How the business verifies the identity of its customers and their beneficial owners (Customer Due Diligence). Pick the primary approach: third-party KYC vendor, in-house workflow, document-only review at onboarding, or none.","enum":["Jumio","Onfido","Veriff","Sumsub","Persona","Alloy","Trulioo","LexisNexis","Plaid Identity Verification","Manual Document Review","No CDD Process","Other"],"uniqueKey":"fields.compliance.cddMethod","typeLabel":"enum\u003cstring>"},"cddMethodOther":{"type":"string","description":"Customer Due Diligence Method (Other)","uniqueKey":"fields.compliance.cddMethodOther","typeLabel":"string"},"transactionMonitoring":{"type":"array","description":"How the business flags unusual transaction patterns post-onboarding. Select all that apply: rule-based engines, vendor platforms, manual review against thresholds, periodic file review, etc.","items":{"type":"string","enum":["Chainalysis KYT","Elliptic Lens","ComplyAdvantage","Sardine","TRM Labs","Featurespace","Manual Monitoring","No Transaction Monitoring","Other"],"uniqueKey":"fields.compliance.transactionMonitoring.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.compliance.transactionMonitoring","typeLabel":"enum\u003cstring>[]"},"transactionMonitoringOther":{"type":"string","description":"Transaction Monitoring (Other)","uniqueKey":"fields.compliance.transactionMonitoringOther","typeLabel":"string"},"complianceTraining":{"type":"array","description":"Compliance Training Programs","items":{"type":"string","enum":["Annual AML/KYC Training","Role-Specific Compliance Training","External Compliance Certifications","Ad Hoc Training Only","No Formal Training Program"],"uniqueKey":"fields.compliance.complianceTraining.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.compliance.complianceTraining","typeLabel":"enum\u003cstring>[]"},"hasAmlAudit":{"type":"boolean","description":"Has Independent AML Audit?","uniqueKey":"fields.compliance.hasAmlAudit","typeLabel":"boolean"},"noAuditExplanation":{"type":"string","description":"No Audit Explanation","uniqueKey":"fields.compliance.noAuditExplanation","typeLabel":"string"},"auditIntention":{"type":"string","description":"Audit Intention","uniqueKey":"fields.compliance.auditIntention","typeLabel":"string"},"leadershipExperience":{"type":"string","description":"Aggregate years of BSA / AML / financial-compliance experience among the leadership responsible for the program — typically the compliance manager or MLRO, plus the CEO if owner-operator.","enum":["Extensive (5+ years in compliance/regulated industry)","Moderate (2-5 years in compliance/regulated industry)","Limited (Less than 2 years or no direct experience)"],"uniqueKey":"fields.compliance.leadershipExperience","typeLabel":"enum\u003cstring>"}},"uniqueKey":"fields.compliance","typeLabel":"object"},"regulatoryHistory":{"type":"object","description":"Regulatory and adverse-action history.","properties":{"hasUSBankAccount":{"type":"boolean","description":"Existing US Bank Account?","uniqueKey":"fields.regulatoryHistory.hasUSBankAccount","typeLabel":"boolean"},"deniedBankAccount":{"type":"boolean","description":"Ever Denied a US Bank Account?","uniqueKey":"fields.regulatoryHistory.deniedBankAccount","typeLabel":"boolean"},"deniedBankAccountDetails":{"type":"string","description":"The reason the bank gave for denying the account. Do not enter account or routing numbers.","uniqueKey":"fields.regulatoryHistory.deniedBankAccountDetails","typeLabel":"string"},"subjectToAdverseActions":{"type":"boolean","description":"Yes if the business has ever been subject to regulatory enforcement, consent orders, fines, license revocations, criminal proceedings, or significant civil litigation — past or pending. Use the follow-up field to describe each instance.","uniqueKey":"fields.regulatoryHistory.subjectToAdverseActions","typeLabel":"boolean"},"hasPoliticallyExposedPersons":{"type":"boolean","description":"Yes if any owner, director, or senior executive of the business is — or is a close family member or known associate of — a current or former senior government official, head of state, senior politician, judge, or military officer. This is the standard 'Politically Exposed Person' (PEP) definition. Disclose the business's own people, not its customers.","uniqueKey":"fields.regulatoryHistory.hasPoliticallyExposedPersons","typeLabel":"boolean"},"businessAdverseActions":{"type":"array","description":"Business Adverse Actions","items":{"type":"string","enum":["Sanctions","Regulatory enforcement","Criminal investigation","Civil litigation","Bankruptcy/insolvency","Account closure/termination","Consent order","Seizure/forfeiture","None"],"uniqueKey":"fields.regulatoryHistory.businessAdverseActions.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.regulatoryHistory.businessAdverseActions","typeLabel":"enum\u003cstring>[]"},"ownersDirectorsAdverseActions":{"type":"array","description":"Adverse-action categories that have affected any current owner, director, or senior executive personally — not the business entity itself. Includes past employer enforcement actions where the individual was named. Select 'None' if none apply.","items":{"type":"string","enum":["Sanctions","Regulatory enforcement","Criminal investigation","Civil litigation","Bankruptcy/insolvency","Account closure/termination","Consent order","Seizure/forfeiture","None"],"uniqueKey":"fields.regulatoryHistory.ownersDirectorsAdverseActions.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.regulatoryHistory.ownersDirectorsAdverseActions","typeLabel":"enum\u003cstring>[]"},"adverseActionsDetails":{"type":"string","description":"Adverse Actions Details","uniqueKey":"fields.regulatoryHistory.adverseActionsDetails","typeLabel":"string"},"isPoliticallyExposedPerson":{"type":"boolean","description":"Yes if the account holder is — or is a close family member or known associate of — a current or former senior government official, head of state, senior politician, judge, or military officer. This is the standard 'Politically Exposed Person' (PEP) definition.","uniqueKey":"fields.regulatoryHistory.isPoliticallyExposedPerson","typeLabel":"boolean"},"adverseActions":{"type":"array","description":"Adverse Actions","items":{"type":"string","enum":["Sanctions","Regulatory enforcement","Criminal investigation","Civil litigation","Bankruptcy/insolvency","Account closure/termination","Consent order","Seizure/forfeiture","None"],"uniqueKey":"fields.regulatoryHistory.adverseActions.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.regulatoryHistory.adverseActions","typeLabel":"enum\u003cstring>[]"}},"uniqueKey":"fields.regulatoryHistory","typeLabel":"object"},"ownership":{"type":"object","description":"Beneficial-owner and controlling-person disclosure under `persons[]`. Persons are natural people: disclose a corporate owner under `relatedCompany` and look through it to the individuals behind it.","properties":{"persons":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Person Record ID","uniqueKey":"fields.ownership.persons.items.[INDEX].id","typeLabel":"string"},"firstName":{"type":"string","description":"First Name","maxLength":255,"uniqueKey":"fields.ownership.persons.items.[INDEX].firstName","typeLabel":"string"},"lastName":{"type":"string","description":"Last Name","maxLength":255,"uniqueKey":"fields.ownership.persons.items.[INDEX].lastName","typeLabel":"string"},"middleName":{"type":"string","description":"Middle Name","maxLength":255,"uniqueKey":"fields.ownership.persons.items.[INDEX].middleName","typeLabel":"string"},"email":{"type":"string","description":"Email","format":"email","maxLength":255,"uniqueKey":"fields.ownership.persons.items.[INDEX].email","typeLabel":"string\u003cemail>"},"phoneNumber":{"type":"string","description":"Phone Number","uniqueKey":"fields.ownership.persons.items.[INDEX].phoneNumber","typeLabel":"string"},"birthDate":{"type":"string","description":"Date of Birth","format":"date","uniqueKey":"fields.ownership.persons.items.[INDEX].birthDate","typeLabel":"string\u003cdate>"},"identityDocumentExpiryDate":{"type":"string","description":"The expiry date of the identity document, as verified by the identity provider. The document must not have expired.","format":"date","uniqueKey":"fields.ownership.persons.items.[INDEX].identityDocumentExpiryDate","typeLabel":"string\u003cdate>"},"identityVerificationDate":{"type":"string","description":"The date the identity verification of this person was completed, as shown on the identity verification report. Without it, approval depends on reading the date from the report and can wait for a manual review.","format":"date","uniqueKey":"fields.ownership.persons.items.[INDEX].identityVerificationDate","typeLabel":"string\u003cdate>"},"nationality":{"type":"string","description":"Country of citizenship. For dual nationals, use the citizenship matching the tax ID provided; if asked about additional nationalities elsewhere, disclose them there.","uniqueKey":"fields.ownership.persons.items.[INDEX].nationality","typeLabel":"string"},"taxIdType":{"type":"string","description":"An individual may send one of PASSPORT, NATIONAL_ID, DRIVER_LICENSE, RESIDENT_CARD, SSN, ITIN, subject to the nationality rule below. A business owner accepts only SSN, ITIN, NATIONAL_ID. For an individual customer, a US national sends SSN. ITIN is for a US resident of another nationality. For an individual customer, a NATIONAL_ID issued by CAN, NLD, IRL, AUS, JPN is not accepted. For an individual customer, a NATIONAL_ID must be the 13-digit French tax number (numéro fiscal) for FRA, the 16-digit PhilSys card number (PCN) for PHL, a PAN for IND, the 13-digit CNIC for PAK, the 11-digit CPF for BRA, the 18-character CURP for MEX, the 11-digit NIN for NGA, the 10-, 13- or 17-digit NID for BGD, the 11-digit T.C. Kimlik No for TUR. Spaces, dashes, dots, slashes and letter case are ignored. Check digits are verified for FRA, BRA, MEX, TUR. For an individual customer, send a PASSPORT, DRIVER_LICENSE or RESIDENT_CARD instead.","enum":["PASSPORT","NATIONAL_ID","DRIVER_LICENSE","RESIDENT_CARD","SSN","ITIN"],"uniqueKey":"fields.ownership.persons.items.[INDEX].taxIdType","typeLabel":"enum\u003cstring>"},"taxIdNumber":{"type":"string","description":"For an individual customer, a NATIONAL_ID issued by CAN, NLD, IRL, AUS, JPN is not accepted. For an individual customer, a NATIONAL_ID must be the 13-digit French tax number (numéro fiscal) for FRA, the 16-digit PhilSys card number (PCN) for PHL, a PAN for IND, the 13-digit CNIC for PAK, the 11-digit CPF for BRA, the 18-character CURP for MEX, the 11-digit NIN for NGA, the 10-, 13- or 17-digit NID for BGD, the 11-digit T.C. Kimlik No for TUR. Spaces, dashes, dots, slashes and letter case are ignored. Check digits are verified for FRA, BRA, MEX, TUR. For an individual customer, send a PASSPORT, DRIVER_LICENSE or RESIDENT_CARD instead.","uniqueKey":"fields.ownership.persons.items.[INDEX].taxIdNumber","typeLabel":"string"},"taxIdCountry":{"type":"string","description":"The country whose tax authority issued the tax identification number (TIN). May differ from the person's nationality or country of residence.","uniqueKey":"fields.ownership.persons.items.[INDEX].taxIdCountry","typeLabel":"string"},"immigrationStatus":{"type":"string","description":"US immigration status — only relevant for non-US citizens currently living in the United States. Skip if the person is a US citizen or does not live in the US.","enum":["Permanent U.S. Resident","Non-Permanent U.S. Resident","Non-Resident of U.S."],"uniqueKey":"fields.ownership.persons.items.[INDEX].immigrationStatus","typeLabel":"enum\u003cstring>"},"taxResidencyCountry":{"type":"string","description":"The country whose tax authority the person files personal income tax with. May differ from nationality (citizenship) or current residence. For multiple tax residencies, list the primary one.","uniqueKey":"fields.ownership.persons.items.[INDEX].taxResidencyCountry","typeLabel":"string"},"ownershipPercent":{"type":"number","description":"Direct or indirect ownership share in the business, including ownership held through intermediate entities. For tiered ownership structures, give the effective beneficial share at this entity — not the immediate-parent share.","minimum":0,"maximum":100,"uniqueKey":"fields.ownership.persons.items.[INDEX].ownershipPercent","typeLabel":"number"},"sharesAllocated":{"type":"integer","description":"Shares Allocated","minimum":0,"uniqueKey":"fields.ownership.persons.items.[INDEX].sharesAllocated","typeLabel":"integer"},"roles":{"type":"array","description":"Which capacity each person fills. Beneficial Owner: holds ≥25% ownership or otherwise exercises ultimate control. Controlling Person: a senior managing official (CEO / CFO / COO / General Counsel / President or equivalent), regardless of ownership. Legal Representative: authorized to sign on behalf of the entity. Account Holder: the person who opens the account in their own name. Select all that apply.","items":{"type":"string","enum":["BENEFICIAL_OWNER","CONTROLLING_PERSON","LEGAL_REPRESENTATIVE","ACCOUNT_HOLDER"],"uniqueKey":"fields.ownership.persons.items.[INDEX].roles.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.ownership.persons.items.[INDEX].roles","typeLabel":"enum\u003cstring>[]"},"address":{"type":"object","properties":{"country":{"type":"string","description":"Country","uniqueKey":"fields.ownership.persons.items.[INDEX].address.country","typeLabel":"string"},"addressLine1":{"type":"string","description":"Street 1","maxLength":255,"uniqueKey":"fields.ownership.persons.items.[INDEX].address.addressLine1","typeLabel":"string"},"addressLine2":{"type":"string","description":"Street 2","maxLength":255,"uniqueKey":"fields.ownership.persons.items.[INDEX].address.addressLine2","typeLabel":"string"},"city":{"type":"string","description":"City","maxLength":255,"uniqueKey":"fields.ownership.persons.items.[INDEX].address.city","typeLabel":"string"},"state":{"type":"string","description":"State / Province","maxLength":255,"uniqueKey":"fields.ownership.persons.items.[INDEX].address.state","typeLabel":"string"},"postalCode":{"type":"string","description":"Zip Code","maxLength":50,"uniqueKey":"fields.ownership.persons.items.[INDEX].address.postalCode","typeLabel":"string"}},"uniqueKey":"fields.ownership.persons.items.[INDEX].address","typeLabel":"object"},"documentIds":{"type":"array","maxItems":100,"items":{"type":"string","minLength":1,"uniqueKey":"fields.ownership.persons.items.[INDEX].documentIds.items.[INDEX]","typeLabel":"string"},"description":"Ids of documents uploaded with `POST /v2/documents` for this person, for example the identity verification attestation.","uniqueKey":"fields.ownership.persons.items.[INDEX].documentIds","typeLabel":"string[]"}},"uniqueKey":"fields.ownership.persons.items.[INDEX]","typeLabel":"object"},"uniqueKey":"fields.ownership.persons","typeLabel":"object[]"}},"uniqueKey":"fields.ownership","typeLabel":"object"},"relatedCompany":{"type":"object","description":"Related-company disclosure for affiliated entities — a parent, subsidiary, sister company or holding entity.","properties":{"hasRelatedCompany":{"type":"boolean","description":"Yes if the business is part of a corporate group: a subsidiary, a parent company, sibling entities under common ownership, or a holding-company structure. Independent companies that merely share investors do not count.","uniqueKey":"fields.relatedCompany.hasRelatedCompany","typeLabel":"boolean"},"companies":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Related Company Record ID","uniqueKey":"fields.relatedCompany.companies.items.[INDEX].id","typeLabel":"string"},"companyName":{"type":"string","description":"Related Company Name","uniqueKey":"fields.relatedCompany.companies.items.[INDEX].companyName","typeLabel":"string"},"description":{"type":"string","description":"Related Company Description","uniqueKey":"fields.relatedCompany.companies.items.[INDEX].description","typeLabel":"string"},"role":{"type":"string","description":"How this related entity is connected to the business — parent, subsidiary, sister/affiliate, or a holding entity. Choose the closest match; this drives how the relationship is documented in the group structure chart.","enum":["Ultimate Parent Company","Subsidiary","Affiliate","Holding Company"],"uniqueKey":"fields.relatedCompany.companies.items.[INDEX].role","typeLabel":"enum\u003cstring>"},"ownershipPercent":{"type":"string","description":"Related Company Ownership Percent","pattern":"^(100(\\.0+)?|\\d{1,2}(\\.\\d+)?)$","uniqueKey":"fields.relatedCompany.companies.items.[INDEX].ownershipPercent","typeLabel":"string"},"email":{"type":"string","description":"Related Company Email","format":"email","uniqueKey":"fields.relatedCompany.companies.items.[INDEX].email","typeLabel":"string\u003cemail>"},"phone":{"type":"string","description":"Related Company Phone Number","uniqueKey":"fields.relatedCompany.companies.items.[INDEX].phone","typeLabel":"string"},"formationDate":{"type":"string","description":"Related Company Formation Date","format":"date","uniqueKey":"fields.relatedCompany.companies.items.[INDEX].formationDate","typeLabel":"string\u003cdate>"}},"uniqueKey":"fields.relatedCompany.companies.items.[INDEX]","typeLabel":"object"},"uniqueKey":"fields.relatedCompany.companies","typeLabel":"object[]"}},"uniqueKey":"fields.relatedCompany","typeLabel":"object"},"certification":{"type":"object","description":"Legal certifications the customer must affirm.","properties":{"authorityToBind":{"type":"boolean","description":"By checking this box and clicking Submit, I hereby swear, affirm, and attest that I have the requisite internal authority to bind the company submitting the information contained herein.","uniqueKey":"fields.certification.authorityToBind","typeLabel":"boolean"},"consentToElectronicSignatures":{"type":"boolean","description":"I, and the company for which I am submitting the information contained herein, acknowledge and agree that by checking this box and clicking Submit we are electronically signing and such electronic signature is legally binding and enforceable in the same manner as a handwritten signature.","uniqueKey":"fields.certification.consentToElectronicSignatures","typeLabel":"boolean"},"termsAndConditions":{"oneOf":[{"type":"boolean","description":"The customer's acceptance of Conduit's Terms and Conditions. The acceptance record is the current form. `true` is the earlier form. `GET /v2/onboarding/requirements` shows which form the active rules accept.","enum":[true],"uniqueKey":"fields.certification.termsAndConditions.oneOf.0","typeLabel":"enum\u003cboolean>"},{"type":"object","description":"The customer's acceptance of Conduit's Terms and Conditions. The acceptance record is the current form. `true` is the earlier form. `GET /v2/onboarding/requirements` shows which form the active rules accept.","properties":{"accepted":{"type":"boolean","description":"Read the terms at https://conduitpay.com/terms-of-service","uniqueKey":"fields.certification.termsAndConditions.oneOf.1.accepted","typeLabel":"boolean"},"acceptedAt":{"type":"string","description":"When the customer accepted, not when you submit this form","format":"date-time","uniqueKey":"fields.certification.termsAndConditions.oneOf.1.acceptedAt","typeLabel":"string\u003cdate-time>"},"acceptedByName":{"type":"string","description":"The person who accepted for the customer","maxLength":140,"uniqueKey":"fields.certification.termsAndConditions.oneOf.1.acceptedByName","typeLabel":"string"},"acceptedByEmail":{"type":"string","description":"Email of the person who accepted","format":"email","maxLength":254,"uniqueKey":"fields.certification.termsAndConditions.oneOf.1.acceptedByEmail","typeLabel":"string\u003cemail>"},"ipAddress":{"type":"string","description":"The IP address your customer accepted from, as your platform recorded it. Not your own IP address.","uniqueKey":"fields.certification.termsAndConditions.oneOf.1.ipAddress","typeLabel":"string"},"isAuthenticated":{"type":"boolean","description":"Your customer was signed in to your platform when they accepted","uniqueKey":"fields.certification.termsAndConditions.oneOf.1.isAuthenticated","typeLabel":"boolean"},"version":{"type":"string","description":"Terms version","maxLength":64,"uniqueKey":"fields.certification.termsAndConditions.oneOf.1.version","typeLabel":"string"}},"uniqueKey":"fields.certification.termsAndConditions.oneOf.1","typeLabel":"object"}],"uniqueKey":"fields.certification.termsAndConditions","typeLabel":"enum\u003cboolean> | object"},"treasuryOnlyCertification":{"type":"boolean","description":"Certify that this entity will use the Conduit account exclusively for its own treasury operations — not on behalf of clients, customers, or third parties. Required to enroll in the treasury-only product configuration.","uniqueKey":"fields.certification.treasuryOnlyCertification","typeLabel":"boolean"}},"uniqueKey":"fields.certification","typeLabel":"object"},"activity":{"type":"object","description":"Account holder's activity and due-diligence descriptors on an individual application: occupation, employer, account purpose, source of funds, expected volumes and countries of activity. A virtual account request for an individual customer only: it answers the `/activity/...` fields `GET /v2/customers/{customerId}/features/requirements` lists, with the values onboarding accepts. Any other request with `activity` returns 400.","properties":{"occupation":{"type":"string","description":"The account holder's current occupation or profession. Describe the role, not the employer.","maxLength":255,"uniqueKey":"fields.activity.occupation","typeLabel":"string"},"occupationCategory":{"type":"string","description":"The category that best describes the account holder's occupation or main source of income.","enum":["EMPLOYED_PROFESSIONAL","EMPLOYED_TRADES","GOVERNMENT_PUBLIC_SECTOR","FINANCIAL_LEGAL_ACCOUNTING","RETIRED","STUDENT","UNEMPLOYED_HOMEMAKER","SELF_EMPLOYED","REAL_ESTATE","BUSINESS_OWNER_CASH_INTENSIVE","DIGITAL_ASSETS_TRADING","HIGH_RISK_INDUSTRY","OTHER"],"uniqueKey":"fields.activity.occupationCategory","typeLabel":"enum\u003cstring>"},"employerName":{"type":"string","description":"The name of the account holder's current employer, if any.","maxLength":255,"uniqueKey":"fields.activity.employerName","typeLabel":"string"},"accountPurpose":{"type":"array","description":"Select every account use case that applies, even those that are infrequent. This drives risk-tier categorisation and monitoring thresholds.","items":{"type":"string","enum":["Receive Salary","Savings","Family Support","Pay Bills","Investment","Business Payments"],"uniqueKey":"fields.activity.accountPurpose.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.activity.accountPurpose","typeLabel":"enum\u003cstring>[]"},"sourceOfFunds":{"type":"array","description":"Where the money flowing into the account comes from. Select all that apply. Use the 'Other' follow-up for a source not on the list.","items":{"type":"string","enum":["Salary","Business Income","Savings","Investment","Inheritance","Gift","Sale of Asset","Other"],"uniqueKey":"fields.activity.sourceOfFunds.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.activity.sourceOfFunds","typeLabel":"enum\u003cstring>[]"},"sourceOfFundsOther":{"type":"string","description":"Source of Funds (Other)","uniqueKey":"fields.activity.sourceOfFundsOther","typeLabel":"string"},"sourceOfWealth":{"type":"array","description":"Where the account holder's overall wealth comes from. Select all that apply. Use the 'Other' follow-up for a source not on the list.","items":{"type":"string","enum":["Salary","Business Income","Savings","Investment","Inheritance","Gift","Sale of Asset","Other"],"uniqueKey":"fields.activity.sourceOfWealth.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.activity.sourceOfWealth","typeLabel":"enum\u003cstring>[]"},"sourceOfWealthOther":{"type":"string","description":"Source of Wealth (Other)","uniqueKey":"fields.activity.sourceOfWealthOther","typeLabel":"string"},"expectedMonthlyVolume":{"type":"string","description":"Expected average USD value flowing through the account each month, across all in- and out-bound transactions combined.","enum":["VOLUME_LT_10K","VOLUME_10K_50K","VOLUME_50K_250K","VOLUME_250K_1M","VOLUME_GT_1M"],"uniqueKey":"fields.activity.expectedMonthlyVolume","typeLabel":"enum\u003cstring>"},"expectedTransactionsPerMonth":{"type":"string","description":"Expected number of transactions through the account each month, in- and out-bound combined.","enum":["\u003c10","10-50","50-200","200-1,000","1,000+"],"uniqueKey":"fields.activity.expectedTransactionsPerMonth","typeLabel":"enum\u003cstring>"},"countriesOfActivity":{"type":"array","description":"Countries where the account holder receives payments, sends payments, or holds assets.","items":{"type":"string","enum":["AFG","ALB","DZA","ASM","AND","AGO","AIA","ATA","ATG","ARG","ARM","ABW","AUS","AUT","AZE","BHS","BHR","BGD","BRB","BLR","BEL","BLZ","BEN","BMU","BTN","BOL","BES","BIH","BWA","BVT","BRA","IOT","BRN","BGR","BFA","BDI","CPV","KHM","CMR","CAN","CYM","CAF","TCD","CHL","CHN","CXR","CCK","COL","COM","COG","COD","COK","CRI","CIV","HRV","CUB","CUW","CYP","CZE","DNK","DJI","DMA","DOM","ECU","EGY","SLV","GNQ","ERI","EST","SWZ","ETH","FLK","FRO","FJI","FIN","FRA","GUF","PYF","ATF","GAB","GMB","GEO","DEU","GHA","GIB","GRC","GRL","GRD","GLP","GUM","GTM","GGY","GIN","GNB","GUY","HTI","HMD","VAT","HND","HKG","HUN","ISL","IND","IDN","IRN","IRQ","IRL","IMN","ISR","ITA","JAM","JPN","JEY","JOR","KAZ","KEN","KIR","PRK","KOR","KWT","KGZ","LAO","LVA","LBN","LSO","LBR","LBY","LIE","LTU","LUX","MAC","MDG","MWI","MYS","MDV","MLI","MLT","MHL","MTQ","MRT","MUS","MYT","MEX","FSM","MDA","MCO","MNG","MNE","MSR","MAR","MOZ","MMR","NAM","NRU","NPL","NLD","NCL","NZL","NIC","NER","NGA","NIU","NFK","MKD","MNP","NOR","OMN","PAK","PLW","PSE","PAN","PNG","PRY","PER","PHL","PCN","POL","PRT","PRI","QAT","REU","ROU","RUS","RWA","BLM","SHN","KNA","LCA","MAF","SPM","VCT","WSM","SMR","STP","SAU","SEN","SRB","SYC","SLE","SGP","SXM","SVK","SVN","SLB","SOM","ZAF","SGS","SSD","ESP","LKA","SDN","SUR","SJM","SWE","CHE","SYR","TWN","TJK","TZA","THA","TLS","TGO","TKL","TON","TTO","TUN","TUR","TKM","TCA","TUV","UGA","UKR","ARE","GBR","USA","UMI","URY","UZB","VUT","VEN","VNM","VGB","VIR","WLF","ESH","YEM","ZMB","ZWE"],"uniqueKey":"fields.activity.countriesOfActivity.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"fields.activity.countriesOfActivity","typeLabel":"enum\u003cstring>[]"}},"uniqueKey":"fields.activity","typeLabel":"object"}},"uniqueKey":"fields","typeLabel":"object"},"documentIds":{"maxItems":100,"type":"array","items":{"type":"string","minLength":1,"uniqueKey":"documentIds.items.[INDEX]","typeLabel":"string"},"description":"Flat list of uploaded document IDs to associate with this feature request","example":["doc_2xKjF9mQb7vN4hL1pR3w8t"],"uniqueKey":"documentIds","typeLabel":"string[]"},"asset":{"type":"object","properties":{"code":{"type":"string","enum":["USD","EUR","GBP","CHF","JPY","CAD","AUD","NZD","SGD","HKD","CNY","KRW","INR","BRL","MXN","ARS","CLP","COP","PEN","ZAR","NGN","KES","GHS","EGP","AED","SAR","ILS","TRY","PLN","CZK","HUF","SEK","NOK","DKK","THB","IDR","MYR","PHP","VND","TWD","USDC","USDT","DAI","EURC","PYUSD","OUSD","BTC","ETH","SOL","TRX","XLM","POL"],"isRequired":true,"uniqueKey":"asset.code","typeLabel":"enum\u003cstring>"}},"required":["code"],"additionalProperties":false,"description":"Target asset for the feature, required for some feature types","example":{"code":"USD"},"uniqueKey":"asset","typeLabel":"object"}},"required":["type"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"clientReferenceId":"ext-feature-001","fields":{"businessInfo":{"legalName":"\u003cstring>","alternateNameDba":"\u003cstring>","businessEntityId":"\u003cstring>","taxId":"\u003cstring>","giin":"\u003cstring>","website":"\u003cstring>","companyEmail":"jsmith@example.com","companyPhone":"\u003cstring>"},"registeredAddress":{"country":"\u003cstring>","addressLine1":"\u003cstring>","addressLine2":"\u003cstring>","city":"\u003cstring>","state":"\u003cstring>","postalCode":"\u003cstring>","poBox":"\u003cstring>"},"operatingAddress":{"sameAsRegistered":true,"addressLine1":"\u003cstring>","addressLine2":"\u003cstring>","city":"\u003cstring>","state":"\u003cstring>","country":"\u003cstring>","postalCode":"\u003cstring>"},"companyClassification":{"legalStructure":"\u003cstring>","legalStructureOther":"\u003cstring>","incorporationDate":"2023-12-25","primaryIndustry":"\u003cstring>","primaryIndustryOther":"\u003cstring>","hasDba":true,"isPubliclyListed":true,"stockExchangeOther":"\u003cstring>","tickerSymbol":"\u003cstring>"},"businessActivity":{"businessActivitiesDescription":"\u003cstring>","accountPurpose":[],"accountPurposeOther":"\u003cstring>","productsServices":[],"productsServicesOther":"\u003cstring>","countriesOfActivity":[],"countriesOfActivityOther":"\u003cstring>","sourceOfFunds":[],"sourceOfFundsOther":"\u003cstring>","fundFlowDescription":"\u003cstring>","isRegulated":true,"regulatoryAuthorities":[],"regulatoryAuthorityOther":"\u003cstring>","licenseNumber":"\u003cstring>","isNonbankFinancialInstitution":true,"operatesOnBehalf":true,"holdsClientFundsInVirtualAccounts":true,"usesBlockchainWallets":true,"onBehalfDescription":"\u003cstring>","walletAddresses":"\u003cstring>","walletExchanges":"\u003cstring>","isGeneratingRevenue":true,"hasInstitutionalInvestors":true,"runwayExplanation":"\u003cstring>","hasIndependentAmlAudit":true,"hasHighRiskIndustries":true,"highRiskIndustries":[],"highRiskDetails":"\u003cstring>","hasRegulatedOrRestrictedActivities":true,"regulatedOrRestrictedActivities":["\u003cstring>"],"otherActivityDescription":"\u003cstring>"},"compliance":{"hasComplianceProgram":true,"complianceManager":"\u003cstring>","complianceManagerEmail":"jsmith@example.com","sanctionsScreeningOther":"\u003cstring>","cddMethodOther":"\u003cstring>","transactionMonitoring":[],"transactionMonitoringOther":"\u003cstring>","complianceTraining":[],"hasAmlAudit":true,"noAuditExplanation":"\u003cstring>","auditIntention":"\u003cstring>"},"regulatoryHistory":{"hasUSBankAccount":true,"deniedBankAccount":true,"deniedBankAccountDetails":"\u003cstring>","subjectToAdverseActions":true,"hasPoliticallyExposedPersons":true,"businessAdverseActions":[],"ownersDirectorsAdverseActions":[],"adverseActionsDetails":"\u003cstring>","isPoliticallyExposedPerson":true,"adverseActions":[]},"ownership":{"persons":[{"id":"\u003cstring>","firstName":"\u003cstring>","lastName":"\u003cstring>","middleName":"\u003cstring>","email":"jsmith@example.com","phoneNumber":"\u003cstring>","birthDate":"2023-12-25","identityDocumentExpiryDate":"2023-12-25","identityVerificationDate":"2023-12-25","nationality":"\u003cstring>","taxIdNumber":"\u003cstring>","taxIdCountry":"\u003cstring>","taxResidencyCountry":"\u003cstring>","ownershipPercent":50,"sharesAllocated":1,"roles":[],"address":{"country":"\u003cstring>","addressLine1":"\u003cstring>","addressLine2":"\u003cstring>","city":"\u003cstring>","state":"\u003cstring>","postalCode":"\u003cstring>"},"documentIds":["\u003cstring>"]}]},"relatedCompany":{"hasRelatedCompany":true,"companies":[{"id":"\u003cstring>","companyName":"\u003cstring>","description":"\u003cstring>","ownershipPercent":"\u003cstring>","email":"jsmith@example.com","phone":"\u003cstring>","formationDate":"2023-12-25"}]},"certification":{"authorityToBind":true,"consentToElectronicSignatures":true,"termsAndConditions":true,"treasuryOnlyCertification":true},"activity":{"occupation":"\u003cstring>","employerName":"\u003cstring>","accountPurpose":[],"sourceOfFunds":[],"sourceOfFundsOther":"\u003cstring>","sourceOfWealth":[],"sourceOfWealthOther":"\u003cstring>","countriesOfActivity":[]}},"documentIds":["doc_2xKjF9mQb7vN4hL1pR3w8t"],"asset":{"code":"USD"}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"40fdf7bf-7a8f-4bd9-af97-d9d0a912666f":{"description":"The submitted feature-request application","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["id","status","createdAt","updatedAt","type"],"properties":{"id":{"type":"string","pattern":"^app_[0-9A-Za-z]{22}$","description":"Unique application identifier","isRequired":true,"uniqueKey":"oneOf.0.id","typeLabel":"string"},"status":{"type":"string","enum":["pending","processing","approved","rejected","cancelled"],"description":"Current lifecycle status of the application","example":"pending","isRequired":true,"uniqueKey":"oneOf.0.status","typeLabel":"enum\u003cstring>"},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the application was created","example":"2026-01-15T09:30:00.000Z","isRequired":true,"uniqueKey":"oneOf.0.createdAt","typeLabel":"string\u003cdate-time>"},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the application was last modified","example":"2026-01-15T09:30:00.000Z","isRequired":true,"uniqueKey":"oneOf.0.updatedAt","typeLabel":"string\u003cdate-time>"},"type":{"type":"string","enum":["customer_onboarding"],"isRequired":true,"uniqueKey":"oneOf.0.type","typeLabel":"enum\u003cstring>"},"clientReferenceId":{"description":"Client-provided identifier for cross-referencing. Omitted when the client did not supply one. 1-255 characters from A-Za-z, 0-9, underscore, hyphen, colon, and period — no spaces.","example":"ext-12345","type":"string","pattern":"^[A-Za-z0-9_\\-:.]{1,255}$","uniqueKey":"oneOf.0.clientReferenceId","typeLabel":"string"},"submittedAt":{"description":"Timestamp when the application was submitted for review. Omitted while still in progress.","type":"string","format":"date-time","example":"2026-01-15T09:30:00.000Z","uniqueKey":"oneOf.0.submittedAt","typeLabel":"string\u003cdate-time>"},"failureCode":{"description":"Machine-readable failure code on rejected applications. Omitted on non-rejected applications.","type":"string","enum":["rejected_by_ops","compliance_denied"],"uniqueKey":"oneOf.0.failureCode","typeLabel":"enum\u003cstring>"},"failureMessage":{"description":"Customer-facing failure message accompanying `failureCode`. Omitted on non-rejected applications.","type":"string","uniqueKey":"oneOf.0.failureMessage","typeLabel":"string"},"resubmittable":{"description":"Whether a corrected application will be considered. `true`: correct the data and submit a fresh application. `false`: the decision is final, do not resubmit. Omitted on non-rejected applications.","type":"boolean","uniqueKey":"oneOf.0.resubmittable","typeLabel":"boolean"},"reviewStage":{"description":"Where the review of a `processing` application stands. `automated`: Conduit's automated review is still running. `operator`: the automated review finished without a decision, or Conduit has an open request for information about the application. A Conduit operator owns the next step unless the request needs your answer. `operator` means no automated decision will come; expect a decision or a request for information from Conduit. Present only while `status` is `processing`.","type":"string","enum":["automated","operator"],"uniqueKey":"oneOf.0.reviewStage","typeLabel":"enum\u003cstring>"},"customerId":{"description":"Customer this onboarding application produced. Omitted while the application is still being reviewed; present after approval persists the customer row.","type":"string","pattern":"^cus_[0-9A-Za-z]{22}$","uniqueKey":"oneOf.0.customerId","typeLabel":"string"},"persons":{"description":"People declared on the submission, in submit order: the owners, controlling persons and legal representatives of a business, or the one account holder of an individual. Omitted before the application carries a submission.","type":"array","items":{"type":"object","properties":{"referenceId":{"type":"string","description":"Server-assigned stable reference for this person. Use it to fetch the person's identity-verification link (POST /v2/applications/{applicationId}/persons/{referenceId}/idv-link) and to correlate `idv_link.created` webhook events.","isRequired":true,"uniqueKey":"oneOf.0.persons.items.[INDEX].referenceId","typeLabel":"string"},"name":{"type":"string","description":"Person's name as submitted.","isRequired":true,"uniqueKey":"oneOf.0.persons.items.[INDEX].name","typeLabel":"string"}},"required":["referenceId","name"],"uniqueKey":"oneOf.0.persons.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.persons","typeLabel":"object[]"},"resubmissionGuidance":{"description":"Integrator guidance for the resubmission. Present only on a rejected application whose `resubmittable` is `true`. A fixed line — display or log it, do not parse it. Omitted on non-rejected applications and on final rejections.","type":"string","uniqueKey":"oneOf.0.resubmissionGuidance","typeLabel":"string"},"reviewQuestions":{"description":"Questions to address in the resubmission. Present only on a rejected application whose `resubmittable` is `true` when Conduit asks for more information. Omitted otherwise.","type":"array","items":{"type":"string","uniqueKey":"oneOf.0.reviewQuestions.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.0.reviewQuestions","typeLabel":"string[]"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["id","status","createdAt","updatedAt","type","customerId"],"properties":{"id":{"type":"string","pattern":"^app_[0-9A-Za-z]{22}$","description":"Unique application identifier","isRequired":true,"uniqueKey":"oneOf.1.id","typeLabel":"string"},"status":{"type":"string","enum":["pending","processing","approved","rejected","cancelled"],"description":"Current lifecycle status of the application","example":"pending","isRequired":true,"uniqueKey":"oneOf.1.status","typeLabel":"enum\u003cstring>"},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the application was created","example":"2026-01-15T09:30:00.000Z","isRequired":true,"uniqueKey":"oneOf.1.createdAt","typeLabel":"string\u003cdate-time>"},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the application was last modified","example":"2026-01-15T09:30:00.000Z","isRequired":true,"uniqueKey":"oneOf.1.updatedAt","typeLabel":"string\u003cdate-time>"},"type":{"type":"string","enum":["customer_update"],"isRequired":true,"uniqueKey":"oneOf.1.type","typeLabel":"enum\u003cstring>"},"customerId":{"type":"string","pattern":"^cus_[0-9A-Za-z]{22}$","description":"Customer this update application belongs to.","isRequired":true,"uniqueKey":"oneOf.1.customerId","typeLabel":"string"},"clientReferenceId":{"description":"Client-provided identifier for cross-referencing. Omitted when the client did not supply one. 1-255 characters from A-Za-z, 0-9, underscore, hyphen, colon, and period — no spaces.","example":"ext-12345","type":"string","pattern":"^[A-Za-z0-9_\\-:.]{1,255}$","uniqueKey":"oneOf.1.clientReferenceId","typeLabel":"string"},"submittedAt":{"description":"Timestamp when the application was submitted for review. Omitted while still in progress.","type":"string","format":"date-time","example":"2026-01-15T09:30:00.000Z","uniqueKey":"oneOf.1.submittedAt","typeLabel":"string\u003cdate-time>"},"failureCode":{"description":"Machine-readable failure code on rejected applications. Omitted on non-rejected applications.","type":"string","enum":["rejected_by_ops","compliance_denied"],"uniqueKey":"oneOf.1.failureCode","typeLabel":"enum\u003cstring>"},"failureMessage":{"description":"Customer-facing failure message accompanying `failureCode`. Omitted on non-rejected applications.","type":"string","uniqueKey":"oneOf.1.failureMessage","typeLabel":"string"},"resubmittable":{"description":"Whether a corrected application will be considered. `true`: correct the data and submit a fresh application. `false`: the decision is final, do not resubmit. Omitted on non-rejected applications.","type":"boolean","uniqueKey":"oneOf.1.resubmittable","typeLabel":"boolean"}},"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","required":["id","status","createdAt","updatedAt","type","customerId","asset"],"properties":{"id":{"type":"string","pattern":"^app_[0-9A-Za-z]{22}$","description":"Unique application identifier","isRequired":true,"uniqueKey":"oneOf.2.id","typeLabel":"string"},"status":{"type":"string","enum":["pending","processing","approved","rejected","cancelled"],"description":"Current lifecycle status of the application","example":"pending","isRequired":true,"uniqueKey":"oneOf.2.status","typeLabel":"enum\u003cstring>"},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the application was created","example":"2026-01-15T09:30:00.000Z","isRequired":true,"uniqueKey":"oneOf.2.createdAt","typeLabel":"string\u003cdate-time>"},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the application was last modified","example":"2026-01-15T09:30:00.000Z","isRequired":true,"uniqueKey":"oneOf.2.updatedAt","typeLabel":"string\u003cdate-time>"},"type":{"type":"string","enum":["virtual_account"],"isRequired":true,"uniqueKey":"oneOf.2.type","typeLabel":"enum\u003cstring>"},"customerId":{"type":"string","pattern":"^cus_[0-9A-Za-z]{22}$","description":"Customer this virtual-account application belongs to.","isRequired":true,"uniqueKey":"oneOf.2.customerId","typeLabel":"string"},"asset":{"type":"object","properties":{"code":{"type":"string","enum":["USD","EUR","GBP","CHF","JPY","CAD","AUD","NZD","SGD","HKD","CNY","KRW","INR","BRL","MXN","ARS","CLP","COP","PEN","ZAR","NGN","KES","GHS","EGP","AED","SAR","ILS","TRY","PLN","CZK","HUF","SEK","NOK","DKK","THB","IDR","MYR","PHP","VND","TWD","USDC","USDT","DAI","EURC","PYUSD","OUSD","BTC","ETH","SOL","TRX","XLM","POL"],"description":"Asset code identifier","example":"USD","isRequired":true,"uniqueKey":"oneOf.2.asset.code","typeLabel":"enum\u003cstring>"},"chain":{"oneOf":[{"type":"string","enum":["ethereum","base","solana","polygon","tron","stellar","tempo","arbitrum","optimism","arc",null],"description":"Blockchain network. `null`/omitted for fiat assets.","uniqueKey":"oneOf.2.asset.chain.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["ethereum","base","solana","polygon","tron","stellar","tempo","arbitrum","optimism","arc",null],"description":"Blockchain network. `null`/omitted for fiat assets.","uniqueKey":"oneOf.2.asset.chain.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.asset.chain","typeLabel":"enum\u003cstring> | null"}},"required":["code"],"description":"Target asset for this virtual-account feature application.","isRequired":true,"uniqueKey":"oneOf.2.asset","typeLabel":"object"},"clientReferenceId":{"description":"Client-provided identifier for cross-referencing. Omitted when the client did not supply one. 1-255 characters from A-Za-z, 0-9, underscore, hyphen, colon, and period — no spaces.","example":"ext-12345","type":"string","pattern":"^[A-Za-z0-9_\\-:.]{1,255}$","uniqueKey":"oneOf.2.clientReferenceId","typeLabel":"string"},"submittedAt":{"description":"Timestamp when the application was submitted for review. Omitted while still in progress.","type":"string","format":"date-time","example":"2026-01-15T09:30:00.000Z","uniqueKey":"oneOf.2.submittedAt","typeLabel":"string\u003cdate-time>"},"failureCode":{"description":"Machine-readable failure code on rejected applications. Omitted on non-rejected applications.","type":"string","enum":["rejected_by_ops","compliance_denied"],"uniqueKey":"oneOf.2.failureCode","typeLabel":"enum\u003cstring>"},"failureMessage":{"description":"Customer-facing failure message accompanying `failureCode`. Omitted on non-rejected applications.","type":"string","uniqueKey":"oneOf.2.failureMessage","typeLabel":"string"},"resubmittable":{"description":"Whether a corrected application will be considered. `true`: correct the data and submit a fresh application. `false`: the decision is final, do not resubmit. Omitted on non-rejected applications.","type":"boolean","uniqueKey":"oneOf.2.resubmittable","typeLabel":"boolean"}},"uniqueKey":"oneOf.2","typeLabel":"object"},{"type":"object","required":["id","status","createdAt","updatedAt","type","customerId"],"properties":{"id":{"type":"string","pattern":"^app_[0-9A-Za-z]{22}$","description":"Unique application identifier","isRequired":true,"uniqueKey":"oneOf.3.id","typeLabel":"string"},"status":{"type":"string","enum":["pending","processing","approved","rejected","cancelled"],"description":"Current lifecycle status of the application","example":"pending","isRequired":true,"uniqueKey":"oneOf.3.status","typeLabel":"enum\u003cstring>"},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the application was created","example":"2026-01-15T09:30:00.000Z","isRequired":true,"uniqueKey":"oneOf.3.createdAt","typeLabel":"string\u003cdate-time>"},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the application was last modified","example":"2026-01-15T09:30:00.000Z","isRequired":true,"uniqueKey":"oneOf.3.updatedAt","typeLabel":"string\u003cdate-time>"},"type":{"type":"string","enum":["crypto_wallet"],"isRequired":true,"uniqueKey":"oneOf.3.type","typeLabel":"enum\u003cstring>"},"customerId":{"type":"string","pattern":"^cus_[0-9A-Za-z]{22}$","description":"Customer this crypto-wallet application belongs to.","isRequired":true,"uniqueKey":"oneOf.3.customerId","typeLabel":"string"},"clientReferenceId":{"description":"Client-provided identifier for cross-referencing. Omitted when the client did not supply one. 1-255 characters from A-Za-z, 0-9, underscore, hyphen, colon, and period — no spaces.","example":"ext-12345","type":"string","pattern":"^[A-Za-z0-9_\\-:.]{1,255}$","uniqueKey":"oneOf.3.clientReferenceId","typeLabel":"string"},"submittedAt":{"description":"Timestamp when the application was submitted for review. Omitted while still in progress.","type":"string","format":"date-time","example":"2026-01-15T09:30:00.000Z","uniqueKey":"oneOf.3.submittedAt","typeLabel":"string\u003cdate-time>"},"failureCode":{"description":"Machine-readable failure code on rejected applications. Omitted on non-rejected applications.","type":"string","enum":["rejected_by_ops","compliance_denied"],"uniqueKey":"oneOf.3.failureCode","typeLabel":"enum\u003cstring>"},"failureMessage":{"description":"Customer-facing failure message accompanying `failureCode`. Omitted on non-rejected applications.","type":"string","uniqueKey":"oneOf.3.failureMessage","typeLabel":"string"},"resubmittable":{"description":"Whether a corrected application will be considered. `true`: correct the data and submit a fresh application. `false`: the decision is final, do not resubmit. Omitted on non-rejected applications.","type":"boolean","uniqueKey":"oneOf.3.resubmittable","typeLabel":"boolean"}},"uniqueKey":"oneOf.3","typeLabel":"object"},{"type":"object","required":["id","status","createdAt","updatedAt","type","customerId","asset"],"properties":{"id":{"type":"string","pattern":"^app_[0-9A-Za-z]{22}$","description":"Unique application identifier","isRequired":true,"uniqueKey":"oneOf.4.id","typeLabel":"string"},"status":{"type":"string","enum":["pending","processing","approved","rejected","cancelled"],"description":"Current lifecycle status of the application","example":"pending","isRequired":true,"uniqueKey":"oneOf.4.status","typeLabel":"enum\u003cstring>"},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the application was created","example":"2026-01-15T09:30:00.000Z","isRequired":true,"uniqueKey":"oneOf.4.createdAt","typeLabel":"string\u003cdate-time>"},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp when the application was last modified","example":"2026-01-15T09:30:00.000Z","isRequired":true,"uniqueKey":"oneOf.4.updatedAt","typeLabel":"string\u003cdate-time>"},"type":{"type":"string","enum":["yield"],"isRequired":true,"uniqueKey":"oneOf.4.type","typeLabel":"enum\u003cstring>"},"customerId":{"type":"string","pattern":"^cus_[0-9A-Za-z]{22}$","description":"Customer this yield application belongs to.","isRequired":true,"uniqueKey":"oneOf.4.customerId","typeLabel":"string"},"asset":{"type":"object","properties":{"code":{"type":"string","enum":["USD","EUR","GBP","CHF","JPY","CAD","AUD","NZD","SGD","HKD","CNY","KRW","INR","BRL","MXN","ARS","CLP","COP","PEN","ZAR","NGN","KES","GHS","EGP","AED","SAR","ILS","TRY","PLN","CZK","HUF","SEK","NOK","DKK","THB","IDR","MYR","PHP","VND","TWD","USDC","USDT","DAI","EURC","PYUSD","OUSD","BTC","ETH","SOL","TRX","XLM","POL"],"description":"Asset code identifier","example":"USD","isRequired":true,"uniqueKey":"oneOf.4.asset.code","typeLabel":"enum\u003cstring>"},"chain":{"oneOf":[{"type":"string","enum":["ethereum","base","solana","polygon","tron","stellar","tempo","arbitrum","optimism","arc",null],"description":"Blockchain network. `null`/omitted for fiat assets.","uniqueKey":"oneOf.4.asset.chain.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["ethereum","base","solana","polygon","tron","stellar","tempo","arbitrum","optimism","arc",null],"description":"Blockchain network. `null`/omitted for fiat assets.","uniqueKey":"oneOf.4.asset.chain.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.4.asset.chain","typeLabel":"enum\u003cstring> | null"}},"required":["code"],"description":"Asset this customer asked to earn yield on. One approval covers the asset on every chain Conduit supports for it, so `chain` is omitted.","isRequired":true,"uniqueKey":"oneOf.4.asset","typeLabel":"object"},"clientReferenceId":{"description":"Client-provided identifier for cross-referencing. Omitted when the client did not supply one. 1-255 characters from A-Za-z, 0-9, underscore, hyphen, colon, and period — no spaces.","example":"ext-12345","type":"string","pattern":"^[A-Za-z0-9_\\-:.]{1,255}$","uniqueKey":"oneOf.4.clientReferenceId","typeLabel":"string"},"submittedAt":{"description":"Timestamp when the application was submitted for review. Omitted while still in progress.","type":"string","format":"date-time","example":"2026-01-15T09:30:00.000Z","uniqueKey":"oneOf.4.submittedAt","typeLabel":"string\u003cdate-time>"},"failureCode":{"description":"Machine-readable failure code on rejected applications. Omitted on non-rejected applications.","type":"string","enum":["rejected_by_ops","compliance_denied"],"uniqueKey":"oneOf.4.failureCode","typeLabel":"enum\u003cstring>"},"failureMessage":{"description":"Customer-facing failure message accompanying `failureCode`. Omitted on non-rejected applications.","type":"string","uniqueKey":"oneOf.4.failureMessage","typeLabel":"string"},"resubmittable":{"description":"Whether a corrected application will be considered. `true`: correct the data and submit a fresh application. `false`: the decision is final, do not resubmit. Omitted on non-rejected applications.","type":"boolean","uniqueKey":"oneOf.4.resubmittable","typeLabel":"boolean"}},"uniqueKey":"oneOf.4","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"\u003cstring>","status":"pending","createdAt":"2026-01-15T09:30:00.000Z","updatedAt":"2026-01-15T09:30:00.000Z","type":"customer_onboarding","clientReferenceId":"ext-12345","submittedAt":"2026-01-15T09:30:00.000Z","failureCode":"rejected_by_ops","failureMessage":"\u003cstring>","resubmittable":true,"reviewStage":"automated","customerId":"\u003cstring>","persons":[{"referenceId":"\u003cstring>","name":"\u003cstring>"}],"resubmissionGuidance":"\u003cstring>","reviewQuestions":["\u003cstring>"]}}},"exampleType":"generated"}},"exampleType":"generated"},"64135a33-ad38-4b53-a6d5-46f4827200ff":{"description":"**INVALID_OID_FORMAT**: A path or query parameter expected a valid object identifier but received a value that does not match the expected format.\n\n**VALIDATION_ERROR**: The request body or query parameters failed validation. One or more fields have invalid values, missing required properties, or incorrect types. A required text field that holds only spaces counts as missing. Multipart file uploads that fail at the multipart-parser layer (unexpected form-field name, too many parts) carry an extra 'field' member naming the offending form-field.\n\n**MALFORMED_JSON**: The request body could not be parsed as JSON. Bodies declared as 'application/json' — and bodies with no Content-Type header, which are assumed to be JSON — must contain syntactically valid JSON.\n\n**IDEMPOTENCY_KEY_REQUIRED**: This endpoint requires an Idempotency-Key header to prevent duplicate processing. Generate a unique key per logical request and resend the request.\n\n**IDEMPOTENCY_KEY_INVALID**: The Idempotency-Key header value did not match the required shape (1-128 characters, letters / digits / underscore / dot / colon / hyphen).\n\n**IDEMPOTENCY_BODY_TOO_NESTED**: The request body exceeds the maximum nesting depth allowed by the idempotency fingerprint hasher. Deeply-nested arrays or objects are rejected as a malformed payload.\n\n**DOCUMENT_IDS_NOT_FOUND**: One or more document IDs provided in the request do not exist or do not belong to this customer.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"},"errors":{"type":"array","items":{"type":"object","properties":{"pointer":{"type":"string","description":"JSON pointer to the invalid field","example":"/email","isRequired":true,"uniqueKey":"errors.items.[INDEX].pointer","typeLabel":"string"},"detail":{"type":"string","description":"What is wrong with this field","example":"Invalid email format","isRequired":true,"uniqueKey":"errors.items.[INDEX].detail","typeLabel":"string"},"allowedValues":{"description":"The values this field accepts, when it is a closed set","example":["ach","fedwire","rtp"],"type":"array","items":{"type":"string","uniqueKey":"errors.items.[INDEX].allowedValues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"errors.items.[INDEX].allowedValues","typeLabel":"string[]"},"category":{"description":"Class of blocker (requirements-validator output only). 'field' = form-field gap, 'document' = missing or insufficient document (including per-UBO document slots), 'individual' = required person missing.","example":"field","type":"string","enum":["field","document","individual"],"uniqueKey":"errors.items.[INDEX].category","typeLabel":"enum\u003cstring>"}},"required":["pointer","detail"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"INVALID_OID_FORMAT","title":"Invalid Object ID Format","status":400,"detail":"A path or query parameter expected a valid object identifier but received a value that does not match the expected format.","resolution":"Verify that all IDs in the request URL and query parameters are correctly formatted. IDs are typically prefixed strings like 'cus_...', 'app_...', or 'doc_...'.","docs":"https://v2.docs.conduit.financial/errors#invalid-oid-format","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"INVALID_OID_FORMAT","title":"Invalid Object ID Format","status":400,"detail":"A path or query parameter expected a valid object identifier but received a value that does not match the expected format.","resolution":"Verify that all IDs in the request URL and query parameters are correctly formatted. IDs are typically prefixed strings like 'cus_...', 'app_...', or 'doc_...'.","docs":"https://v2.docs.conduit.financial/errors#invalid-oid-format","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"bf25a157-1def-4c12-b9fc-bb8e4a128347":{"description":"**API_KEY_MISSING**: The request did not include an API key. All API requests must be authenticated.\n\n**API_KEY_INVALID**: The provided API key is not recognized or has been revoked.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"API_KEY_MISSING","title":"API Key Missing","status":401,"detail":"The request did not include an API key. All API requests must be authenticated.","resolution":"Include your API key in the 'x-api-key' header with every request.","docs":"https://v2.docs.conduit.financial/errors#api-key-missing","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"API_KEY_MISSING","title":"API Key Missing","status":401,"detail":"The request did not include an API key. All API requests must be authenticated.","resolution":"Include your API key in the 'x-api-key' header with every request.","docs":"https://v2.docs.conduit.financial/errors#api-key-missing","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"71752115-7700-4328-a56f-c27c097d688b":{"description":"**ORGANIZATION_ACCESS_SUSPENDED**: Conduit has suspended this organization's access. Requests with the organization's API keys and from its users are refused until Conduit restores access.\n\n**API_KEY_READ_ONLY**: This API key has read-only access and cannot perform write operations. Read-only keys may make read requests (GET, HEAD, OPTIONS) only.\n\n**CAPABILITY_SUSPENDED**: This account is currently restricted from this action: a money movement, or opening a new account, wallet, customer or payout destination.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"ORGANIZATION_ACCESS_SUSPENDED","title":"Organization Access Suspended","status":403,"detail":"Conduit has suspended this organization's access. Requests with the organization's API keys and from its users are refused until Conduit restores access.","resolution":"Contact Conduit support.","docs":"https://v2.docs.conduit.financial/errors#organization-access-suspended","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"ORGANIZATION_ACCESS_SUSPENDED","title":"Organization Access Suspended","status":403,"detail":"Conduit has suspended this organization's access. Requests with the organization's API keys and from its users are refused until Conduit restores access.","resolution":"Contact Conduit support.","docs":"https://v2.docs.conduit.financial/errors#organization-access-suspended","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"f8fa5bcf-5988-4b7d-bb6a-f15bff856804":{"description":"**CUSTOMER_NOT_FOUND**: No customer exists with the specified ID, or the customer belongs to a different organization.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"CUSTOMER_NOT_FOUND","title":"Customer Not Found","status":404,"detail":"No customer exists with the specified ID, or the customer belongs to a different organization.","resolution":"Verify the customer ID is correct. Use the list customers endpoint to find valid customer IDs for your organization.","docs":"https://v2.docs.conduit.financial/errors#customer-not-found","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"CUSTOMER_NOT_FOUND","title":"Customer Not Found","status":404,"detail":"No customer exists with the specified ID, or the customer belongs to a different organization.","resolution":"Verify the customer ID is correct. Use the list customers endpoint to find valid customer IDs for your organization.","docs":"https://v2.docs.conduit.financial/errors#customer-not-found","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"20bfa581-5caf-401a-9d50-965a419b83cb":{"description":"**IDEMPOTENCY_KEY_CONFLICT**: The idempotency key was previously used with a different request body, and that request succeeded or ended in a `5xx`. A `4xx` response does not bind the key. Idempotency keys are bound to the exact request shape — replays must match the original.\n\n**IDEMPOTENCY_KEY_REQUEST_IN_PROGRESS**: An earlier request with this idempotency key has not finished, or stopped before its result was recorded. In the second case it may or may not have completed its work.\n\n**FEATURE_ALREADY_EXISTS**: A feature with the same identifier already exists for this account.\n\n**CONFLICT**: The request conflicts with the current state of the resource. This usually means a duplicate or a state transition that is not allowed.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"IDEMPOTENCY_KEY_CONFLICT","title":"Idempotency Key Conflict","status":409,"detail":"The idempotency key was previously used with a different request body, and that request succeeded or ended in a `5xx`. A `4xx` response does not bind the key. Idempotency keys are bound to the exact request shape — replays must match the original.","resolution":"Use a fresh idempotency key for the new request, or replay the original request unchanged.","docs":"https://v2.docs.conduit.financial/errors#idempotency-key-conflict","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"IDEMPOTENCY_KEY_CONFLICT","title":"Idempotency Key Conflict","status":409,"detail":"The idempotency key was previously used with a different request body, and that request succeeded or ended in a `5xx`. A `4xx` response does not bind the key. Idempotency keys are bound to the exact request shape — replays must match the original.","resolution":"Use a fresh idempotency key for the new request, or replay the original request unchanged.","docs":"https://v2.docs.conduit.financial/errors#idempotency-key-conflict","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"90516499-de04-42e8-a9a0-e15dbbca9d4e":{"description":"**UNSUPPORTED_MEDIA_TYPE**: The request carries a body with a Content-Type this endpoint cannot parse. JSON endpoints accept 'application/json'; a body with no Content-Type header at all is assumed to be JSON. File-upload endpoints accept only 'multipart/form-data' — JSON or undeclared bodies are rejected there.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"UNSUPPORTED_MEDIA_TYPE","title":"Unsupported Media Type","status":415,"detail":"The request carries a body with a Content-Type this endpoint cannot parse. JSON endpoints accept 'application/json'; a body with no Content-Type header at all is assumed to be JSON. File-upload endpoints accept only 'multipart/form-data' — JSON or undeclared bodies are rejected there.","resolution":"Send the request body with the 'Content-Type: application/json' header. For file uploads, use 'Content-Type: multipart/form-data' — upload endpoints accept no other body type.","docs":"https://v2.docs.conduit.financial/errors#unsupported-media-type","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"UNSUPPORTED_MEDIA_TYPE","title":"Unsupported Media Type","status":415,"detail":"The request carries a body with a Content-Type this endpoint cannot parse. JSON endpoints accept 'application/json'; a body with no Content-Type header at all is assumed to be JSON. File-upload endpoints accept only 'multipart/form-data' — JSON or undeclared bodies are rejected there.","resolution":"Send the request body with the 'Content-Type: application/json' header. For file uploads, use 'Content-Type: multipart/form-data' — upload endpoints accept no other body type.","docs":"https://v2.docs.conduit.financial/errors#unsupported-media-type","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"631eae0b-c7b6-42cc-8b2c-298ff05099da":{"description":"**CUSTOMER_NOT_ONBOARDED**: This operation requires the customer to have completed onboarding, but the customer has not been fully onboarded yet.\n\n**ONBOARDING_NOT_READY**: The onboarding submission cannot be completed because one or more required fields or documents are still missing, or a submitted value is not one of the accepted options for a closed-set field (e.g. a country-specific field like `companyClassification.legalStructure`). Each blocker is reported per field in `errors[]` with a `category` and, for closed-set fields, the accepted `allowedValues`.\n\n**CRYPTO_NOT_AVAILABLE_IN_JURISDICTION**: Crypto wallet provisioning is not available for customers in this jurisdiction. The customer's registered country is on Conduit's restricted-country list for crypto products.\n\n**NO_ELIGIBLE_PROVIDER**: No banking provider is currently available to service a virtual account for this customer in the requested currency. Every provider that could serve the customer's country and industry is either restricted, unable to hold that currency, or has been taken offline.\n\n**SUBJECT_REQUIREMENTS_NOT_AVAILABLE**: No requirements are available for the requested subject type in the current context — the country, provider, and organization conditions of the request — so it cannot be fulfilled. This does not assert that no requirements exist for the subject anywhere; it reports that none apply to this request. It is returned wherever a subject's requirements are read: onboarding discovery and submit, and feature-request discovery and submit. It is a deterministic state, not a transient outage: it does not resolve on retry.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"},"errors":{"type":"array","items":{"type":"object","properties":{"pointer":{"type":"string","description":"JSON pointer to the invalid field","example":"/email","isRequired":true,"uniqueKey":"errors.items.[INDEX].pointer","typeLabel":"string"},"detail":{"type":"string","description":"What is wrong with this field","example":"Invalid email format","isRequired":true,"uniqueKey":"errors.items.[INDEX].detail","typeLabel":"string"},"allowedValues":{"description":"The values this field accepts, when it is a closed set","example":["ach","fedwire","rtp"],"type":"array","items":{"type":"string","uniqueKey":"errors.items.[INDEX].allowedValues.items.[INDEX]","typeLabel":"string"},"uniqueKey":"errors.items.[INDEX].allowedValues","typeLabel":"string[]"},"category":{"description":"Class of blocker (requirements-validator output only). 'field' = form-field gap, 'document' = missing or insufficient document (including per-UBO document slots), 'individual' = required person missing.","example":"field","type":"string","enum":["field","document","individual"],"uniqueKey":"errors.items.[INDEX].category","typeLabel":"enum\u003cstring>"}},"required":["pointer","detail"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"CUSTOMER_NOT_ONBOARDED","title":"Customer Not Onboarded","status":422,"detail":"This operation requires the customer to have completed onboarding, but the customer has not been fully onboarded yet.","resolution":"Complete the customer onboarding process before attempting this operation. See the onboarding guide for the required steps.","docs":"https://v2.docs.conduit.financial/errors/customer-not-onboarded","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"CUSTOMER_NOT_ONBOARDED","title":"Customer Not Onboarded","status":422,"detail":"This operation requires the customer to have completed onboarding, but the customer has not been fully onboarded yet.","resolution":"Complete the customer onboarding process before attempting this operation. See the onboarding guide for the required steps.","docs":"https://v2.docs.conduit.financial/errors/customer-not-onboarded","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"b90dab93-df09-47fa-9b28-7bb225e57430":{"description":"**RATE_LIMITED**: Too many requests. This error is returned by three independent checks: the per-organization bucket applied to every authenticated API request; the per-IP bucket applied to unauthenticated traffic before an API key is validated; and the per-IP bucket applied when repeated invalid API keys are submitted from the same address. Honor the Retry-After header (also exposed as retryAfterSeconds in the body) before retrying. Current limits and remaining budget are visible in X-RateLimit-Limit (the bucket size), X-RateLimit-Remaining, and X-RateLimit-Reset (seconds until the bucket refills) on every response once your API key is accepted.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"retryAfterSeconds":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":9007199254740991,"description":"Seconds to wait before retrying","example":3,"isRequired":true,"uniqueKey":"retryAfterSeconds","typeLabel":"integer"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp","retryAfterSeconds"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"RATE_LIMITED","title":"Rate Limited","status":429,"detail":"Too many requests. This error is returned by three independent checks: the per-organization bucket applied to every authenticated API request; the per-IP bucket applied to unauthenticated traffic before an API key is validated; and the per-IP bucket applied when repeated invalid API keys are submitted from the same address. Honor the Retry-After header (also exposed as retryAfterSeconds in the body) before retrying. Current limits and remaining budget are visible in X-RateLimit-Limit (the bucket size), X-RateLimit-Remaining, and X-RateLimit-Reset (seconds until the bucket refills) on every response once your API key is accepted.","resolution":"Sleep until Retry-After seconds have elapsed, then retry. For sustained workloads exceeding the per-organization defaults, request a rate-limit increase through your support contact.","docs":"https://v2.docs.conduit.financial/errors#rate-limited","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z","retryAfterSeconds":3},"examples":{"Example":{"title":"Example","value":{"type":"RATE_LIMITED","title":"Rate Limited","status":429,"detail":"Too many requests. This error is returned by three independent checks: the per-organization bucket applied to every authenticated API request; the per-IP bucket applied to unauthenticated traffic before an API key is validated; and the per-IP bucket applied when repeated invalid API keys are submitted from the same address. Honor the Retry-After header (also exposed as retryAfterSeconds in the body) before retrying. Current limits and remaining budget are visible in X-RateLimit-Limit (the bucket size), X-RateLimit-Remaining, and X-RateLimit-Reset (seconds until the bucket refills) on every response once your API key is accepted.","resolution":"Sleep until Retry-After seconds have elapsed, then retry. For sustained workloads exceeding the per-organization defaults, request a rate-limit increase through your support contact.","docs":"https://v2.docs.conduit.financial/errors#rate-limited","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z","retryAfterSeconds":3}}},"exampleType":"examples"}},"exampleType":"examples"},"fc9cde29-5e47-4cfc-a3e6-51ff4ba3235f":{"description":"**INTERNAL_ERROR**: An unexpected error occurred while processing your request.","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Machine-readable error code","example":"CUSTOMER_NOT_FOUND","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"type":"string","description":"Human-readable error type label","example":"Customer Not Found","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code","example":404,"isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Human-readable explanation of this occurrence","example":"Customer with id cus_034A0gCCVsxdV2PjHLx9k1 not found","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"resolution":{"type":"string","description":"What the developer should do to resolve this error","example":"Verify the customer ID. Check you are using the correct API key for this organization.","isRequired":true,"uniqueKey":"resolution","typeLabel":"string"},"docs":{"type":"string","description":"URL to error documentation","example":"https://v2.docs.conduit.financial/errors#customer-not-found","isRequired":true,"uniqueKey":"docs","typeLabel":"string"},"instance":{"type":"string","description":"Request path that produced the error","example":"/v2/customers/cus_034A0gCCVsxdV2PjHLx9k1","isRequired":true,"uniqueKey":"instance","typeLabel":"string"},"timestamp":{"type":"string","description":"ISO 8601 UTC timestamp","example":"2026-04-27T20:00:00.000Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"correlationId":{"description":"Request correlation ID","example":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","type":"string","uniqueKey":"correlationId","typeLabel":"string"},"details":{"description":"Additional structured data for domain-specific errors (e.g. missing field lists, pair info)","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","resolution","docs","instance","timestamp"],"uniqueKey":"","typeLabel":"object"},"example":{"type":"INTERNAL_ERROR","title":"Internal Error","status":500,"detail":"An unexpected error occurred while processing your request.","resolution":"Retry the request after a brief delay. If the error persists, contact support and include the correlationId from the error response for investigation.","docs":"https://v2.docs.conduit.financial/errors#internal-error","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"},"examples":{"Example":{"title":"Example","value":{"type":"INTERNAL_ERROR","title":"Internal Error","status":500,"detail":"An unexpected error occurred while processing your request.","resolution":"Retry the request after a brief delay. If the error persists, contact support and include the correlationId from the error response for investigation.","docs":"https://v2.docs.conduit.financial/errors#internal-error","instance":"/v2/...","correlationId":"00469ea4-52c1-4ffa-bd05-9f28b236a5fe","timestamp":"2026-01-15T09:30:00.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"e216d117-afec-4a29-92f2-646b533f2725":{"api-key":{"type":"apiKey","in":"header","name":"x-api-key","scopes":[],"schemeName":"api-key"}}},"servers":{"5707e0ee-a73c-4f7a-b3dd-5e91e6ddef88":{"url":"https://api.sandbox.conduit.financial/v2","description":"Sandbox"},"107fb7ae-4503-4921-bfe7-67fa54c45455":{"url":"https://api.conduit.financial/v2","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","scopes":[],"schemeName":"api-key"},"schema":{"title":"x-api-key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"api-key","name":"x-api-key"}],"title":"api-key"}]},"originalFileLocation":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json"},"subdomain":"conduit-v2","siteName":"Conduit API","title":"Submit a feature request - Conduit API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-06T22:59:24.573Z","originalFileLocation":"api-reference/features/submit-a-feature-request.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=\"Call GET /customers/:customerId/features/requirements first. Send dynamic data under fields (nested objects, NOT dotted keys). Upload each required document via POST /v2/documents (file only) and pass returned ids in documentIds[]. asset is required for VIRTUAL_ACCOUNT.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Conduit API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/conduit-v2/aehrL9Bd40t-JxrL/_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/conduit-v2/aehrL9Bd40t-JxrL/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/conduit-v2/aehrL9Bd40t-JxrL/_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/conduit-v2/aehrL9Bd40t-JxrL/_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/conduit-v2/aehrL9Bd40t-JxrL/_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/conduit-v2/aehrL9Bd40t-JxrL/_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/conduit-v2/aehrL9Bd40t-JxrL/_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/conduit-v2/aehrL9Bd40t-JxrL/_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/conduit-v2/aehrL9Bd40t-JxrL/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Submit a feature request - Conduit API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Call GET /customers/:customerId/features/requirements first. Send dynamic data under fields (nested objects, NOT dotted keys). Upload each required document via POST /v2/documents (file only) and pass returned ids in documentIds[]. asset is required for VIRTUAL_ACCOUNT.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Conduit API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.conduit.financial/api-reference/features/submit-a-feature-request\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://conduit-v2.mintlify.site/_mintlify/api/og/v2?division=Features\u0026amp;title=Submit+a+feature+request\u0026amp;description=Call+%60GET+%2Fcustomers%2F%3AcustomerId%2Ffeatures%2Frequirements%60+first.+Send+dynamic+data+under+%60fields%60+%28nested+objects%2C+NOT+dotted+keys%29.+Upload+each+required+document\u0026amp;theme=3d508c90c97bd7e1f652ff9d\u0026amp;signature=ff14caf8f3197f0c6b91b3b44f993490976e0f77cecd8d27441c4199390aab5a\">\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=\"Submit a feature request - Conduit API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Call GET /customers/:customerId/features/requirements first. Send dynamic data under fields (nested objects, NOT dotted keys). Upload each required document via POST /v2/documents (file only) and pass returned ids in documentIds[]. asset is required for VIRTUAL_ACCOUNT.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://conduit-v2.mintlify.site/_mintlify/api/og/v2?division=Features\u0026amp;title=Submit+a+feature+request\u0026amp;description=Call+%60GET+%2Fcustomers%2F%3AcustomerId%2Ffeatures%2Frequirements%60+first.+Send+dynamic+data+under+%60fields%60+%28nested+objects%2C+NOT+dotted+keys%29.+Upload+each+required+document\u0026amp;theme=3d508c90c97bd7e1f652ff9d\u0026amp;signature=ff14caf8f3197f0c6b91b3b44f993490976e0f77cecd8d27441c4199390aab5a\">\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/conduit-v2/aehrL9Bd40t-JxrL/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Conduit API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0445F5\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.conduit.financial/api-reference/features/submit-a-feature-request\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/features/submit-a-feature-request.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.conduit.financial/#organization\",\"name\":\"Conduit API\",\"url\":\"https://docs.conduit.financial\"},{\"@type\":\"WebSite\",\"@id\":\"https://docs.conduit.financial#website\",\"name\":\"Conduit API\",\"url\":\"https://docs.conduit.financial\",\"publisher\":{\"@id\":\"https://docs.conduit.financial/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.conduit.financial/api-reference/features/submit-a-feature-request#webpage\",\"url\":\"https://docs.conduit.financial/api-reference/features/submit-a-feature-request\",\"name\":\"Submit a feature request\",\"description\":\"Call GET /customers/:customerId/features/requirements first. Send dynamic data under fields (nested objects, NOT dotted keys). Upload each required document via POST /v2/documents (file only) and pass returned ids in documentIds[]. asset is required for VIRTUAL_ACCOUNT.\",\"dateModified\":\"2026-11-06T22:59:24.573Z\",\"isPartOf\":{\"@id\":\"https://docs.conduit.financial#website\"},\"breadcrumb\":{\"@id\":\"https://docs.conduit.financial/api-reference/features/submit-a-feature-request#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.conduit.financial/api-reference/features/submit-a-feature-request#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Conduit API\",\"item\":\"https://docs.conduit.financial\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Submit a feature request\",\"item\":\"https://docs.conduit.financial/api-reference/features/submit-a-feature-request\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.conduit.financial/api-reference/features/submit-a-feature-request#apireference\",\"headline\":\"Submit a feature request\",\"name\":\"Submit a feature request\",\"description\":\"Call GET /customers/:customerId/features/requirements first. Send dynamic data under fields (nested objects, NOT dotted keys). Upload each required document via POST /v2/documents (file only) and pass returned ids in documentIds[]. asset is required for VIRTUAL_ACCOUNT.\",\"url\":\"https://docs.conduit.financial/api-reference/features/submit-a-feature-request\",\"mainEntityOfPage\":{\"@id\":\"https://docs.conduit.financial/api-reference/features/submit-a-feature-request#webpage\"},\"dateModified\":\"2026-11-06T22:59:24.573Z\",\"publisher\":{\"@id\":\"https://docs.conduit.financial/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.conduit.financial#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Conduit API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Conduit API","nav":{"global":{"anchors":[{"anchor":"Trust Center","href":"https://trust.conduitpay.com/"}]},"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":"/introduction"}]},{"tab":"Sandbox","pages":[{"title":"Sandbox","href":"/sandbox/overview"}]},{"tab":"API Reference","groups":[{"group":"Overview","pages":[{"title":"API Conventions","href":"/api-reference/overview"},{"title":"OpenAPI Specification","href":"/sdks/openapi"},{"title":"Changelog","href":"/changelog"}]},{"group":"Errors","pages":[{"title":"Error Codes","href":"/errors"},{"group":"Recovery playbooks","pages":[{"title":"TRAVEL_RULE_REJECTED error","href":"/errors/travel-rule-rejected"},{"title":"SENDER_INFO_TIMEOUT error","href":"/errors/sender-info-timeout"},{"title":"USER_SIGNATURE_DECLINED error","href":"/errors/user-signature-declined"},{"title":"USER_SIGNATURE_TIMEOUT error","href":"/errors/user-signature-timeout"},{"title":"USER_SIGNATURE_REJECTED_BY_PROVIDER error","href":"/errors/user-signature-rejected-by-provider"},{"title":"COMPLIANCE_HOLD error","href":"/errors/compliance-hold"},{"title":"COMPLIANCE_REVIEW_REJECTED error","href":"/errors/compliance-review-rejected"},{"title":"CRYPTO_WALLET_MISCONFIGURED error","href":"/errors/crypto-wallet-misconfigured"},{"title":"RETURNED_BY_SENDER error","href":"/errors/returned-by-sender"},{"title":"PROVIDER_REJECTED error","href":"/errors/provider-rejected"},{"title":"RAIL_POLICY_REJECTED error","href":"/errors/rail-policy-rejected"},{"title":"INSUFFICIENT_FUNDS_AT_SETTLE error","href":"/errors/insufficient-funds-at-settle"},{"title":"RAIL_UNAVAILABLE error","href":"/errors/rail-unavailable"},{"title":"SANDBOX_TRANSACTION_NOT_FORCE_TERMINAL_READY error","href":"/errors/sandbox-transaction-not-force-terminal-ready"},{"title":"INVALID_ADDRESS_FORMAT error","href":"/errors/invalid-address-format"},{"title":"CUSTOMER_NOT_ONBOARDED","href":"/errors/customer-not-onboarded"},{"title":"RATE_UNAVAILABLE","href":"/errors/rate-unavailable"},{"title":"RATE_UNAVAILABLE_AFTER_HOURS","href":"/errors/rate-unavailable-after-hours"},{"title":"DOCUMENTATION_REQUIRED","href":"/errors/documentation-required"},{"title":"RECIPIENT_NOT_WHITELISTED","href":"/errors/recipient-not-whitelisted"},{"title":"PAYOUT_RAIL_CURRENCY_MISMATCH","href":"/errors/payout-rail-currency-mismatch"}]}]},{"group":"Customers","pages":[{"title":"List customers","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers","href":"/api-reference/customers/list-customers"},{"title":"Get a customer by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{id}","href":"/api-reference/customers/get-a-customer-by-id"},{"title":"Submit a customer update application","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/updates","href":"/api-reference/customers/submit-a-customer-update-application"}]},{"group":"Registered Addresses","pages":[{"title":"List registered addresses for a customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallets/registered-addresses","href":"/api-reference/registered-addresses/list-registered-addresses-for-a-customer"},{"title":"Register a wallet address for a customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallets/registered-addresses","href":"/api-reference/registered-addresses/register-a-wallet-address-for-a-customer"},{"title":"Get a registered address by id","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /wallets/registered-addresses/{id}","href":"/api-reference/registered-addresses/get-a-registered-address-by-id"},{"title":"Revoke (soft-delete) a registered address","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json delete /wallets/registered-addresses/{id}","href":"/api-reference/registered-addresses/revoke-soft-delete-a-registered-address"}]},{"group":"Wallets","pages":[{"title":"Claim non-custodial control for a customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallets/claim-non-custodial","href":"/api-reference/wallets/claim-non-custodial-control-for-a-customer"},{"title":"List customer wallets","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallets","href":"/api-reference/wallets/list-customer-wallets"},{"title":"Create a wallet","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallets","href":"/api-reference/wallets/create-a-wallet"},{"title":"List non-custodial claims","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallets/claims","href":"/api-reference/wallets/list-non-custodial-claims"},{"title":"Get a non-custodial claim by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallets/claims/{claimId}","href":"/api-reference/wallets/get-a-non-custodial-claim-by-id"},{"title":"Get a wallet by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallets/{walletId}","href":"/api-reference/wallets/get-a-wallet-by-id"},{"title":"Get wallet balances","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallets/{walletId}/balances","href":"/api-reference/wallets/get-wallet-balances"},{"title":"Get a wallet statement","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallets/{walletId}/statement","href":"/api-reference/wallets/get-a-wallet-statement"},{"title":"Rotate a wallet","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallets/{walletId}/rotate","href":"/api-reference/wallets/rotate-a-wallet"}]},{"group":"Wallet Signers","pages":[{"title":"List signers for a customer's wallets","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/wallet-signers","href":"/api-reference/wallet-signers/list-signers-for-a-customers-wallets"},{"title":"Add a signer to a customer's wallets","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallet-signers","href":"/api-reference/wallet-signers/add-a-signer-to-a-customers-wallets"},{"title":"Reissue a wallet signer's enrollment invite","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallet-signers/{signerId}/reissue-invite","href":"/api-reference/wallet-signers/reissue-a-wallet-signers-enrollment-invite"},{"title":"Recover a signer's pending admin-approval link","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallet-signers/{signerId}/reissue-admin-approval","href":"/api-reference/wallet-signers/recover-a-signers-pending-admin-approval-link"},{"title":"Start a passkey recovery for a signer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallet-signers/{signerId}/recovery","href":"/api-reference/wallet-signers/start-a-passkey-recovery-for-a-signer"},{"title":"Cancel a signer's passkey recovery","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallet-signers/{signerId}/recovery/cancel","href":"/api-reference/wallet-signers/cancel-a-signers-passkey-recovery"},{"title":"Remove a signer from a customer's wallets","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json delete /customers/{customerId}/wallet-signers/{signerId}","href":"/api-reference/wallet-signers/remove-a-signer-from-a-customers-wallets"},{"title":"Promote a signer to admin in place of an admin","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallet-signers/{signerId}/promote","href":"/api-reference/wallet-signers/promote-a-signer-to-admin-in-place-of-an-admin"},{"title":"Demote an admin","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/wallet-signers/{signerId}/demote","href":"/api-reference/wallet-signers/demote-an-admin"}]},{"group":"Signing Quorum","pages":[{"title":"Get a customer's signing quorum configuration","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/signing-quorum","href":"/api-reference/signing-quorum/get-a-customers-signing-quorum-configuration"},{"title":"Set a customer's signing quorum threshold","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json put /customers/{customerId}/signing-quorum","href":"/api-reference/signing-quorum/set-a-customers-signing-quorum-threshold"},{"title":"Override a wallet's signing quorum threshold","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json put /wallets/{walletId}/signing-quorum","href":"/api-reference/signing-quorum/override-a-wallets-signing-quorum-threshold"},{"title":"Clear a wallet's signing quorum override","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json delete /wallets/{walletId}/signing-quorum","href":"/api-reference/signing-quorum/clear-a-wallets-signing-quorum-override"}]},{"group":"Virtual Accounts","pages":[{"title":"List customer virtual accounts","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/virtual-accounts","href":"/api-reference/virtual-accounts/list-customer-virtual-accounts"},{"title":"Get a virtual account","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/virtual-accounts/{virtualAccountId}","href":"/api-reference/virtual-accounts/get-a-virtual-account"},{"title":"Get virtual account balances","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/virtual-accounts/{virtualAccountId}/balances","href":"/api-reference/virtual-accounts/get-virtual-account-balances"},{"title":"Get a virtual account statement","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/virtual-accounts/{virtualAccountId}/statement","href":"/api-reference/virtual-accounts/get-a-virtual-account-statement"}]},{"group":"Applications","pages":[{"title":"List all applications","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /applications","href":"/api-reference/applications/list-all-applications"},{"title":"Get an application by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /applications/{id}","href":"/api-reference/applications/get-an-application-by-id"},{"title":"Cancel an application","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /applications/{id}/cancel","href":"/api-reference/applications/cancel-an-application"},{"title":"Get an identity-verification link for a person","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /applications/{applicationId}/persons/{referenceId}/idv-link","href":"/api-reference/applications/get-an-identity-verification-link-for-a-person"}]},{"group":"Verifications","pages":[{"title":"Initiate a customer verification","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/verifications","href":"/api-reference/verifications/initiate-a-customer-verification"}]},{"group":"Signing Requests","pages":[{"title":"List signing requests awaiting a machine signature","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /signing-requests","href":"/api-reference/signing-requests/list-signing-requests-awaiting-a-machine-signature"},{"title":"Get a signing request","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /signing-requests/{id}","href":"/api-reference/signing-requests/get-a-signing-request"},{"title":"Approve a signing request with a machine stamp","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /signing-requests/{id}/approve","href":"/api-reference/signing-requests/approve-a-signing-request-with-a-machine-stamp"},{"title":"Reject a signing request with a machine stamp","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /signing-requests/{id}/reject","href":"/api-reference/signing-requests/reject-a-signing-request-with-a-machine-stamp"}]},{"group":"Transactions","pages":[{"title":"Submit sender (originator) information for a deposit parked on UNREGISTERED_ADDRESS","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /transactions/{id}/sender-information","href":"/api-reference/transactions/submit-sender-originator-information-for-a-deposit-parked-on-unregistered_address"},{"title":"List transactions","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /transactions","href":"/api-reference/transactions/list-transactions"},{"title":"Get a transaction by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /transactions/{id}","href":"/api-reference/transactions/get-a-transaction-by-id"}]},{"group":"Payouts","pages":[{"title":"Discover payout requirements","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /payouts/requirements","href":"/api-reference/payouts/discover-payout-requirements"},{"title":"Preview payout requirements","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /payouts/requirements","href":"/api-reference/payouts/preview-payout-requirements"},{"title":"Create a payout","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /payouts","href":"/api-reference/payouts/create-a-payout"},{"title":"Retrieve a payout","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /payouts/{id}","href":"/api-reference/payouts/retrieve-a-payout"},{"title":"Cancel a pending payout","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /payouts/{id}/cancel","href":"/api-reference/payouts/cancel-a-pending-payout"}]},{"group":"RFIs","pages":[{"title":"List RFIs","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /rfis","href":"/api-reference/rfis/list-rfis"},{"title":"Get an RFI by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /rfis/{id}","href":"/api-reference/rfis/get-an-rfi-by-id"},{"title":"Acknowledge an RFI","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /rfis/{id}/acknowledge","href":"/api-reference/rfis/acknowledge-an-rfi"},{"title":"Respond to an RFI","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /rfis/{id}/responses","href":"/api-reference/rfis/respond-to-an-rfi"}]},{"group":"Documents","pages":[{"title":"List documents","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /documents","href":"/api-reference/documents/list-documents"},{"title":"Upload a document","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /documents","href":"/api-reference/documents/upload-a-document"},{"title":"Get a document by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /documents/{id}","href":"/api-reference/documents/get-a-document-by-id"},{"title":"Get a download URL for a document","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /documents/{id}/download","href":"/api-reference/documents/get-a-download-url-for-a-document"}]},{"group":"Payee checks","pages":[{"title":"Check a payee name","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /payee-checks","href":"/api-reference/payee-checks/check-a-payee-name"}]},{"group":"Whitelist Recipients","pages":[{"title":"List whitelist recipients for a customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/whitelist-recipients","href":"/api-reference/whitelist-recipients/list-whitelist-recipients-for-a-customer"},{"title":"Register an intercompany recipient for whitelisting","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/whitelist-recipients","href":"/api-reference/whitelist-recipients/register-an-intercompany-recipient-for-whitelisting"},{"title":"Get a whitelist recipient by id","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/whitelist-recipients/{id}","href":"/api-reference/whitelist-recipients/get-a-whitelist-recipient-by-id"},{"title":"Revoke a whitelist recipient","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json delete /customers/{customerId}/whitelist-recipients/{id}","href":"/api-reference/whitelist-recipients/revoke-a-whitelist-recipient"}]},{"group":"Orders","pages":[{"title":"List orders for the authenticated organization","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /orders","href":"/api-reference/orders/list-orders-for-the-authenticated-organization"},{"title":"Create an order","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /orders","href":"/api-reference/orders/create-an-order"},{"title":"List required recipient fields","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /orders/requirements","href":"/api-reference/orders/list-required-recipient-fields"},{"title":"Retrieve an order by id","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /orders/{id}","href":"/api-reference/orders/retrieve-an-order-by-id"},{"title":"Cancel a pending order","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /orders/{id}/cancel","href":"/api-reference/orders/cancel-a-pending-order"},{"title":"Execute a pending order","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /orders/{id}/execute","href":"/api-reference/orders/execute-a-pending-order"}]},{"group":"Asset Chain Pairs","pages":[{"title":"List offerable asset/chain pairs","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /asset-chain-pairs","href":"/api-reference/asset-chain-pairs/list-offerable-assetchain-pairs"}]},{"group":"Quotes","pages":[{"title":"Price a conversion, payout, or withdrawal","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /quotes","href":"/api-reference/quotes/price-a-conversion-payout-or-withdrawal"}]},{"group":"Webhook Endpoints","pages":[{"title":"List webhook endpoints","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /webhooks/endpoints","href":"/api-reference/webhook-endpoints/list-webhook-endpoints"},{"title":"Create a webhook endpoint","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /webhooks/endpoints","href":"/api-reference/webhook-endpoints/create-a-webhook-endpoint"},{"title":"Get a webhook endpoint by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /webhooks/endpoints/{id}","href":"/api-reference/webhook-endpoints/get-a-webhook-endpoint-by-id"},{"title":"Delete a webhook endpoint","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json delete /webhooks/endpoints/{id}","href":"/api-reference/webhook-endpoints/delete-a-webhook-endpoint"},{"title":"Update a webhook endpoint","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json patch /webhooks/endpoints/{id}","href":"/api-reference/webhook-endpoints/update-a-webhook-endpoint"},{"title":"Rotate a webhook endpoint's signing secret","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /webhooks/endpoints/{id}/rotate","href":"/api-reference/webhook-endpoints/rotate-a-webhook-endpoints-signing-secret"}]},{"group":"Webhook Deliveries","pages":[{"title":"List webhook deliveries","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /webhooks/deliveries","href":"/api-reference/webhook-deliveries/list-webhook-deliveries"},{"title":"Get a delivery by ID","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /webhooks/deliveries/{id}","href":"/api-reference/webhook-deliveries/get-a-delivery-by-id"},{"title":"Retry a failed delivery","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /webhooks/deliveries/{id}/retry","href":"/api-reference/webhook-deliveries/retry-a-failed-delivery"}]},{"group":"Webhook Event Types","pages":[{"title":"List available webhook event types","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /webhooks/event-types","href":"/api-reference/webhook-event-types/list-available-webhook-event-types"}]},{"group":"Events","pages":[{"title":"List events","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /events","href":"/api-reference/events/list-events"},{"title":"Get an event by ID","description":"Retrieves one event. The `id` is the same as the `id` of the webhook payload that delivered the event.","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /events/{id}","href":"/api-reference/events/get-an-event-by-id"}]},{"group":"Features","pages":[{"title":"Submit a feature request","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /customers/{customerId}/features","href":"/api-reference/features/submit-a-feature-request"},{"title":"Discover feature requirements for a customer","description":"Same response shape as `GET /v2/onboarding/requirements`, resolved as a delta against what the customer already has on file. `country` echoes the customer's registered country for a business, or the account holder's country of residence for an individual. Returns 422 `ONBOARDING_NOT_READY` if the customer has not completed onboarding yet.","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /customers/{customerId}/features/requirements","href":"/api-reference/features/discover-feature-requirements-for-a-customer"}]},{"group":"Customer Onboarding","pages":[{"title":"Submit a customer onboarding application","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /onboarding","href":"/api-reference/customer-onboarding/submit-a-customer-onboarding-application"},{"title":"Discover onboarding requirements for a country","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /onboarding/requirements","href":"/api-reference/customer-onboarding/discover-onboarding-requirements-for-a-country"},{"title":"Discover selectable policy-subject catalog options for an axis","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /onboarding/policy-subjects","href":"/api-reference/customer-onboarding/discover-selectable-policy-subject-catalog-options-for-an-axis"}]},{"group":"Markup","pages":[{"title":"Accrued markup balances","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /markup/balances","href":"/api-reference/markup/accrued-markup-balances"},{"title":"Monthly markup statements","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /markup/statements","href":"/api-reference/markup/monthly-markup-statements"},{"title":"Markup statement lines","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json get /markup/statement-lines","href":"/api-reference/markup/markup-statement-lines"}]},{"group":"Sandbox","pages":[{"title":"Mark a sandbox customer as a house account","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json patch /sandbox/customers/{customerId}/house-account","href":"/api-reference/sandbox/mark-a-sandbox-customer-as-a-house-account"},{"title":"Reset a sandbox customer's wallet claim","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/customers/{customerId}/simulate-reset-claim","href":"/api-reference/sandbox/reset-a-sandbox-customers-wallet-claim"},{"title":"Resolve a registered address parked in screening review (sandbox only)","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/wallets/registered-addresses/{id}/simulate/compliance-decision","href":"/api-reference/sandbox/resolve-a-registered-address-parked-in-screening-review-sandbox-only"},{"title":"Simulate the compliance verdict on a sandbox application","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/applications/{id}/simulate/decision","href":"/api-reference/sandbox/simulate-the-compliance-verdict-on-a-sandbox-application"},{"title":"Simulate fiat-rail settlement for a sandbox payout","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/payouts/{id}/simulate/settled","href":"/api-reference/sandbox/simulate-fiat-rail-settlement-for-a-sandbox-payout"},{"title":"Simulate a Travel Rule counterparty webhook for a sandbox payout","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/payouts/{id}/simulate/counterparty-webhook","href":"/api-reference/sandbox/simulate-a-travel-rule-counterparty-webhook-for-a-sandbox-payout"},{"title":"Release a sandbox payout held for review","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/payouts/{id}/simulate-review-approve","href":"/api-reference/sandbox/release-a-sandbox-payout-held-for-review"},{"title":"Reject a sandbox payout held for review","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/payouts/{id}/simulate-review-reject","href":"/api-reference/sandbox/reject-a-sandbox-payout-held-for-review"},{"title":"Resolve a funding transfer held for compliance review (sandbox only)","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/orders/{orderId}/deposits/simulate/compliance-decision","href":"/api-reference/sandbox/resolve-a-funding-transfer-held-for-compliance-review-sandbox-only"},{"title":"Simulate an overall conversion failure for a sandbox order","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/orders/{id}/simulate/conversion-failed","href":"/api-reference/sandbox/simulate-an-overall-conversion-failure-for-a-sandbox-order"},{"title":"Simulate a transaction terminal outcome (sandbox only)","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/transactions/{id}/simulate/terminal","href":"/api-reference/sandbox/simulate-a-transaction-terminal-outcome-sandbox-only"},{"title":"Return a completed transaction from the bank (sandbox only)","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/transactions/{id}/simulate/return","href":"/api-reference/sandbox/return-a-completed-transaction-from-the-bank-sandbox-only"},{"title":"Resolve a transaction parked for compliance review (sandbox only)","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/transactions/{id}/simulate/compliance-decision","href":"/api-reference/sandbox/resolve-a-transaction-parked-for-compliance-review-sandbox-only"},{"title":"Simulate a fiat deposit to a sandbox virtual account","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/customers/{customerId}/virtual-accounts/{virtualAccountId}/deposits/simulate","href":"/api-reference/sandbox/simulate-a-fiat-deposit-to-a-sandbox-virtual-account"},{"title":"Simulate a Conduit compliance RFI on a sandbox customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/rfis/simulate","href":"/api-reference/sandbox/simulate-a-conduit-compliance-rfi-on-a-sandbox-customer"},{"title":"Simulate the resolution of a sandbox RFI","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/rfis/{id}/simulate/resolve","href":"/api-reference/sandbox/simulate-the-resolution-of-a-sandbox-rfi"},{"title":"Simulate a request for more information on a sandbox RFI","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/rfis/{id}/simulate/more-info","href":"/api-reference/sandbox/simulate-a-request-for-more-information-on-a-sandbox-rfi"},{"title":"Simulate compliance approval of a pending whitelist registration","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/whitelist-recipients/{id}/simulate-approve","href":"/api-reference/sandbox/simulate-compliance-approval-of-a-pending-whitelist-registration"},{"title":"Simulate compliance rejection of a pending whitelist registration","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/whitelist-recipients/{id}/simulate-reject","href":"/api-reference/sandbox/simulate-compliance-rejection-of-a-pending-whitelist-registration"},{"title":"Force a sandbox order's rate lock to expire immediately","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/orders/{id}/simulate/rate-lock-expired","href":"/api-reference/sandbox/force-a-sandbox-orders-rate-lock-to-expire-immediately"},{"title":"Simulate a Conduit restriction on a sandbox customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/customers/{customerId}/simulate/restrict","href":"/api-reference/sandbox/simulate-a-conduit-restriction-on-a-sandbox-customer"},{"title":"Simulate a lifted restriction on a sandbox customer","deprecated":null,"version":null,"openapi":"https://api.sandbox.conduit.financial/v2/api-docs/openapi.json post /sandbox/customers/{customerId}/simulate/lift-restriction","href":"/api-reference/sandbox/simulate-a-lifted-restriction-on-a-sandbox-customer"}]}]},{"tab":"KYB Reference","pages":[{"title":"KYB Reference","href":"/kyb/overview"}]}]},"basePath":"","title":"Submit a feature request - Conduit API","buildId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","deploymentId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-C-hEh3I2.js","utils-CnF4QiUD.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-C7PVNbel.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-8ytevL2A.js","snippetPresets-BT1alx3v.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","Page-C945cI-W.js","ApiExamples-BLXC0i_W.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CyLIGI9_.js","shallow-DC0lGVIW.js","getApiPlaygroundDisplay-CgDQ85tN.js","CodeSnippet-6-I-Gpv9.js","CodeSnippets-BAk1kDdu.js","getPastedJson-B276RuWN.js","icon-BqP8etTm.js","MethodPill-DM6sbxG1.js","DuplicateIcon-PyJglOaE.js","createIcon-CMeOMAc_.js","DynamicMarkdown-BoyYAA8K.js","SectionHeading-DAYv3gvZ.js","axios-vUo_bRtp.js","Markdown-BhTTmazV.js","clsx-CR-RHrVC.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CBUH0-zX.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BmARFYNC.js"]}