{ "message": "KYC data submitted for review", "status": "submitted"}
phoneNumber is required; occupation is required; idNumbers may only be provided when address.country is MX
Deprecated
Submit KYC
deprecated
Deprecated. New integrations use Submit verification data, which writes onto the customer’s verification profile the hosted flow actually reads. See KYC API.
Submit identity information (name, address, DOB, tax ID) for a customer
programmatically, an alternative to the presigned-URL flow where users complete KYC in
the Etherfuse UI.
Use case: partners who want to white-label the KYC experience can collect identity
data in their own UI and submit it here.
Submitted data is reviewed by Etherfuse admins before approval; you’ll receive a
kyc_updated webhook when the status changes.
Sandbox auto-approval: in sandbox, a personal customer auto-approves once all
agreements have been signed, with no manual review. Submitting KYC alone leaves the customer
submitted; approval lands only after the rest of the programmatic flow (document upload
and agreement signing) is complete, at which point a kyc_updated webhook fires and orders
unlock for the wallet. This is sandbox-only; production still requires manual review.
Data isolation: partners can only query KYC data they submitted; data submitted by
other partners or directly by users is not visible.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Etherfuse API","colors":{"primary":"#141414","light":"#E4FF3F","dark":"#141414"},"logo":{"light":"https://mintcdn.com/etherfuse/XRSchVFGUgreQatD/img/logo-black.svg?fit=max\u0026auto=format\u0026n=XRSchVFGUgreQatD\u0026q=85\u0026s=92cf84eca27df4a19f7b032da398d110","dark":"https://mintcdn.com/etherfuse/XRSchVFGUgreQatD/img/logo-white.svg?fit=max\u0026auto=format\u0026n=XRSchVFGUgreQatD\u0026q=85\u0026s=7c87780c9a248347ffe6357ccf6762ed","href":"https://etherfuse.com"},"favicon":"https://mintcdn.com/etherfuse/pF4txuzXWQE790kS/img/favicon.png?fit=max\u0026auto=format\u0026n=pF4txuzXWQE790kS\u0026q=85\u0026s=ac74be5f7f4605e75bc961be0c6e5ff9","api":{"playground":{"display":"interactive"},"examples":{"languages":["curl","javascript","python"],"autogenerate":true}},"navbar":{"links":[{"href":"https://cal.com/team/etherfuse/api-overview?overlayCalendar=true","label":"Book a demo"},{"href":"https://app.etherfuse.com","label":"App"}],"primary":{"type":"button","label":"Get sandbox keys","href":"https://sandbox.etherfuse.com/sign-in?returnTo=%2Faccount%2Fmanage"}},"footer":{"links":[{"items":[{"label":"Website","href":"https://etherfuse.com"},{"label":"App","href":"https://app.etherfuse.com"},{"label":"Book a demo","href":"https://cal.com/team/etherfuse/api-overview?overlayCalendar=true"}]}]},"fonts":{"family":"Figtree"},"integrations":{"posthog":{"apiKey":"phc_vJEpZk4aZr9PxdPqapjg8ZKWFybTTmDvAxZNg88LTuPu","apiHost":"https://us.i.posthog.com"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"etherfuse","hasAudioNarration":false,"actualSubdomain":"etherfuse","customDomains":["docs.etherfuse.com"],"gitSource":{"type":"github","owner":"etherfuse","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae27b76ad583d9a02b5c23e","collectionId":"5b359922-86a5-4b56-bb5e-cd64e3275e25","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae27b76ad583d9a02b5c23e"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae27b76ad583d9a02b5c23e","clientVersion":"0.0.4006","searchFilterCounts":[{"language":"default","tag":"API Reference","count":151},{"language":"default","tag":"Ramp API","count":72},{"language":"default","tag":"Guides","count":65},{"language":"default","tag":"KYC","count":20},{"language":"default","tag":"Lookup API","count":18},{"language":"default","tag":"Orders","count":17},{"language":"default","tag":"Organizations","count":16},{"language":"default","tag":"User Authentication","count":12},{"language":"default","tag":"Blockchains","count":12},{"language":"default","tag":"Integration Guides","count":12}]},"assistantConfig":{},"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":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"editor-nav-generations","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":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[{"filePath":"global.css","content":"body{scrollbar-gutter:stable}.sandbox-playground-cta{display:block;margin:1rem 0 1.25rem;padding:1rem 1.25rem;border-radius:.75rem;border:1px solid #141414;background-color:#e4ff3f;color:#141414!important;text-decoration:none;transition:background-color .15s ease,box-shadow .15s ease}.sandbox-playground-cta:hover{background-color:#d8f32f;box-shadow:0 2px 8px rgba(20,20,20,.12);color:#141414!important}.sandbox-playground-cta__body,.sandbox-playground-cta__detail,.sandbox-playground-cta__title{color:inherit!important}.dark .sandbox-playground-cta{border-color:#e4ff3f;background-color:#e4ff3f;color:#141414!important}.dark .sandbox-playground-cta:hover{background-color:#d8f32f;color:#141414!important}.sandbox-playground-cta__title{display:block;font-size:1rem;font-weight:600;margin-bottom:.35rem}.sandbox-playground-cta__body{display:block;font-size:.95rem;line-height:1.45;font-weight:500}.sandbox-playground-cta__detail{display:block;margin-top:.35rem;font-size:.85rem;line-height:1.45;opacity:.85}"}],"page":{"pagePath":"api-reference/deprecated/submit-kyc","slug":"/api-reference/deprecated/submit-kyc","pageMetadata":{"title":"Submit KYC","description":"**Deprecated.** New integrations use [Submit verification data](/api-reference/kyc/submit-verification-data), which writes onto the customer's verification profile the hosted flow actually reads. See [KYC API](/guides/kyc-api).\n\nSubmit identity information (name, address, DOB, tax ID) for a customer\nprogrammatically, an alternative to the presigned-URL flow where users complete KYC in\nthe Etherfuse UI.\n\n**Use case:** partners who want to white-label the KYC experience can collect identity\ndata in their own UI and submit it here.\n\nSubmitted data is reviewed by Etherfuse admins before approval; you'll receive a\n`kyc_updated` webhook when the status changes.\n\n**Sandbox auto-approval:** in sandbox, a `personal` customer auto-approves once all\nagreements have been signed, with no manual review. Submitting KYC alone leaves the customer\n`submitted`; approval lands only after the rest of the programmatic flow (document upload\nand agreement signing) is complete, at which point a `kyc_updated` webhook fires and orders\nunlock for the wallet. This is sandbox-only; production still requires manual review.\n\n**Data isolation:** partners can only query KYC data they submitted; data submitted by\nother partners or directly by users is not visible.","deprecated":true,"version":null,"openapi":"/openapi.json post /ramp/customer/{customer_id}/kyc","href":"/api-reference/deprecated/submit-kyc","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n a: \"a\",\n code: \"code\",\n p: \"p\",\n strong: \"strong\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Deprecated.\"\n }), \" New integrations use \", _jsx(_components.a, {\n href: \"/api-reference/kyc/submit-verification-data\",\n children: \"Submit verification data\"\n }), \", which writes onto the customer’s verification profile the hosted flow actually reads. See \", _jsx(_components.a, {\n href: \"/guides/kyc-api\",\n children: \"KYC API\"\n }), \".\"]\n }), \"\\n\", _jsx(_components.p, {\n children: \"Submit identity information (name, address, DOB, tax ID) for a customer\\nprogrammatically, an alternative to the presigned-URL flow where users complete KYC in\\nthe Etherfuse UI.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Use case:\"\n }), \" partners who want to white-label the KYC experience can collect identity\\ndata in their own UI and submit it here.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Submitted data is reviewed by Etherfuse admins before approval; you’ll receive a\\n\", _jsx(_components.code, {\n children: \"kyc_updated\"\n }), \" webhook when the status changes.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Sandbox auto-approval:\"\n }), \" in sandbox, a \", _jsx(_components.code, {\n children: \"personal\"\n }), \" customer auto-approves once all\\nagreements have been signed, with no manual review. Submitting KYC alone leaves the customer\\n\", _jsx(_components.code, {\n children: \"submitted\"\n }), \"; approval lands only after the rest of the programmatic flow (document upload\\nand agreement signing) is complete, at which point a \", _jsx(_components.code, {\n children: \"kyc_updated\"\n }), \" webhook fires and orders\\nunlock for the wallet. This is sandbox-only; production still requires manual review.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Data isolation:\"\n }), \" partners can only query KYC data they submitted; data submitted by\\nother partners or directly by users is not visible.\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Submit KYC","description":"**Deprecated.** New integrations use [Submit verification data](/api-reference/kyc/submit-verification-data), which writes onto the customer's verification profile the hosted flow actually reads. See [KYC API](/guides/kyc-api).\n\nSubmit identity information (name, address, DOB, tax ID) for a customer\nprogrammatically, an alternative to the presigned-URL flow where users complete KYC in\nthe Etherfuse UI.\n\n**Use case:** partners who want to white-label the KYC experience can collect identity\ndata in their own UI and submit it here.\n\nSubmitted data is reviewed by Etherfuse admins before approval; you'll receive a\n`kyc_updated` webhook when the status changes.\n\n**Sandbox auto-approval:** in sandbox, a `personal` customer auto-approves once all\nagreements have been signed, with no manual review. Submitting KYC alone leaves the customer\n`submitted`; approval lands only after the rest of the programmatic flow (document upload\nand agreement signing) is complete, at which point a `kyc_updated` webhook fires and orders\nunlock for the wallet. This is sandbox-only; production still requires manual review.\n\n**Data isolation:** partners can only query KYC data they submitted; data submitted by\nother partners or directly by users is not visible.","deprecated":true,"version":null,"openapi":"/openapi.json post /ramp/customer/{customer_id}/kyc","href":"/api-reference/deprecated/submit-kyc","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Deprecated"],"deprecated":true,"summary":"Submit KYC","description":"**Deprecated.** New integrations use [Submit verification data](/api-reference/kyc/submit-verification-data), which writes onto the customer's verification profile the hosted flow actually reads. See [KYC API](/guides/kyc-api).\n\nSubmit identity information (name, address, DOB, tax ID) for a customer\nprogrammatically, an alternative to the presigned-URL flow where users complete KYC in\nthe Etherfuse UI.\n\n**Use case:** partners who want to white-label the KYC experience can collect identity\ndata in their own UI and submit it here.\n\nSubmitted data is reviewed by Etherfuse admins before approval; you'll receive a\n`kyc_updated` webhook when the status changes.\n\n**Sandbox auto-approval:** in sandbox, a `personal` customer auto-approves once all\nagreements have been signed, with no manual review. Submitting KYC alone leaves the customer\n`submitted`; approval lands only after the rest of the programmatic flow (document upload\nand agreement signing) is complete, at which point a `kyc_updated` webhook fires and orders\nunlock for the wallet. This is sandbox-only; production still requires manual review.\n\n**Data isolation:** partners can only query KYC data they submitted; data submitted by\nother partners or directly by users is not visible.","operationId":"submit_kyc","parameters":["c82be6a8-0b1a-4011-8f93-45ac7a5fccf5"],"requestBody":"6e035b01-322b-4647-a8ba-e3d2d632d7c5","responses":{"200":"f37d1e63-65ff-41a1-94d3-be086f3c38f5","400":"543089dd-f8a0-4e38-a608-1a4cf48cd839","404":"95b06cf9-0a5a-4485-ab74-94a8c5a4cab8"},"method":"post","type":"path","servers":["4e9b65a7-e59b-4864-97d7-cc465a1266a3"],"security":["ed057397-960a-4b19-80b6-744cdfa919b4"],"path":"/ramp/customer/{customer_id}/kyc","baseUrlOptions":["https://api.sand.etherfuse.com"],"title":"Submit KYC","codeSamples":[],"requestExampleLanguages":["bash","javascript","python"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"c82be6a8-0b1a-4011-8f93-45ac7a5fccf5":{"name":"customer_id","in":"path","description":"The customer (child org) ID. Must belong to the caller's organization or a direct child.","required":true,"schema":{"type":"string","format":"uuid","isRequired":true,"description":"The customer (child org) ID. Must belong to the caller's organization or a direct child.","uniqueKey":"","typeLabel":"string\u003cuuid>"}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","description":"Request body for submitting KYC identity data. This endpoint is for personal accounts only; business/KYB fields are not accepted.","required":["identity"],"properties":{"identity":{"type":"object","description":"Personal identity information for the customer.","required":["email","phoneNumber","occupation","name","dateOfBirth","address"],"properties":{"email":{"type":"string","description":"Customer's email address.","isRequired":true,"uniqueKey":"identity.email","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Customer's phone number in E.164 format, e.g. +525512345678.","isRequired":true,"uniqueKey":"identity.phoneNumber","typeLabel":"string"},"occupation":{"type":"string","description":"Customer's occupation.","isRequired":true,"uniqueKey":"identity.occupation","typeLabel":"string"},"dateOfBirth":{"type":"string","description":"Date of birth in YYYY-MM-DD format.","isRequired":true,"uniqueKey":"identity.dateOfBirth","typeLabel":"string"},"name":{"type":"object","description":"Customer's legal name.","required":["givenName","familyName"],"properties":{"givenName":{"type":"string","isRequired":true,"uniqueKey":"identity.name.givenName","typeLabel":"string"},"familyName":{"type":"string","isRequired":true,"uniqueKey":"identity.name.familyName","typeLabel":"string"},"middleName":{"oneOf":[{"type":"string","uniqueKey":"identity.name.middleName.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"identity.name.middleName.oneOf.1","typeLabel":"null"}],"uniqueKey":"identity.name.middleName","typeLabel":"string | null"},"motherMaidenName":{"oneOf":[{"type":"string","uniqueKey":"identity.name.motherMaidenName.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"identity.name.motherMaidenName.oneOf.1","typeLabel":"null"}],"uniqueKey":"identity.name.motherMaidenName","typeLabel":"string | null"},"preferredName":{"oneOf":[{"type":"string","uniqueKey":"identity.name.preferredName.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"identity.name.preferredName.oneOf.1","typeLabel":"null"}],"uniqueKey":"identity.name.preferredName","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"identity.name","typeLabel":"object"},"address":{"type":"object","description":"Customer's residential address. All fields except street2 are required.","required":["street","city","region","postalCode","country"],"properties":{"street":{"type":"string","isRequired":true,"uniqueKey":"identity.address.street","typeLabel":"string"},"city":{"type":"string","isRequired":true,"uniqueKey":"identity.address.city","typeLabel":"string"},"region":{"type":"string","description":"State or region.","isRequired":true,"uniqueKey":"identity.address.region","typeLabel":"string"},"postalCode":{"type":"string","isRequired":true,"uniqueKey":"identity.address.postalCode","typeLabel":"string"},"country":{"type":"string","description":"ISO 3166-1 alpha-2 country code, e.g. MX.","isRequired":true,"uniqueKey":"identity.address.country","typeLabel":"string"},"street2":{"oneOf":[{"type":"string","uniqueKey":"identity.address.street2.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"identity.address.street2.oneOf.1","typeLabel":"null"}],"uniqueKey":"identity.address.street2","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"identity.address","typeLabel":"object"},"useEmailForMarketing":{"oneOf":[{"type":"boolean","description":"Whether the customer consents to marketing emails. Optional.","uniqueKey":"identity.useEmailForMarketing.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Whether the customer consents to marketing emails. Optional.","uniqueKey":"identity.useEmailForMarketing.oneOf.1","typeLabel":"null"}],"uniqueKey":"identity.useEmailForMarketing","typeLabel":"boolean | null"},"idNumbers":{"type":"array","description":"Government-issued ID numbers. Required only when address.country is MX: both a CURP and an RFC must be included. For any other country, idNumbers must be omitted.","items":{"type":"object","required":["type","value"],"properties":{"type":{"type":"string","description":"ID type. For Mexico, both CURP and RFC are required.","isRequired":true,"uniqueKey":"identity.idNumbers.items.[INDEX].type","typeLabel":"string"},"value":{"type":"string","isRequired":true,"uniqueKey":"identity.idNumbers.items.[INDEX].value","typeLabel":"string"}},"uniqueKey":"identity.idNumbers.items.[INDEX]","typeLabel":"object"},"uniqueKey":"identity.idNumbers","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"identity","typeLabel":"object"}},"example":{"identity":{"email":"[email protected]","phoneNumber":"+525512345678","occupation":"Software Engineer","dateOfBirth":"1990-05-15","name":{"givenName":"Ana","familyName":"García","motherMaidenName":"López"},"address":{"street":"Av. Reforma 222","city":"Ciudad de México","region":"CDMX","postalCode":"06600","country":"MX"},"idNumbers":[{"type":"CURP","value":"GALA900515MDFRPN08"},{"type":"RFC","value":"GALA900515QX4"}]}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"identity":{"email":"[email protected]","phoneNumber":"+525512345678","occupation":"Software Engineer","dateOfBirth":"1990-05-15","name":{"givenName":"Ana","familyName":"García","motherMaidenName":"López"},"address":{"street":"Av. Reforma 222","city":"Ciudad de México","region":"CDMX","postalCode":"06600","country":"MX"},"idNumbers":[{"type":"CURP","value":"GALA900515MDFRPN08"},{"type":"RFC","value":"GALA900515QX4"}]}}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"f37d1e63-65ff-41a1-94d3-be086f3c38f5":{"description":"KYC identity data submitted","content":{"application/json":{"schema":{},"example":{"message":"KYC data submitted for review","status":"submitted"},"examples":{"Example":{"title":"Example","value":{"message":"KYC data submitted for review","status":"submitted"}}},"exampleType":"examples"}},"exampleType":"examples"},"543089dd-f8a0-4e38-a608-1a4cf48cd839":{"description":"Validation failed. The plain text body lists every missing or invalid field.","content":{"text/plain":{"schema":{"type":"string","uniqueKey":"","typeLabel":"string"},"example":"phoneNumber is required; occupation is required; idNumbers may only be provided when address.country is MX","examples":{"Example":{"title":"Example","value":"phoneNumber is required; occupation is required; idNumbers may only be provided when address.country is MX"}},"exampleType":"examples"}},"exampleType":"examples"},"95b06cf9-0a5a-4485-ab74-94a8c5a4cab8":{"description":"No organization exists with that `customer_id`, or it is not a customer of your organization.","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}}},"security":{"ed057397-960a-4b19-80b6-744cdfa919b4":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"Authorization","description":"API key sent in the Authorization header.","scopes":[],"schemeName":"ApiKeyAuth"}}},"servers":{"4e9b65a7-e59b-4864-97d7-cc465a1266a3":{"url":"https://api.sand.etherfuse.com","description":"Sandbox"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"Authorization","description":"API key sent in the Authorization header.","scopes":[],"schemeName":"ApiKeyAuth"},"schema":{"title":"Authorization","type":"string","description":"API key sent in the Authorization header.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"Authorization"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"openapi.json"},"subdomain":"etherfuse","siteName":"Etherfuse API","title":"Submit KYC - Etherfuse API","navMaps":{"firstHrefInVersion":{"v2 (beta)":{"href":"/v2","matchLevel":4},"v1 (legacy)":{"href":"/api-reference/deprecated/submit-kyc","matchLevel":0}},"firstHrefInLanguage":{}},"lastModified":"2026-10-28T22:47:21.618Z","originalFileLocation":"api-reference/deprecated/submit-kyc.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=\"Deprecated. New integrations use Submit verification data, which writes onto the customer\u0026#x27;s verification profile the hosted flow actually reads. See KYC API. Submit identity information (name, address, DOB, tax ID) for a customer programmatically, an alternative to the presigned-URL flow where users complete KYC in the Etherfuse UI. Use case: partners who want to white-label the KYC experience can collect identity data in their own UI and submit it here. Submitted data is reviewed by Etherfuse admins before approval; you\u0026#x27;ll receive a kyc_updated webhook when the status changes. Sandbox auto-approval: in sandbox, a personal customer auto-approves once all agreements have been signed, with no manual review. Submitting KYC alone leaves the customer submitted; approval lands only after the rest of the programmatic flow (document upload and agreement signing) is complete, at which point a kyc_updated webhook fires and orders unlock for the wallet. This is sandbox-only; production still requires manual review. Data isolation: partners can only query KYC data they submitted; data submitted by other partners or directly by users is not visible.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Etherfuse 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/etherfuse/2PYR-_ECBzhTGa_z/_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/etherfuse/2PYR-_ECBzhTGa_z/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/etherfuse/2PYR-_ECBzhTGa_z/_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/etherfuse/2PYR-_ECBzhTGa_z/_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/etherfuse/2PYR-_ECBzhTGa_z/_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/etherfuse/2PYR-_ECBzhTGa_z/_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/etherfuse/2PYR-_ECBzhTGa_z/_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/etherfuse/2PYR-_ECBzhTGa_z/_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/etherfuse/2PYR-_ECBzhTGa_z/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Submit KYC - Etherfuse API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Deprecated. New integrations use Submit verification data, which writes onto the customer\u0026#x27;s verification profile the hosted flow actually reads. See KYC API. Submit identity information (name, address, DOB, tax ID) for a customer programmatically, an alternative to the presigned-URL flow where users complete KYC in the Etherfuse UI. Use case: partners who want to white-label the KYC experience can collect identity data in their own UI and submit it here. Submitted data is reviewed by Etherfuse admins before approval; you\u0026#x27;ll receive a kyc_updated webhook when the status changes. Sandbox auto-approval: in sandbox, a personal customer auto-approves once all agreements have been signed, with no manual review. Submitting KYC alone leaves the customer submitted; approval lands only after the rest of the programmatic flow (document upload and agreement signing) is complete, at which point a kyc_updated webhook fires and orders unlock for the wallet. This is sandbox-only; production still requires manual review. Data isolation: partners can only query KYC data they submitted; data submitted by other partners or directly by users is not visible.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Etherfuse API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.etherfuse.com/api-reference/deprecated/submit-kyc\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://etherfuse.mintlify.app/_mintlify/api/og/v2?division=Deprecated\u0026amp;title=Submit+KYC\u0026amp;description=**Deprecated.**+New+integrations+use+%5BSubmit+verification+data%5D%28%2Fapi-reference%2Fkyc%2Fsubmit-verification-data%29%2C+which+writes+onto+the+customer%27s+verification+prof\u0026amp;theme=a63046a1b6875a84019a21bc\u0026amp;signature=cfd75428b1d04420b7cced123a7fa4d213b44254325c4562e0d939d32bf22588\">\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 KYC - Etherfuse API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Deprecated. New integrations use Submit verification data, which writes onto the customer\u0026#x27;s verification profile the hosted flow actually reads. See KYC API. Submit identity information (name, address, DOB, tax ID) for a customer programmatically, an alternative to the presigned-URL flow where users complete KYC in the Etherfuse UI. Use case: partners who want to white-label the KYC experience can collect identity data in their own UI and submit it here. Submitted data is reviewed by Etherfuse admins before approval; you\u0026#x27;ll receive a kyc_updated webhook when the status changes. Sandbox auto-approval: in sandbox, a personal customer auto-approves once all agreements have been signed, with no manual review. Submitting KYC alone leaves the customer submitted; approval lands only after the rest of the programmatic flow (document upload and agreement signing) is complete, at which point a kyc_updated webhook fires and orders unlock for the wallet. This is sandbox-only; production still requires manual review. Data isolation: partners can only query KYC data they submitted; data submitted by other partners or directly by users is not visible.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://etherfuse.mintlify.app/_mintlify/api/og/v2?division=Deprecated\u0026amp;title=Submit+KYC\u0026amp;description=**Deprecated.**+New+integrations+use+%5BSubmit+verification+data%5D%28%2Fapi-reference%2Fkyc%2Fsubmit-verification-data%29%2C+which+writes+onto+the+customer%27s+verification+prof\u0026amp;theme=a63046a1b6875a84019a21bc\u0026amp;signature=cfd75428b1d04420b7cced123a7fa4d213b44254325c4562e0d939d32bf22588\">\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/etherfuse/2PYR-_ECBzhTGa_z/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Etherfuse API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#141414\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.etherfuse.com/api-reference/deprecated/submit-kyc\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/deprecated/submit-kyc.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.etherfuse.com/#organization\",\"name\":\"Etherfuse API\",\"url\":\"https://docs.etherfuse.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/etherfuse/XRSchVFGUgreQatD/img/logo-black.svg?fit=max\u0026auto=format\u0026n=XRSchVFGUgreQatD\u0026q=85\u0026s=92cf84eca27df4a19f7b032da398d110\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.etherfuse.com#website\",\"name\":\"Etherfuse API\",\"url\":\"https://docs.etherfuse.com\",\"publisher\":{\"@id\":\"https://docs.etherfuse.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.etherfuse.com/api-reference/deprecated/submit-kyc#webpage\",\"url\":\"https://docs.etherfuse.com/api-reference/deprecated/submit-kyc\",\"name\":\"Submit KYC\",\"description\":\"Deprecated. New integrations use Submit verification data, which writes onto the customer's verification profile the hosted flow actually reads. See KYC API. Submit identity information (name, address, DOB, tax ID) for a customer programmatically, an alternative to the presigned-URL flow where users complete KYC in the Etherfuse UI. Use case: partners who want to white-label the KYC experience can collect identity data in their own UI and submit it here. Submitted data is reviewed by Etherfuse admins before approval; you'll receive a kyc_updated webhook when the status changes. Sandbox auto-approval: in sandbox, a personal customer auto-approves once all agreements have been signed, with no manual review. Submitting KYC alone leaves the customer submitted; approval lands only after the rest of the programmatic flow (document upload and agreement signing) is complete, at which point a kyc_updated webhook fires and orders unlock for the wallet. This is sandbox-only; production still requires manual review. Data isolation: partners can only query KYC data they submitted; data submitted by other partners or directly by users is not visible.\",\"dateModified\":\"2026-10-28T22:47:21.618Z\",\"isPartOf\":{\"@id\":\"https://docs.etherfuse.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.etherfuse.com/api-reference/deprecated/submit-kyc#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.etherfuse.com/api-reference/deprecated/submit-kyc#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Ramp API\",\"item\":\"https://docs.etherfuse.com/api-reference/assets/list-assets\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Deprecated\",\"item\":\"https://docs.etherfuse.com/api-reference/deprecated/generate-onboarding-url\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Submit KYC\",\"item\":\"https://docs.etherfuse.com/api-reference/deprecated/submit-kyc\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.etherfuse.com/api-reference/deprecated/submit-kyc#apireference\",\"headline\":\"Submit KYC\",\"name\":\"Submit KYC\",\"description\":\"Deprecated. New integrations use Submit verification data, which writes onto the customer's verification profile the hosted flow actually reads. See KYC API. Submit identity information (name, address, DOB, tax ID) for a customer programmatically, an alternative to the presigned-URL flow where users complete KYC in the Etherfuse UI. Use case: partners who want to white-label the KYC experience can collect identity data in their own UI and submit it here. Submitted data is reviewed by Etherfuse admins before approval; you'll receive a kyc_updated webhook when the status changes. Sandbox auto-approval: in sandbox, a personal customer auto-approves once all agreements have been signed, with no manual review. Submitting KYC alone leaves the customer submitted; approval lands only after the rest of the programmatic flow (document upload and agreement signing) is complete, at which point a kyc_updated webhook fires and orders unlock for the wallet. This is sandbox-only; production still requires manual review. Data isolation: partners can only query KYC data they submitted; data submitted by other partners or directly by users is not visible.\",\"url\":\"https://docs.etherfuse.com/api-reference/deprecated/submit-kyc\",\"mainEntityOfPage\":{\"@id\":\"https://docs.etherfuse.com/api-reference/deprecated/submit-kyc#webpage\"},\"dateModified\":\"2026-10-28T22:47:21.618Z\",\"publisher\":{\"@id\":\"https://docs.etherfuse.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.etherfuse.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Etherfuse API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Etherfuse API","nav":{"global":null,"versions":[{"version":"v2 (beta)","default":true,"pages":[{"title":"v2 (beta)","href":"/v2"}]},{"version":"v1 (legacy)","tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":"/introduction"}]},{"tab":"API Reference","pages":[{"title":"Introduction","href":"/api-reference/introduction"},{"title":"API Authentication","href":"/authentication"},{"title":"Errors","href":"/errors"},{"title":"Pagination","href":"/pagination"},{"title":"Idempotency","href":"/idempotency"},{"group":"User Authentication","icon":"key","pages":[{"openapi":"openapi.json POST /auth/launch","title":"Launch a user into the app","href":"/api-reference/authentication/launch-a-user-into-the-app"},{"openapi":"openapi.json GET /auth/launch","title":"Launch a user via postMessage","href":"/api-reference/launch-via-postmessage"},{"title":"Exchange a partner JWT","deprecated":null,"version":null,"openapi":"/openapi.json post /auth/token","href":"/api-reference/authentication/exchange-a-partner-jwt"}]},{"group":"Ramp API","icon":"money-bill-transfer","pages":[{"group":"Assets","icon":"coins","pages":[{"title":"List assets","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/assets","href":"/api-reference/assets/list-assets"},{"title":"Get one wallet's balances","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/balances","href":"/api-reference/assets/get-one-wallets-balances"}]},{"group":"Bank Accounts","icon":"building-columns","pages":[{"title":"Create bank account (presigned)","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/bank-account","href":"/api-reference/bank-accounts/create-bank-account-presigned"},{"title":"Get bank account","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/bank-account/{bank_account_id}","href":"/api-reference/bank-accounts/get-bank-account"},{"title":"List bank accounts","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/bank-accounts","href":"/api-reference/bank-accounts/list-bank-accounts"},{"title":"Search bank accounts","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/bank-accounts","href":"/api-reference/bank-accounts/search-bank-accounts"},{"title":"Create bank account (API)","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/customer/{customer_id}/bank-account","href":"/api-reference/bank-accounts/create-bank-account-api"},{"title":"List customer accounts","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/customer/{customer_id}/bank-accounts","href":"/api-reference/bank-accounts/list-customer-accounts"},{"title":"Search customer accounts","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/customer/{customer_id}/bank-accounts","href":"/api-reference/bank-accounts/search-customer-accounts"}]},{"group":"Quotes","icon":"tag","pages":[{"title":"Get quote","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/quote","href":"/api-reference/quotes/get-quote"}]},{"group":"Orders","icon":"receipt","pages":[{"title":"Create order","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/order","href":"/api-reference/orders/create-order"},{"title":"Get order","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/order/{order_id}","href":"/api-reference/orders/get-order"},{"title":"Cancel order","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/order/{order_id}/cancel","href":"/api-reference/orders/cancel-order"},{"title":"Regenerate tx","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/order/{order_id}/regenerate_tx","href":"/api-reference/orders/regenerate-tx"},{"title":"Get order approval","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/order/{order_id}/approvals","href":"/api-reference/orders/get-order-approval"},{"title":"Submit order approval","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/order/{order_id}/approvals","href":"/api-reference/orders/submit-order-approval"},{"title":"List orders","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/orders","href":"/api-reference/orders/list-orders"},{"title":"Search orders","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/orders","href":"/api-reference/orders/search-orders"},{"title":"List customer orders","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/customer/{customer_id}/orders","href":"/api-reference/orders/list-customer-orders"},{"title":"Search customer orders","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/customer/{customer_id}/orders","href":"/api-reference/orders/search-customer-orders"}]},{"group":"Statements","icon":"file-invoice-dollar","pages":[{"title":"List partner statements","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/partner-statements","href":"/api-reference/statements/list-partner-statements"},{"title":"Download statement CSV","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/partner-statements/{year}-{month}/csv","href":"/api-reference/statements/download-statement-csv"},{"title":"Download statement PDF","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/partner-statements/{year}-{month}/pdf","href":"/api-reference/statements/download-statement-pdf"}]},{"group":"WebSocket","icon":"plug","pages":[{"title":"Mint WebSocket token","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/ws-api-token","href":"/api-reference/websocket/mint-websocket-token"},{"title":"Connect to the live update stream","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/ws","href":"/api-reference/websocket/connect-to-the-live-update-stream"}]},{"group":"Swaps","icon":"right-left","pages":[{"title":"Swap assets","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/swap","href":"/api-reference/swaps/swap-assets"},{"title":"Regenerate swap tx","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/swap/{order_id}/regenerate_tx","href":"/api-reference/swaps/regenerate-swap-tx"}]},{"group":"Sponsored","icon":"hand-holding-dollar","pages":[{"title":"Approve EVM token","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/evm/approve","href":"/api-reference/sponsored/approve-evm-token"}]},{"group":"Customers","icon":"users","pages":[{"title":"Search customers","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/customers","href":"/api-reference/customers/search-customers"},{"title":"List customers","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/customers","href":"/api-reference/customers/list-customers"},{"title":"Get customer","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/customer/{customer_id}","href":"/api-reference/customers/get-customer"},{"title":"List a customer's organizations","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/customer/{customer_id}/organization","href":"/api-reference/customers/list-a-customers-organizations"}]},{"group":"Wallets","icon":"wallet","pages":[{"title":"Register wallet","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/wallet","href":"/api-reference/wallets/register-wallet"},{"title":"Get wallet","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/wallet/{wallet_id}","href":"/api-reference/wallets/get-wallet"},{"title":"Delete wallet","deprecated":null,"version":null,"openapi":"/openapi.json delete /ramp/wallet/{wallet_id}","href":"/api-reference/wallets/delete-wallet"},{"title":"List wallets","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/wallets","href":"/api-reference/wallets/list-wallets"},{"title":"Search wallets","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/wallets","href":"/api-reference/wallets/search-wallets"},{"title":"Register customer wallet","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/customer/{customer_id}/wallet","href":"/api-reference/wallets/register-customer-wallet"},{"title":"List customer wallets","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/customer/{customer_id}/wallets","href":"/api-reference/wallets/list-customer-wallets"},{"title":"Search customer wallets","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/customer/{customer_id}/wallets","href":"/api-reference/wallets/search-customer-wallets"}]},{"group":"KYC","icon":"id-card","pages":[{"title":"Get KYC status","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/customer/{customer_id}/kyc","href":"/api-reference/kyc/get-kyc-status"},{"title":"Submit verification data","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/customer/{customer_id}/verification","href":"/api-reference/kyc/submit-verification-data"},{"title":"Upload verification documents","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/customer/{customer_id}/verification/documents","href":"/api-reference/kyc/upload-verification-documents"},{"title":"Submit a verification questionnaire","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/customer/{customer_id}/verification/questionnaire","href":"/api-reference/kyc/submit-a-verification-questionnaire"},{"title":"Import a verified session","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/customer/{customer_id}/verification/import","href":"/api-reference/kyc/import-a-verified-session"},{"title":"List occupation categories","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/verification/occupations","href":"/api-reference/kyc/list-occupation-categories"}]},{"group":"Webhooks","icon":"bell","pages":[{"title":"Create webhook","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/webhook","href":"/api-reference/webhooks/create-webhook"},{"title":"Get webhook","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/webhook/{webhook_id}","href":"/api-reference/webhooks/get-webhook"},{"title":"Delete webhook","deprecated":null,"version":null,"openapi":"/openapi.json delete /ramp/webhook/{webhook_id}","href":"/api-reference/webhooks/delete-webhook"},{"title":"List webhooks","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/webhooks","href":"/api-reference/webhooks/list-webhooks"}]},{"group":"Webhook Events","icon":"tower-broadcast","pages":[{"title":"Order updated","version":null,"deprecated":null,"openapi":"/openapi.json webhook orderUpdated","href":"/api-reference/webhooks/order_updated"},{"title":"Swap updated","version":null,"deprecated":null,"openapi":"/openapi.json webhook swapUpdated","href":"/api-reference/webhooks/swap_updated"},{"title":"Customer updated","version":null,"deprecated":null,"openapi":"/openapi.json webhook customerUpdated","href":"/api-reference/webhooks/customer_updated"},{"title":"Bank account updated","version":null,"deprecated":null,"openapi":"/openapi.json webhook bankAccountUpdated","href":"/api-reference/webhooks/bank_account_updated"},{"title":"Kyc updated","version":null,"deprecated":null,"openapi":"/openapi.json webhook kycUpdated","href":"/api-reference/webhooks/kyc_updated"},{"title":"Kyb updated","version":null,"deprecated":null,"openapi":"/openapi.json webhook kybUpdated","href":"/api-reference/webhooks/kyb_updated"}]},{"group":"Organizations","icon":"building","pages":[{"title":"Verify API key","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp","href":"/api-reference/organizations/verify-api-key"},{"title":"Get organization","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/me","href":"/api-reference/organizations/get-organization"},{"title":"Create child org","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/organization","href":"/api-reference/organizations/create-child-org"},{"title":"Add organization member","deprecated":null,"version":null,"openapi":"/openapi.json post /ramp/organization/{id}/member","href":"/api-reference/organizations/add-organization-member"},{"title":"List organization members","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/organization/{id}/member","href":"/api-reference/organizations/list-organization-members"},{"title":"Remove organization member","deprecated":null,"version":null,"openapi":"/openapi.json delete /ramp/organization/{id}/member/{customer_id}","href":"/api-reference/organizations/remove-organization-member"},{"title":"Revoke organization invite","deprecated":null,"version":null,"openapi":"/openapi.json delete /ramp/organization/{id}/member/invite/{email}","href":"/api-reference/organizations/revoke-organization-invite"},{"title":"Get KYB status","deprecated":null,"version":null,"openapi":"/openapi.json get /ramp/organization/{id}/kyb/status","href":"/api-reference/organizations/get-kyb-status"},{"title":"Rename organization","deprecated":null,"version":null,"openapi":"/openapi.json put /ramp/organization/{org_id}/name","href":"/api-reference/organizations/rename-organization"},{"title":"Set partner fee","deprecated":null,"version":null,"openapi":"/openapi.json put /ramp/partner-fee","href":"/api-reference/organizations/set-partner-fee"}]},{"group":"Sandbox API","icon":"flask","pages":[{"title":"Simulate Fiat Received","api":"POST https://api.sand.etherfuse.com/ramp/order/fiat_received","href":"/sandbox-api/fiat-received"}]},{"group":"Deprecated","icon":"ban","pages":[{"title":"Generate onboarding URL","deprecated":true,"version":null,"openapi":"/openapi.json post /ramp/onboarding-url","href":"/api-reference/deprecated/generate-onboarding-url"},{"title":"Get onboarding bank accounts","description":"Resolves the customer from a valid presigned onboarding URL and returns\ntheir bank accounts. Public — no API key required.","deprecated":true,"version":null,"openapi":"/openapi.json post /ramp/onboarding/bank-accounts","href":"/api-reference/deprecated/get-onboarding-bank-accounts"},{"title":"Submit KYC","deprecated":true,"version":null,"openapi":"/openapi.json post /ramp/customer/{customer_id}/kyc","href":"/api-reference/deprecated/submit-kyc"},{"title":"Upload KYC docs","description":"**Deprecated.** New integrations use [Upload verification documents](/api-reference/kyc/upload-verification-documents), which takes real file parts instead of base64 JSON and applies them to the customer's verification profile. See [KYC API](/guides/kyc-api).\n\nUpload identity documents (government ID, selfie) for a customer.\n\n**Document requirements:**\n- Formats: JPEG, PNG\n- Max size: 10 MB total per request (the whole body, across all images), not per image\n- Required documents: `id_front`, `id_back` (if applicable), `selfie`\n- Encoding: Base64\n\nUse the `documentType` field: `document` for government ID images (front and back),\n`selfie` for the selfie verification photo.\n\nSubmitted documents are reviewed by Etherfuse admins before approval; you'll receive a\n`kyc_updated` webhook when the status changes.\n\n**Sandbox auto-approval:** in sandbox, a `personal` customer auto-approves once all\nagreements have been signed, with no manual review. Uploading documents is a required step in\nthe programmatic flow, but does not by itself approve the customer; approval lands after\nagreement signing, at which point a `kyc_updated` webhook fires. This is sandbox-only; production\nstill requires manual review.\n\n**Authentication:** use your partner API key. This is a server-side call and cannot be made from a browser.\n\n**documentType** is `document` or `selfie` only. There is no `proof_of_address` type: the customer's address comes from the identity submitted to `POST /ramp/customer/{customer_id}/kyc`, not from a document. Send `document` and `selfie` as separate requests; multiple images of the same type can share one request. Re-submitting a documentType appends new images and does not overwrite a prior upload.\n\n**Image handling:** Etherfuse forwards your image bytes to the identity-verification provider as-is. Stripping EXIF or re-encoding is accepted on our side, but the provider's OCR, face-match, and liveness checks run on those exact bytes, so lossy re-encoding or dropping EXIF orientation can degrade results. Forward originals when you can; if you must scrub metadata, do it losslessly and preserve orientation.","deprecated":true,"version":null,"openapi":"/openapi.json post /ramp/customer/{customer_id}/kyc/documents","href":"/api-reference/deprecated/upload-kyc-docs"},{"title":"Get KYB progress","deprecated":true,"version":null,"openapi":"/openapi.json get /ramp/organization/{id}/kyb/progress","href":"/api-reference/deprecated/get-kyb-progress"}]}]},{"group":"Lookup API","icon":"magnifying-glass","pages":[{"title":"List exchange rates","deprecated":null,"version":null,"openapi":"/openapi.json get /lookup/exchange_rate","href":"/api-reference/lookup/list-exchange-rates"},{"title":"Get exchange rate","deprecated":null,"version":null,"openapi":"/openapi.json get /lookup/exchange_rate/usd_to_{currency}","href":"/api-reference/lookup/get-exchange-rate"},{"title":"List stablebonds","deprecated":null,"version":null,"openapi":"/openapi.json get /lookup/stablebonds","href":"/api-reference/lookup/list-stablebonds"},{"title":"Get stablebond","deprecated":null,"version":null,"openapi":"/openapi.json get /lookup/stablebond/{identifier}","href":"/api-reference/lookup/get-stablebond"},{"title":"List token costs","deprecated":null,"version":null,"openapi":"/openapi.json get /lookup/tokens/cost","href":"/api-reference/lookup/list-token-costs"},{"title":"Get token cost","deprecated":null,"version":null,"openapi":"/openapi.json get /lookup/tokens/cost/{identifier}","href":"/api-reference/lookup/get-token-cost"},{"title":"List stablebond costs","deprecated":true,"version":null,"openapi":"/openapi.json get /lookup/bonds/cost","href":"/api-reference/lookup/list-stablebond-costs"},{"title":"Get stablebond cost","deprecated":true,"version":null,"openapi":"/openapi.json get /lookup/bonds/cost/{identifier}","href":"/api-reference/lookup/get-stablebond-cost"},{"title":"List country codes","deprecated":null,"version":null,"openapi":"/openapi.json get /lookup/country-codes","href":"/api-reference/lookup/list-country-codes"},{"title":"List restricted countries","deprecated":null,"version":null,"openapi":"/openapi.json get /lookup/restricted-countries","href":"/api-reference/lookup/list-restricted-countries"}]}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]}]},"title":"Submit KYC - Etherfuse API","buildId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","deploymentId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DmVyH30O.js","utils-BHQqGGOd.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-CD-E4BIt.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Bp5Lq9Ds.js","snippetPresets-C4xAVCFP.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CgXVLxUC.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BF8I5oUf.js","shallow-Byd0lWnC.js","getApiPlaygroundDisplay-BGOZG1OK.js","CodeSnippet-CpvQL0CY.js","CodeSnippets-B8wkBKXa.js","Page-CBCH2P7b.js","getPastedJson-Ry3scI3Y.js","icon-D7a9HcdD.js","MethodPill-CJ8pmHhz.js","DuplicateIcon-rh1HJF0t.js","createIcon-DvGznqYs.js","DynamicMarkdown-Cc6AuSHS.js","SectionHeading-B4A0S-ep.js","axios-vUo_bRtp.js","Markdown-Cc16CX65.js","clsx-Cs6nMGht.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-zbf22OZA.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-C_fs-y5n.js"]}