Create an escrow draft and return the payer’s approval that funds it. The payer signs it on its own wallet: a developer key cannot, and a payer that owns its wallet is refused with account_not_controlled until it can approve in the HEVN sign-in window. No on-chain action is submitted until it is signed.
Your own key for this write, ^[A-Za-z0-9._:-]{1,128}$. A retry with the same key replays the first answer; the same key with a different request is refused.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"HEVN","description":"HEVN documentation: the whitelabel REST API for linking and operating your customers' own accounts, remote transfers for paying from your own account with a capped key, and how the non-custodial platform underneath works.","colors":{"primary":"#256FAD","light":"#3C8DCE","dark":"#1B527F"},"logo":{"light":"https://mintcdn.com/hevninc/to0nUVRkO9X57VRK/logo/light.svg?fit=max\u0026auto=format\u0026n=to0nUVRkO9X57VRK\u0026q=85\u0026s=0d24037b3480e3fd22fdbc2ea7c2a1bf","dark":"https://mintcdn.com/hevninc/to0nUVRkO9X57VRK/logo/dark.svg?fit=max\u0026auto=format\u0026n=to0nUVRkO9X57VRK\u0026q=85\u0026s=ae6bd68499f79b907f010902b41a52e8"},"favicon":"https://mintcdn.com/hevninc/BoTZRcp0gyv2H79f/favicon.png?fit=max\u0026auto=format\u0026n=BoTZRcp0gyv2H79f\u0026q=85\u0026s=0d529d33047e81a45ef91637a41645b1","api":{"playground":{"display":"interactive"},"examples":{"defaults":"required","languages":["curl","python","javascript"]}},"navbar":{"links":[{"href":"https://calendly.com/hevn/hevn","label":"Book a call"}],"primary":{"type":"button","label":"Open app","href":"https://app.gethevn.com"}},"icons":{"library":"lucide"},"markdown":{"instructions":["HEVN accounts are non-custodial in both products. Self-serve (the General tab): the person who owns the email holds the only key and signs for themselves. Whitelabel (the Whitelabel and REST API tabs): the integrator's customer creates and owns their account through Sign in with HEVN, a HEVN-hosted popup on the integrator's site; the integrator's backend holds a developer key, operates linked accounts and books their payouts, and the account holder approves every payout in that popup. The developer key signs only for the integrator's own wallet; it never signs a client's money.","Use HEVN's terms exactly. A rail is a bank route a client can request. A virtual account (bnk_) is an opened rail. Account details are what a payer needs in order to wire money, and arrive in a field named requisites. A client is a customer's own account linked to the integrator through Sign in with HEVN (POST /dapi/v1/connect/sessions, then POST /dapi/v1/clients/link); there is no API call that creates one. The business behind it is the integrator's customer. A contact is a saved destination; a beneficiary is the party at the far end of a fiat payout. Every departure of money is a payout, to a bank account or to a wallet alike.","Never name a banking partner. Say 'a licensed banking partner'.","There are no published fee rates, spreads or minimums. Prices come from a quote on a specific payment; direct pricing questions to HEVN rather than inventing numbers.","The whitelabel API is at /dapi/v1 and takes a developer-key session plus an X-Hevn-Account header. Developer keys have an IP allowlist and no scopes. Remote transfers are at /api/v1/remote_spend_limit and take a remote transfer key (rsl_) in X-Api-Key, bounded by an onchain spend permission the account holder grants. They are different credentials and neither works on the other surface. The HEVN CLI is discontinued."]},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"hevninc","hasAudioNarration":false,"actualSubdomain":"hevninc","customDomains":[],"gitSource":{"type":"github","owner":"hevn-inc","repo":"docs","deployBranch":"main","isPrivate":false,"contentDirectory":"","mountPath":"","label":""},"feedback":{"thumbs":true,"edits":true,"agentFeedback":true,"issues":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"}},"buildId":"6af5f1ed510572438570ff24","clientVersion":"0.0.4111","searchFilterCounts":[{"language":"default","tag":"REST API","count":51},{"language":"default","tag":"Whitelabel","count":29},{"language":"default","tag":"General","count":10},{"language":"default","tag":"Escrow","count":8},{"language":"default","tag":"Reference","count":7},{"language":"default","tag":"Clients","count":6},{"language":"default","tag":"Contacts","count":6},{"language":"default","tag":"Core concepts","count":5},{"language":"default","tag":"Verification","count":5},{"language":"default","tag":"Overview","count":4}],"searchSettings":{"showContentSnippets":true}},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/escrow/open-an-escrow-and-return-the-payers-approval","slug":"/api-reference/escrow/open-an-escrow-and-return-the-payers-approval","pageMetadata":{"title":"Open an escrow and return the payer's approval","description":"Create an escrow draft and return the payer's approval that funds it. The payer signs it on its own wallet: a developer key cannot, and a payer that owns its wallet is refused with `account_not_controlled` until it can approve in the HEVN sign-in window. No on-chain action is submitted until it is signed.","deprecated":null,"version":null,"openapi":"/openapi.json post /escrow","href":"/api-reference/escrow/open-an-escrow-and-return-the-payers-approval","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: [\"Create an escrow draft and return the payer’s approval that funds it. The payer signs it on its own wallet: a developer key cannot, and a payer that owns its wallet is refused with \", _jsx(_components.code, {\n children: \"account_not_controlled\"\n }), \" until it can approve in the HEVN sign-in window. No on-chain action is submitted until it is signed.\"]\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":"Open an escrow and return the payer's approval","description":"Create an escrow draft and return the payer's approval that funds it. The payer signs it on its own wallet: a developer key cannot, and a payer that owns its wallet is refused with `account_not_controlled` until it can approve in the HEVN sign-in window. No on-chain action is submitted until it is signed.","deprecated":null,"version":null,"openapi":"/openapi.json post /escrow","href":"/api-reference/escrow/open-an-escrow-and-return-the-payers-approval","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["escrow"],"summary":"Open an escrow and return the payer's approval","description":"Create an escrow draft and return the payer's approval that funds it. The payer signs it on its own wallet: a developer key cannot, and a payer that owns its wallet is refused with `account_not_controlled` until it can approve in the HEVN sign-in window. No on-chain action is submitted until it is signed.","operationId":"create_escrow_escrow_post","security":["4591c116-cc54-4ea3-8280-dd71969125ba"],"parameters":["b1ba47d1-f73d-4e8b-8ece-dfe7be2dec9b","28f12d63-a631-4f48-a242-b5aa372a2e7a"],"requestBody":"c654a511-21dd-4e86-9204-01634d485e5c","responses":{"200":"dfc7f6b9-aff6-44a8-aecd-fda207a83c13","201":"1efd7e27-1b0d-465b-aadf-b93a62a27f95","422":"ad7615bf-bde3-4f22-aa60-0bc4cfaa83df"},"method":"post","type":"path","servers":[],"path":"/escrow","baseUrlOptions":[],"title":"Open an escrow and return the payer's approval","codeSamples":[],"requestExampleLanguages":["bash","python","javascript"],"requiredOnlyExamples":true,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"b1ba47d1-f73d-4e8b-8ece-dfe7be2dec9b":{"name":"X-Hevn-Account","in":"header","required":false,"schema":{"oneOf":[{"type":"string","title":"X-Hevn-Account","description":"The client account to act for, as a `cl_…` id. Omit it to act as yourself.","example":"cl_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41","uniqueKey":"oneOf.0","typeLabel":"string"},{"type":"null","title":"X-Hevn-Account","description":"The client account to act for, as a `cl_…` id. Omit it to act as yourself.","example":"cl_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41","uniqueKey":"oneOf.1","typeLabel":"null"}],"isRequired":false,"uniqueKey":"","typeLabel":"string | null"},"description":"The client account to act for, as a `cl_…` id. Omit it to act as yourself."},"28f12d63-a631-4f48-a242-b5aa372a2e7a":{"name":"Idempotency-Key","in":"header","required":false,"schema":{"oneOf":[{"type":"string","title":"Idempotency-Key","description":"Your own key for this write, `^[A-Za-z0-9._:-]{1,128}$`. A retry with the same key replays the first answer; the same key with a different request is refused.","example":"po-inv-2026-114","uniqueKey":"oneOf.0","typeLabel":"string"},{"type":"null","title":"Idempotency-Key","description":"Your own key for this write, `^[A-Za-z0-9._:-]{1,128}$`. A retry with the same key replays the first answer; the same key with a different request is refused.","example":"po-inv-2026-114","uniqueKey":"oneOf.1","typeLabel":"null"}],"isRequired":false,"uniqueKey":"","typeLabel":"string | null"},"description":"Your own key for this write, `^[A-Za-z0-9._:-]{1,128}$`. A retry with the same key replays the first answer; the same key with a different request is refused."}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"senderClientId":{"type":"string","pattern":"^(?:cl_)?[A-Za-z0-9._:\\-]{1,216}$","title":"Senderclientid","description":"Account funding the escrow.","examples":["cl_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41"],"isRequired":true,"uniqueKey":"senderClientId","typeLabel":"string"},"receiverClientId":{"type":"string","pattern":"^(?:cl_)?[A-Za-z0-9._:\\-]{1,216}$","title":"Receiverclientid","description":"Account entitled to receive captured funds.","examples":["cl_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41"],"isRequired":true,"uniqueKey":"receiverClientId","typeLabel":"string"},"token":{"type":"string","maxLength":16,"minLength":1,"title":"Token","description":"Digital asset held in escrow.","examples":["USDC"],"isRequired":true,"uniqueKey":"token","typeLabel":"string"},"maxAmount":{"type":"string","title":"Maxamount","description":"Maximum token amount that may be authorized.","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","example":"500.00","isRequired":true,"uniqueKey":"maxAmount","typeLabel":"string"},"approveWithin":{"type":"string","pattern":"^\\d{1,4}[smhd]$","title":"Approvewithin","description":"Time allowed for the sender to approve funding.","default":"1h","examples":["14d"],"uniqueKey":"approveWithin","typeLabel":"string"},"holdFor":{"type":"string","pattern":"^\\d{1,4}[smhd]$","title":"Holdfor","description":"Time captured funds remain held after approval.","default":"14d","examples":["14d"],"uniqueKey":"holdFor","typeLabel":"string"},"refundableFor":{"type":"string","pattern":"^\\d{1,4}[smhd]$","title":"Refundablefor","description":"Time during which a refund remains available.","default":"90d","examples":["14d"],"uniqueKey":"refundableFor","typeLabel":"string"},"feeBps":{"type":"integer","maximum":10000,"minimum":0,"title":"Feebps","description":"Variable fee in basis points; 100 basis points equals 1 percent.","default":0,"uniqueKey":"feeBps","typeLabel":"integer"},"reference":{"additionalProperties":true,"type":"object","title":"Reference","description":"Caller reference stored with the escrow.","uniqueKey":"reference","typeLabel":"Reference · object"},"description":{"oneOf":[{"type":"string","title":"Description","description":"Off-chain escrow description.","maxLength":2000,"uniqueKey":"description.oneOf.0","typeLabel":"string"},{"type":"null","title":"Description","description":"Off-chain escrow description.","uniqueKey":"description.oneOf.1","typeLabel":"null"}],"uniqueKey":"description","typeLabel":"string | null"},"completionConditions":{"oneOf":[{"type":"string","title":"Completionconditions","description":"Off-chain conditions reviewed before capture.","maxLength":10000,"uniqueKey":"completionConditions.oneOf.0","typeLabel":"string"},{"type":"null","title":"Completionconditions","description":"Off-chain conditions reviewed before capture.","uniqueKey":"completionConditions.oneOf.1","typeLabel":"null"}],"uniqueKey":"completionConditions","typeLabel":"string | null"}},"additionalProperties":false,"type":"object","required":["senderClientId","receiverClientId","token","maxAmount"],"title":"EscrowCreateRequest","uniqueKey":"","typeLabel":"EscrowCreateRequest · object"},"examples":{"Example":{"title":"Example","value":{"senderClientId":"cl_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41","receiverClientId":"cl_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41","token":"USDC","maxAmount":"500.00","approveWithin":"14d","holdFor":"14d","refundableFor":"14d","feeBps":0,"reference":{},"description":"\u003cstring>","completionConditions":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"dfc7f6b9-aff6-44a8-aecd-fda207a83c13":{"content":{"application/json":{"schema":{"properties":{"id":{"type":"string","title":"Id","description":"Stable public identifier for this escrow.","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"status":{"type":"string","enum":["draft","authorized","charged","partiallyCaptured","captured","voided","reclaimed","partiallyRefunded","refunded"],"title":"PlatformEscrowStatus","description":"Current public lifecycle status of the escrow.","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"availableActions":{"items":{"type":"string","enum":["approve","authorize","charge","capture","reject","void","reclaim","refund"],"title":"EscrowAction","uniqueKey":"availableActions.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","title":"Availableactions","description":"Actions permitted by current state and deadlines.","isRequired":true,"uniqueKey":"availableActions","typeLabel":"enum\u003cstring>[]"},"sender":{"properties":{"clientId":{"type":"string","title":"Clientid","description":"Account represented by this escrow party.","isRequired":true,"uniqueKey":"sender.clientId","typeLabel":"string"}},"type":"object","required":["clientId"],"title":"EscrowPartyView","description":"Account sending or authorizing escrow funds.","isRequired":true,"uniqueKey":"sender","typeLabel":"EscrowPartyView · object"},"receiver":{"properties":{"clientId":{"type":"string","title":"Clientid","description":"Account represented by this escrow party.","isRequired":true,"uniqueKey":"receiver.clientId","typeLabel":"string"}},"type":"object","required":["clientId"],"title":"EscrowPartyView","description":"Account entitled to captured escrow funds.","isRequired":true,"uniqueKey":"receiver","typeLabel":"EscrowPartyView · object"},"onchainEscrowUrl":{"type":"string","title":"Onchainescrowurl","description":"Block explorer URL for the shared escrow contract.","isRequired":true,"uniqueKey":"onchainEscrowUrl","typeLabel":"string"},"token":{"type":"string","title":"Token","description":"Digital asset held in escrow.","isRequired":true,"uniqueKey":"token","typeLabel":"string"},"maxAmount":{"type":"string","title":"Maxamount","description":"Maximum token amount that may be authorized.","example":"500.00","isRequired":true,"uniqueKey":"maxAmount","typeLabel":"string"},"authorizedAmount":{"type":"string","title":"Authorizedamount","description":"Token amount currently authorized for capture.","example":"500.00","isRequired":true,"uniqueKey":"authorizedAmount","typeLabel":"string"},"capturableAmount":{"type":"string","title":"Capturableamount","description":"Token amount that may currently be captured.","example":"500.00","isRequired":true,"uniqueKey":"capturableAmount","typeLabel":"string"},"refundableAmount":{"type":"string","title":"Refundableamount","description":"Token amount that may currently be refunded.","example":"500.00","isRequired":true,"uniqueKey":"refundableAmount","typeLabel":"string"},"windows":{"properties":{"approveBy":{"type":"string","format":"date-time","title":"Approveby","description":"UTC deadline for escrow approval.","isRequired":true,"uniqueKey":"windows.approveBy","typeLabel":"string\u003cdate-time>"},"holdUntil":{"type":"string","format":"date-time","title":"Holduntil","description":"UTC timestamp until which captured funds remain held.","isRequired":true,"uniqueKey":"windows.holdUntil","typeLabel":"string\u003cdate-time>"},"refundableUntil":{"type":"string","format":"date-time","title":"Refundableuntil","description":"UTC deadline for a refund.","isRequired":true,"uniqueKey":"windows.refundableUntil","typeLabel":"string\u003cdate-time>"}},"type":"object","required":["approveBy","holdUntil","refundableUntil"],"title":"EscrowWindowsView","description":"Approval, holding and refund deadlines.","isRequired":true,"uniqueKey":"windows","typeLabel":"EscrowWindowsView · object"},"createdAt":{"type":"string","format":"date-time","title":"Createdat","description":"UTC timestamp when the escrow was created.","isRequired":true,"uniqueKey":"createdAt","typeLabel":"string\u003cdate-time>"},"updatedAt":{"type":"string","format":"date-time","title":"Updatedat","description":"UTC timestamp when the escrow was last updated.","isRequired":true,"uniqueKey":"updatedAt","typeLabel":"string\u003cdate-time>"},"description":{"oneOf":[{"type":"string","title":"Description","description":"Off-chain escrow description.","uniqueKey":"description.oneOf.0","typeLabel":"string"},{"type":"null","title":"Description","description":"Off-chain escrow description.","uniqueKey":"description.oneOf.1","typeLabel":"null"}],"uniqueKey":"description","typeLabel":"string | null"},"completionConditions":{"oneOf":[{"type":"string","title":"Completionconditions","description":"Off-chain conditions reviewed before capture.","uniqueKey":"completionConditions.oneOf.0","typeLabel":"string"},{"type":"null","title":"Completionconditions","description":"Off-chain conditions reviewed before capture.","uniqueKey":"completionConditions.oneOf.1","typeLabel":"null"}],"uniqueKey":"completionConditions","typeLabel":"string | null"},"action":{"oneOf":[{"type":"object","title":"EscrowActionView","description":"Latest prepared or submitted escrow action.","required":["action","idempotencyKey","status"],"properties":{"action":{"type":"string","enum":["approve","authorize","charge","capture","reject","void","reclaim","refund"],"title":"EscrowAction","description":"Escrow action represented by this resource.","isRequired":true,"uniqueKey":"action.oneOf.0.action","typeLabel":"enum\u003cstring>"},"idempotencyKey":{"type":"string","title":"Idempotencykey","description":"Key that binds retries to the prepared action.","isRequired":true,"uniqueKey":"action.oneOf.0.idempotencyKey","typeLabel":"string"},"status":{"type":"string","enum":["awaitingSignature","signing","submitted","confirmed","reverted","failed","superseded","dropped"],"title":"PlatformEscrowActionStatus","description":"Current public lifecycle status of the action.","isRequired":true,"uniqueKey":"action.oneOf.0.status","typeLabel":"enum\u003cstring>"},"amount":{"oneOf":[{"type":"string","title":"Amount","description":"Token amount affected by the action.","example":"500.00","uniqueKey":"action.oneOf.0.amount.oneOf.0","typeLabel":"string"},{"type":"null","title":"Amount","description":"Token amount affected by the action.","uniqueKey":"action.oneOf.0.amount.oneOf.1","typeLabel":"null"}],"uniqueKey":"action.oneOf.0.amount","typeLabel":"string | null"},"feeBps":{"oneOf":[{"type":"integer","title":"Feebps","description":"Variable fee in basis points, when charged.","uniqueKey":"action.oneOf.0.feeBps.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Feebps","description":"Variable fee in basis points, when charged.","uniqueKey":"action.oneOf.0.feeBps.oneOf.1","typeLabel":"null"}],"uniqueKey":"action.oneOf.0.feeBps","typeLabel":"integer | null"},"transactionHash":{"oneOf":[{"type":"string","title":"Transactionhash","description":"On-chain transaction hash, when broadcast.","uniqueKey":"action.oneOf.0.transactionHash.oneOf.0","typeLabel":"string"},{"type":"null","title":"Transactionhash","description":"On-chain transaction hash, when broadcast.","uniqueKey":"action.oneOf.0.transactionHash.oneOf.1","typeLabel":"null"}],"uniqueKey":"action.oneOf.0.transactionHash","typeLabel":"string | null"},"approval":{"oneOf":[{"type":"object","title":"EscrowApprovalView","description":"Authorization to sign before execution.","required":["id","payload","expiresAt"],"properties":{"id":{"type":"string","format":"uuid","title":"Id","description":"Single-use approval identifier.","isRequired":true,"uniqueKey":"action.oneOf.0.approval.oneOf.0.id","typeLabel":"string\u003cuuid>"},"payload":{"type":"string","title":"Payload","description":"Base64 canonical authorization payload to sign with the developer key.","isRequired":true,"uniqueKey":"action.oneOf.0.approval.oneOf.0.payload","typeLabel":"string"},"expiresAt":{"type":"string","format":"date-time","title":"Expiresat","description":"UTC timestamp after which this approval is refused.","isRequired":true,"uniqueKey":"action.oneOf.0.approval.oneOf.0.expiresAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"action.oneOf.0.approval.oneOf.0","typeLabel":"EscrowApprovalView · object"},{"type":"null","description":"Authorization to sign before execution.","uniqueKey":"action.oneOf.0.approval.oneOf.1","typeLabel":"null"}],"uniqueKey":"action.oneOf.0.approval","typeLabel":"EscrowApprovalView · object | null"}},"uniqueKey":"action.oneOf.0","typeLabel":"EscrowActionView · object"},{"type":"null","description":"Latest prepared or submitted escrow action.","uniqueKey":"action.oneOf.1","typeLabel":"null"}],"uniqueKey":"action","typeLabel":"EscrowActionView · object | null"},"consistent":{"oneOf":[{"type":"boolean","title":"Consistent","description":"Whether persisted state matches the latest chain state.","uniqueKey":"consistent.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Consistent","description":"Whether persisted state matches the latest chain state.","uniqueKey":"consistent.oneOf.1","typeLabel":"null"}],"uniqueKey":"consistent","typeLabel":"boolean | null"}},"type":"object","required":["id","status","availableActions","sender","receiver","onchainEscrowUrl","token","maxAmount","authorizedAmount","capturableAmount","refundableAmount","windows","createdAt","updatedAt"],"title":"EscrowView","uniqueKey":"","typeLabel":"EscrowView · object"},"examples":{"Example":{"title":"Example","value":{"id":"\u003cstring>","status":"draft","availableActions":["approve"],"sender":{"clientId":"\u003cstring>"},"receiver":{"clientId":"\u003cstring>"},"onchainEscrowUrl":"\u003cstring>","token":"\u003cstring>","maxAmount":"500.00","authorizedAmount":"500.00","capturableAmount":"500.00","refundableAmount":"500.00","windows":{"approveBy":"2023-11-07T05:31:56Z","holdUntil":"2023-11-07T05:31:56Z","refundableUntil":"2023-11-07T05:31:56Z"},"createdAt":"2023-11-07T05:31:56Z","updatedAt":"2023-11-07T05:31:56Z","description":"\u003cstring>","completionConditions":"\u003cstring>","action":{"action":"approve","idempotencyKey":"\u003cstring>","status":"awaitingSignature","amount":"500.00","feeBps":123,"transactionHash":"\u003cstring>","approval":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","payload":"\u003cstring>","expiresAt":"2023-11-07T05:31:56Z"}},"consistent":true}}},"exampleType":"generated"}},"description":"OK","exampleType":"generated"},"1efd7e27-1b0d-465b-aadf-b93a62a27f95":{"description":"Successful Response","content":{"application/json":{"schema":{"properties":{"id":{"type":"string","title":"Id","description":"Stable public identifier for this escrow.","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"status":{"type":"string","enum":["draft","authorized","charged","partiallyCaptured","captured","voided","reclaimed","partiallyRefunded","refunded"],"title":"PlatformEscrowStatus","description":"Current public lifecycle status of the escrow.","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"availableActions":{"items":{"type":"string","enum":["approve","authorize","charge","capture","reject","void","reclaim","refund"],"title":"EscrowAction","uniqueKey":"availableActions.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","title":"Availableactions","description":"Actions permitted by current state and deadlines.","isRequired":true,"uniqueKey":"availableActions","typeLabel":"enum\u003cstring>[]"},"sender":{"properties":{"clientId":{"type":"string","title":"Clientid","description":"Account represented by this escrow party.","isRequired":true,"uniqueKey":"sender.clientId","typeLabel":"string"}},"type":"object","required":["clientId"],"title":"EscrowPartyView","description":"Account sending or authorizing escrow funds.","isRequired":true,"uniqueKey":"sender","typeLabel":"EscrowPartyView · object"},"receiver":{"properties":{"clientId":{"type":"string","title":"Clientid","description":"Account represented by this escrow party.","isRequired":true,"uniqueKey":"receiver.clientId","typeLabel":"string"}},"type":"object","required":["clientId"],"title":"EscrowPartyView","description":"Account entitled to captured escrow funds.","isRequired":true,"uniqueKey":"receiver","typeLabel":"EscrowPartyView · object"},"onchainEscrowUrl":{"type":"string","title":"Onchainescrowurl","description":"Block explorer URL for the shared escrow contract.","isRequired":true,"uniqueKey":"onchainEscrowUrl","typeLabel":"string"},"token":{"type":"string","title":"Token","description":"Digital asset held in escrow.","isRequired":true,"uniqueKey":"token","typeLabel":"string"},"maxAmount":{"type":"string","title":"Maxamount","description":"Maximum token amount that may be authorized.","example":"500.00","isRequired":true,"uniqueKey":"maxAmount","typeLabel":"string"},"authorizedAmount":{"type":"string","title":"Authorizedamount","description":"Token amount currently authorized for capture.","example":"500.00","isRequired":true,"uniqueKey":"authorizedAmount","typeLabel":"string"},"capturableAmount":{"type":"string","title":"Capturableamount","description":"Token amount that may currently be captured.","example":"500.00","isRequired":true,"uniqueKey":"capturableAmount","typeLabel":"string"},"refundableAmount":{"type":"string","title":"Refundableamount","description":"Token amount that may currently be refunded.","example":"500.00","isRequired":true,"uniqueKey":"refundableAmount","typeLabel":"string"},"windows":{"properties":{"approveBy":{"type":"string","format":"date-time","title":"Approveby","description":"UTC deadline for escrow approval.","isRequired":true,"uniqueKey":"windows.approveBy","typeLabel":"string\u003cdate-time>"},"holdUntil":{"type":"string","format":"date-time","title":"Holduntil","description":"UTC timestamp until which captured funds remain held.","isRequired":true,"uniqueKey":"windows.holdUntil","typeLabel":"string\u003cdate-time>"},"refundableUntil":{"type":"string","format":"date-time","title":"Refundableuntil","description":"UTC deadline for a refund.","isRequired":true,"uniqueKey":"windows.refundableUntil","typeLabel":"string\u003cdate-time>"}},"type":"object","required":["approveBy","holdUntil","refundableUntil"],"title":"EscrowWindowsView","description":"Approval, holding and refund deadlines.","isRequired":true,"uniqueKey":"windows","typeLabel":"EscrowWindowsView · object"},"createdAt":{"type":"string","format":"date-time","title":"Createdat","description":"UTC timestamp when the escrow was created.","isRequired":true,"uniqueKey":"createdAt","typeLabel":"string\u003cdate-time>"},"updatedAt":{"type":"string","format":"date-time","title":"Updatedat","description":"UTC timestamp when the escrow was last updated.","isRequired":true,"uniqueKey":"updatedAt","typeLabel":"string\u003cdate-time>"},"description":{"oneOf":[{"type":"string","title":"Description","description":"Off-chain escrow description.","uniqueKey":"description.oneOf.0","typeLabel":"string"},{"type":"null","title":"Description","description":"Off-chain escrow description.","uniqueKey":"description.oneOf.1","typeLabel":"null"}],"uniqueKey":"description","typeLabel":"string | null"},"completionConditions":{"oneOf":[{"type":"string","title":"Completionconditions","description":"Off-chain conditions reviewed before capture.","uniqueKey":"completionConditions.oneOf.0","typeLabel":"string"},{"type":"null","title":"Completionconditions","description":"Off-chain conditions reviewed before capture.","uniqueKey":"completionConditions.oneOf.1","typeLabel":"null"}],"uniqueKey":"completionConditions","typeLabel":"string | null"},"action":{"oneOf":[{"type":"object","title":"EscrowActionView","description":"Latest prepared or submitted escrow action.","required":["action","idempotencyKey","status"],"properties":{"action":{"type":"string","enum":["approve","authorize","charge","capture","reject","void","reclaim","refund"],"title":"EscrowAction","description":"Escrow action represented by this resource.","isRequired":true,"uniqueKey":"action.oneOf.0.action","typeLabel":"enum\u003cstring>"},"idempotencyKey":{"type":"string","title":"Idempotencykey","description":"Key that binds retries to the prepared action.","isRequired":true,"uniqueKey":"action.oneOf.0.idempotencyKey","typeLabel":"string"},"status":{"type":"string","enum":["awaitingSignature","signing","submitted","confirmed","reverted","failed","superseded","dropped"],"title":"PlatformEscrowActionStatus","description":"Current public lifecycle status of the action.","isRequired":true,"uniqueKey":"action.oneOf.0.status","typeLabel":"enum\u003cstring>"},"amount":{"oneOf":[{"type":"string","title":"Amount","description":"Token amount affected by the action.","example":"500.00","uniqueKey":"action.oneOf.0.amount.oneOf.0","typeLabel":"string"},{"type":"null","title":"Amount","description":"Token amount affected by the action.","uniqueKey":"action.oneOf.0.amount.oneOf.1","typeLabel":"null"}],"uniqueKey":"action.oneOf.0.amount","typeLabel":"string | null"},"feeBps":{"oneOf":[{"type":"integer","title":"Feebps","description":"Variable fee in basis points, when charged.","uniqueKey":"action.oneOf.0.feeBps.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Feebps","description":"Variable fee in basis points, when charged.","uniqueKey":"action.oneOf.0.feeBps.oneOf.1","typeLabel":"null"}],"uniqueKey":"action.oneOf.0.feeBps","typeLabel":"integer | null"},"transactionHash":{"oneOf":[{"type":"string","title":"Transactionhash","description":"On-chain transaction hash, when broadcast.","uniqueKey":"action.oneOf.0.transactionHash.oneOf.0","typeLabel":"string"},{"type":"null","title":"Transactionhash","description":"On-chain transaction hash, when broadcast.","uniqueKey":"action.oneOf.0.transactionHash.oneOf.1","typeLabel":"null"}],"uniqueKey":"action.oneOf.0.transactionHash","typeLabel":"string | null"},"approval":{"oneOf":[{"type":"object","title":"EscrowApprovalView","description":"Authorization to sign before execution.","required":["id","payload","expiresAt"],"properties":{"id":{"type":"string","format":"uuid","title":"Id","description":"Single-use approval identifier.","isRequired":true,"uniqueKey":"action.oneOf.0.approval.oneOf.0.id","typeLabel":"string\u003cuuid>"},"payload":{"type":"string","title":"Payload","description":"Base64 canonical authorization payload to sign with the developer key.","isRequired":true,"uniqueKey":"action.oneOf.0.approval.oneOf.0.payload","typeLabel":"string"},"expiresAt":{"type":"string","format":"date-time","title":"Expiresat","description":"UTC timestamp after which this approval is refused.","isRequired":true,"uniqueKey":"action.oneOf.0.approval.oneOf.0.expiresAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"action.oneOf.0.approval.oneOf.0","typeLabel":"EscrowApprovalView · object"},{"type":"null","description":"Authorization to sign before execution.","uniqueKey":"action.oneOf.0.approval.oneOf.1","typeLabel":"null"}],"uniqueKey":"action.oneOf.0.approval","typeLabel":"EscrowApprovalView · object | null"}},"uniqueKey":"action.oneOf.0","typeLabel":"EscrowActionView · object"},{"type":"null","description":"Latest prepared or submitted escrow action.","uniqueKey":"action.oneOf.1","typeLabel":"null"}],"uniqueKey":"action","typeLabel":"EscrowActionView · object | null"},"consistent":{"oneOf":[{"type":"boolean","title":"Consistent","description":"Whether persisted state matches the latest chain state.","uniqueKey":"consistent.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Consistent","description":"Whether persisted state matches the latest chain state.","uniqueKey":"consistent.oneOf.1","typeLabel":"null"}],"uniqueKey":"consistent","typeLabel":"boolean | null"}},"type":"object","required":["id","status","availableActions","sender","receiver","onchainEscrowUrl","token","maxAmount","authorizedAmount","capturableAmount","refundableAmount","windows","createdAt","updatedAt"],"title":"EscrowView","uniqueKey":"","typeLabel":"EscrowView · object"},"examples":{"Example":{"title":"Example","value":{"id":"\u003cstring>","status":"draft","availableActions":["approve"],"sender":{"clientId":"\u003cstring>"},"receiver":{"clientId":"\u003cstring>"},"onchainEscrowUrl":"\u003cstring>","token":"\u003cstring>","maxAmount":"500.00","authorizedAmount":"500.00","capturableAmount":"500.00","refundableAmount":"500.00","windows":{"approveBy":"2023-11-07T05:31:56Z","holdUntil":"2023-11-07T05:31:56Z","refundableUntil":"2023-11-07T05:31:56Z"},"createdAt":"2023-11-07T05:31:56Z","updatedAt":"2023-11-07T05:31:56Z","description":"\u003cstring>","completionConditions":"\u003cstring>","action":{"action":"approve","idempotencyKey":"\u003cstring>","status":"awaitingSignature","amount":"500.00","feeBps":123,"transactionHash":"\u003cstring>","approval":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","payload":"\u003cstring>","expiresAt":"2023-11-07T05:31:56Z"}},"consistent":true}}},"exampleType":"generated"}},"exampleType":"generated"},"ad7615bf-bde3-4f22-aa60-0bc4cfaa83df":{"description":"Request validation failed","content":{"application/json":{"schema":{"properties":{"error":{"properties":{"code":{"type":"string","enum":["invalid_request","validation_failed","invalid_cursor","invalid_id","idempotency_key_invalid","idempotency_key_reused","unauthenticated","token_expired","forbidden","not_found","method_not_allowed","conflict","gone","payload_too_large","rate_limited","provider_unavailable","database_unavailable","internal_error","invalid_credentials","request_expired","challenge_not_found","challenge_consumed","challenge_expired","signature_invalid","key_not_registered","signer_not_attached","wallet_not_linked","approval_consumed","approval_expired","approval_mismatch","signing_policy_refused","login_unavailable","login_mode_unavailable","developer_key_not_found","developer_key_already_exists","account_header_invalid","account_scope_conflict","account_not_found","account_forbidden","account_read_only","account_not_controlled","contact_not_found","quote_not_submitted","quote_not_fundable","funding_mode_unsupported","funding_token_unsupported","insufficient_funds","smart_wallet_not_deployed","wallet_owner_unverified","already_funded","payment_slot_consumed","funding_in_progress","funding_attempt_expired","contact_changed","user_operation_rejected","user_operation_unavailable","transfer_policy_denied","client_creation_not_enabled","client_not_found","link_code_invalid","link_code_expired","client_already_linked","redirect_uri_not_allowed","payout_not_awaiting_signature","verification_not_applicable","profile_locked","contact_not_payable","contact_chain_unsupported","contact_token_unsupported","contact_payment_details_invalid","amount_below_minimum","amount_above_maximum","amount_precision_unsupported","payout_not_found","payout_not_fundable","quote_expired","bundler_rejected","bundler_unavailable","contact_details_invalid","contact_in_use","kyb_incomplete","kyb_documents_processing","kyb_roster_conflict","kyb_subject_conflict","document_not_found","document_type_unsupported","invalid_enum_value","entity_not_found","escrow_not_found","escrow_action_not_found","escrow_not_operated_by_you","escrow_state_changed","action_in_flight","simulation_failed","stale_nonce","amount_out_of_range","amount_not_allowed","window_closed","token_not_supported","receiver_not_a_client","rail_not_found","rail_not_available","payin_not_available","payin_expired","payin_not_found","transaction_not_found","account_unavailable","account_not_supported","swap_not_found","swap_route_unavailable","swap_not_confirmable","intent_not_signable","sandbox_amount_limit_exceeded","sandbox_faucet_balance_too_high"],"title":"PlatformErrorCode","description":"Stable machine-readable error code.","isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","title":"Message","description":"Human-readable explanation safe to show to an end user.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"details":{"oneOf":[{"type":"object","title":"Details","description":"Structured context for this error, when available.","additionalProperties":true,"uniqueKey":"error.details.oneOf.0","typeLabel":"Details · object"},{"type":"null","title":"Details","description":"Structured context for this error, when available.","uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"Details · object | null"}},"type":"object","required":["code","message"],"title":"PlatformErrorBody","description":"Public error body.","isRequired":true,"uniqueKey":"error","typeLabel":"PlatformErrorBody · object"}},"type":"object","required":["error"],"title":"PlatformErrorResponse","uniqueKey":"","typeLabel":"PlatformErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"invalid_request","message":"\u003cstring>","details":{}}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"4591c116-cc54-4ea3-8280-dd71969125ba":{"HTTPBearer":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"HTTPBearer"}}},"servers":{},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"HTTPBearer"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"HTTPBearer","name":"Authorization"}],"title":"HTTPBearer"}]},"originalFileLocation":"openapi.json"},"subdomain":"hevninc","siteName":"HEVN","title":"Open an escrow and return the payer's approval - HEVN","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-12T16:48:05.696Z","originalFileLocation":"api-reference/escrow/open-an-escrow-and-return-the-payers-approval.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=\"Create an escrow draft and return the payer\u0026#x27;s approval that funds it. The payer signs it on its own wallet: a developer key cannot, and a payer that owns its wallet is refused with account_not_controlled until it can approve in the HEVN sign-in window. No on-chain action is submitted until it is signed.\">\u003cmeta data-mint-head name=\"application-name\" content=\"HEVN\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/hevninc/Mrkw47wG7Tt5G32B/_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/hevninc/Mrkw47wG7Tt5G32B/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/hevninc/Mrkw47wG7Tt5G32B/_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/hevninc/Mrkw47wG7Tt5G32B/_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/hevninc/Mrkw47wG7Tt5G32B/_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/hevninc/Mrkw47wG7Tt5G32B/_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/hevninc/Mrkw47wG7Tt5G32B/_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/hevninc/Mrkw47wG7Tt5G32B/_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/hevninc/Mrkw47wG7Tt5G32B/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Open an escrow and return the payer\u0026#x27;s approval - HEVN\">\u003cmeta data-mint-head property=\"og:description\" content=\"Create an escrow draft and return the payer\u0026#x27;s approval that funds it. The payer signs it on its own wallet: a developer key cannot, and a payer that owns its wallet is refused with account_not_controlled until it can approve in the HEVN sign-in window. No on-chain action is submitted until it is signed.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"HEVN\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://hevninc.mintlify.app/api-reference/escrow/open-an-escrow-and-return-the-payers-approval\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://hevninc.mintlify.site/_mintlify/api/og/v2?division=Escrow\u0026amp;title=Open+an+escrow+and+return+the+payer%27s+approval\u0026amp;description=Create+an+escrow+draft+and+return+the+payer%27s+approval+that+funds+it.+The+payer+signs+it+on+its+own+wallet%3A+a+developer+key+cannot%2C+and+a+payer+that+owns+its+wa\u0026amp;theme=aed7afc4fc65302f1c71cd72\u0026amp;signature=4aa1e30d08dac8932003665ff5b50861ae0f6e2fce3e96ef32d6db1b7d0c6099\">\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=\"Open an escrow and return the payer\u0026#x27;s approval - HEVN\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Create an escrow draft and return the payer\u0026#x27;s approval that funds it. The payer signs it on its own wallet: a developer key cannot, and a payer that owns its wallet is refused with account_not_controlled until it can approve in the HEVN sign-in window. No on-chain action is submitted until it is signed.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://hevninc.mintlify.site/_mintlify/api/og/v2?division=Escrow\u0026amp;title=Open+an+escrow+and+return+the+payer%27s+approval\u0026amp;description=Create+an+escrow+draft+and+return+the+payer%27s+approval+that+funds+it.+The+payer+signs+it+on+its+own+wallet%3A+a+developer+key+cannot%2C+and+a+payer+that+owns+its+wa\u0026amp;theme=aed7afc4fc65302f1c71cd72\u0026amp;signature=4aa1e30d08dac8932003665ff5b50861ae0f6e2fce3e96ef32d6db1b7d0c6099\">\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/hevninc/Mrkw47wG7Tt5G32B/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"HEVN\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#256FAD\">\u003clink data-mint-head rel=\"canonical\" href=\"https://hevninc.mintlify.app/api-reference/escrow/open-an-escrow-and-return-the-payers-approval\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/escrow/open-an-escrow-and-return-the-payers-approval.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://hevninc.mintlify.app/#organization\",\"name\":\"HEVN\",\"url\":\"https://hevninc.mintlify.app\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/hevninc/to0nUVRkO9X57VRK/logo/light.svg?fit=max\u0026auto=format\u0026n=to0nUVRkO9X57VRK\u0026q=85\u0026s=0d24037b3480e3fd22fdbc2ea7c2a1bf\"}},{\"@type\":\"WebSite\",\"@id\":\"https://hevninc.mintlify.app#website\",\"name\":\"HEVN\",\"url\":\"https://hevninc.mintlify.app\",\"publisher\":{\"@id\":\"https://hevninc.mintlify.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://hevninc.mintlify.app/api-reference/escrow/open-an-escrow-and-return-the-payers-approval#webpage\",\"url\":\"https://hevninc.mintlify.app/api-reference/escrow/open-an-escrow-and-return-the-payers-approval\",\"name\":\"Open an escrow and return the payer's approval\",\"description\":\"Create an escrow draft and return the payer's approval that funds it. The payer signs it on its own wallet: a developer key cannot, and a payer that owns its wallet is refused with account_not_controlled until it can approve in the HEVN sign-in window. No on-chain action is submitted until it is signed.\",\"dateModified\":\"2026-11-12T16:48:05.696Z\",\"isPartOf\":{\"@id\":\"https://hevninc.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://hevninc.mintlify.app/api-reference/escrow/open-an-escrow-and-return-the-payers-approval#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://hevninc.mintlify.app/api-reference/escrow/open-an-escrow-and-return-the-payers-approval#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"HEVN\",\"item\":\"https://hevninc.mintlify.app\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Open an escrow and return the payer's approval\",\"item\":\"https://hevninc.mintlify.app/api-reference/escrow/open-an-escrow-and-return-the-payers-approval\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://hevninc.mintlify.app/api-reference/escrow/open-an-escrow-and-return-the-payers-approval#apireference\",\"headline\":\"Open an escrow and return the payer's approval\",\"name\":\"Open an escrow and return the payer's approval\",\"description\":\"Create an escrow draft and return the payer's approval that funds it. The payer signs it on its own wallet: a developer key cannot, and a payer that owns its wallet is refused with account_not_controlled until it can approve in the HEVN sign-in window. No on-chain action is submitted until it is signed.\",\"url\":\"https://hevninc.mintlify.app/api-reference/escrow/open-an-escrow-and-return-the-payers-approval\",\"mainEntityOfPage\":{\"@id\":\"https://hevninc.mintlify.app/api-reference/escrow/open-an-escrow-and-return-the-payers-approval#webpage\"},\"dateModified\":\"2026-11-12T16:48:05.696Z\",\"publisher\":{\"@id\":\"https://hevninc.mintlify.app/#organization\"},\"isPartOf\":{\"@id\":\"https://hevninc.mintlify.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"HEVN\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"HEVN\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/escrow/open-an-escrow-and-return-the-payers-approval.md","siteName":"HEVN","nav":{"global":null,"tabs":[{"tab":"General","pages":[{"title":"General","href":"/general/what-is-hevn"}]},{"tab":"Remote Transfers","pages":[{"title":"Remote Transfers","href":"/remote-transfers/overview"}]},{"tab":"Whitelabel","pages":[{"title":"Whitelabel","href":"/whitelabel/overview"}]},{"tab":"REST API","groups":[{"group":"Overview","pages":[{"title":"REST API overview","href":"/api-reference/overview"},{"title":"API authentication","href":"/api-reference/authentication"}]},{"group":"Authentication","pages":[{"title":"Start a developer-key login and receive the payload to sign","deprecated":null,"version":null,"openapi":"/openapi.json post /auth/challenge","href":"/api-reference/auth/start-a-developer-key-login-and-receive-the-payload-to-sign"},{"title":"Exchange a signed login challenge for a session","deprecated":null,"version":null,"openapi":"/openapi.json post /auth/token","href":"/api-reference/auth/exchange-a-signed-login-challenge-for-a-session"},{"title":"Exchange a refresh token for a session, optionally acting for an account","deprecated":null,"version":null,"openapi":"/openapi.json post /auth/refresh","href":"/api-reference/auth/exchange-a-refresh-token-for-a-session-optionally-acting-for-an-account"}]},{"group":"Clients","pages":[{"title":"Create a sign-in window session","deprecated":null,"version":null,"openapi":"/openapi.json post /connect/sessions","href":"/api-reference/accounts/create-a-sign-in-window-session"},{"title":"Connect an existing account","deprecated":null,"version":null,"openapi":"/openapi.json post /clients/link","href":"/api-reference/accounts/connect-an-existing-account"},{"title":"List clients","deprecated":null,"version":null,"openapi":"/openapi.json get /clients","href":"/api-reference/accounts/list-clients"},{"title":"Retrieve one account","deprecated":null,"version":null,"openapi":"/openapi.json get /client","href":"/api-reference/accounts/retrieve-one-account"},{"title":"Update a client profile","deprecated":null,"version":null,"openapi":"/openapi.json patch /client","href":"/api-reference/accounts/update-a-client-profile"},{"title":"Read a client's balances","deprecated":null,"version":null,"openapi":"/openapi.json get /client/balance","href":"/api-reference/accounts/read-a-clients-balances"}]},{"group":"Verification","pages":[{"title":"Provide applicant information","deprecated":null,"version":null,"openapi":"/openapi.json put /client/kyb","href":"/api-reference/verification/provide-applicant-information"},{"title":"Retrieve the verification submission","deprecated":null,"version":null,"openapi":"/openapi.json get /client/kyb","href":"/api-reference/verification/retrieve-the-verification-submission"},{"title":"Complete the verification submission","deprecated":null,"version":null,"openapi":"/openapi.json post /client/kyb/complete","href":"/api-reference/verification/complete-the-verification-submission"},{"title":"Upload a document","deprecated":null,"version":null,"openapi":"/openapi.json post /documents","href":"/api-reference/documents/upload-a-document"},{"title":"Fill the typed fields read off a document","deprecated":null,"version":null,"openapi":"/openapi.json put /documents/{documentId}/content","href":"/api-reference/documents/fill-the-typed-fields-read-off-a-document"}]},{"group":"Virtual accounts","pages":[{"title":"List virtual accounts and available payment methods","deprecated":null,"version":null,"openapi":"/openapi.json get /banks","href":"/api-reference/virtual-accounts/list-virtual-accounts-and-available-payment-methods"},{"title":"Request a receiving account for a product","deprecated":null,"version":null,"openapi":"/openapi.json post /banks","href":"/api-reference/virtual-accounts/request-a-receiving-account-for-a-product"},{"title":"Retrieve one virtual account","deprecated":null,"version":null,"openapi":"/openapi.json get /banks/{product}","href":"/api-reference/virtual-accounts/retrieve-one-virtual-account"},{"title":"Retrieve the receiving conversion rate","deprecated":null,"version":null,"openapi":"/openapi.json get /banks/{product}/rate","href":"/api-reference/virtual-accounts/retrieve-the-receiving-conversion-rate"}]},{"group":"Money in","pages":[{"title":"Create an incoming transfer quote","deprecated":null,"version":null,"openapi":"/openapi.json post /payins","href":"/api-reference/transfers/create-an-incoming-transfer-quote"},{"title":"Open the incoming transfer and retrieve funding instructions","deprecated":null,"version":null,"openapi":"/openapi.json post /payins/{payinId}/instructions","href":"/api-reference/transfers/open-the-incoming-transfer-and-retrieve-funding-instructions"},{"title":"Retrieve an incoming transfer","deprecated":null,"version":null,"openapi":"/openapi.json get /payins/{payinId}","href":"/api-reference/transfers/retrieve-an-incoming-transfer"}]},{"group":"Money out","pages":[{"title":"Create an outgoing transfer","deprecated":null,"version":null,"openapi":"/openapi.json post /payouts","href":"/api-reference/transfers/create-an-outgoing-transfer"},{"title":"Create an outgoing transfer quote","deprecated":null,"version":null,"openapi":"/openapi.json post /payouts/preview","href":"/api-reference/transfers/create-an-outgoing-transfer-quote"},{"title":"Authorize an outgoing transfer","deprecated":null,"version":null,"openapi":"/openapi.json post /payouts/{payoutId}/confirm","href":"/api-reference/transfers/authorize-an-outgoing-transfer"},{"title":"Retrieve an outgoing transfer","deprecated":null,"version":null,"openapi":"/openapi.json get /payouts/{payoutId}","href":"/api-reference/transfers/retrieve-an-outgoing-transfer"}]},{"group":"Swaps","pages":[{"title":"Create a transfer between the client's own accounts","deprecated":null,"version":null,"openapi":"/openapi.json post /swaps","href":"/api-reference/transfers/create-a-transfer-between-the-clients-own-accounts"},{"title":"Price a transfer between the client's own accounts","deprecated":null,"version":null,"openapi":"/openapi.json post /swaps/preview","href":"/api-reference/transfers/price-a-transfer-between-the-clients-own-accounts"},{"title":"Authorize a transfer between the client's own accounts","deprecated":null,"version":null,"openapi":"/openapi.json post /swaps/{swapId}/confirm","href":"/api-reference/transfers/authorize-a-transfer-between-the-clients-own-accounts"},{"title":"Retrieve a transfer between the client's own accounts","deprecated":null,"version":null,"openapi":"/openapi.json get /swaps/{swapId}","href":"/api-reference/transfers/retrieve-a-transfer-between-the-clients-own-accounts"}]},{"group":"Contacts","pages":[{"title":"Create a contact","deprecated":null,"version":null,"openapi":"/openapi.json post /contacts","href":"/api-reference/contacts/create-a-contact"},{"title":"List saved contacts","deprecated":null,"version":null,"openapi":"/openapi.json get /contacts","href":"/api-reference/contacts/list-saved-contacts"},{"title":"Retrieve one contact","deprecated":null,"version":null,"openapi":"/openapi.json get /contacts/{contactId}","href":"/api-reference/contacts/retrieve-one-contact"},{"title":"Update a contact","deprecated":null,"version":null,"openapi":"/openapi.json patch /contacts/{contactId}","href":"/api-reference/contacts/update-a-contact"},{"title":"Delete a contact","deprecated":null,"version":null,"openapi":"/openapi.json delete /contacts/{contactId}","href":"/api-reference/contacts/delete-a-contact"},{"title":"Retrieve contact channels","deprecated":null,"version":null,"openapi":"/openapi.json get /contacts/{contactId}/capabilities","href":"/api-reference/contacts/retrieve-contact-channels"}]},{"group":"Transactions","pages":[{"title":"List transactions, newest first","deprecated":null,"version":null,"openapi":"/openapi.json get /transactions","href":"/api-reference/transactions/list-transactions-newest-first"},{"title":"Retrieve one transaction","deprecated":null,"version":null,"openapi":"/openapi.json get /transactions/{transactionId}","href":"/api-reference/transactions/retrieve-one-transaction"},{"title":"Inflow and outflow totals for the same filters","deprecated":null,"version":null,"openapi":"/openapi.json get /transactions/summary","href":"/api-reference/transactions/inflow-and-outflow-totals-for-the-same-filters"},{"title":"Export transactions, a statement, a confirmation or a receipt","description":"Without `kind` the filtered transaction list is exported as `csv`, `xlsx` or `pdf`. `kind=statement` and `kind=confirmation` need `bankId` and support `pdf` or `xlsx`; `kind=receipt` needs `transactionId` and answers `pdf`.","deprecated":null,"version":null,"openapi":"/openapi.json get /transactions/export","href":"/api-reference/transactions/export-transactions-a-statement-a-confirmation-or-a-receipt"}]},{"group":"Escrow","pages":[{"title":"Open an escrow and return the payer's approval","deprecated":null,"version":null,"openapi":"/openapi.json post /escrow","href":"/api-reference/escrow/open-an-escrow-and-return-the-payers-approval"},{"title":"List the escrows this account operates","description":"List escrow agreements operated by the authenticated account, newest first.","deprecated":null,"version":null,"openapi":"/openapi.json get /escrow","href":"/api-reference/escrow/list-the-escrows-this-account-operates"},{"title":"Read one escrow","deprecated":null,"version":null,"openapi":"/openapi.json get /escrow/{escrowId}","href":"/api-reference/escrow/read-one-escrow"},{"title":"Prepare an escrow action and return the payload to sign","deprecated":null,"version":null,"openapi":"/openapi.json post /escrow/{escrowId}/actions","href":"/api-reference/escrow/prepare-an-escrow-action-and-return-the-payload-to-sign"},{"title":"Submit the signature for a prepared escrow action","deprecated":null,"version":null,"openapi":"/openapi.json post /escrow/{escrowId}/actions/{idempotencyKey}/confirm","href":"/api-reference/escrow/submit-the-signature-for-a-prepared-escrow-action"},{"title":"Reconcile one escrow with the chain","deprecated":null,"version":null,"openapi":"/openapi.json post /escrow/{escrowId}/sync","href":"/api-reference/escrow/reconcile-one-escrow-with-the-chain"}]},{"group":"Sandbox","pages":[{"title":"Read the sandbox treasury that funds emulated credits","deprecated":null,"version":null,"openapi":"/openapi.json get /sandbox/treasury","href":"/api-reference/sandbox/read-the-sandbox-treasury-that-funds-emulated-credits"},{"title":"Emulate an incoming deposit: an account transfer with bankId, a token transfer without","deprecated":null,"version":null,"openapi":"/openapi.json post /sandbox/deposits","href":"/api-reference/sandbox/emulate-an-incoming-deposit:-an-account-transfer-with-bankid-a-token-transfer-without"},{"title":"Emulate the arrival of the funds a pay-in is waiting for","deprecated":null,"version":null,"openapi":"/openapi.json post /sandbox/payins/{payinId}/complete","href":"/api-reference/sandbox/emulate-the-arrival-of-the-funds-a-pay-in-is-waiting-for"},{"title":"Move an emulated outgoing transfer to its next reported status","deprecated":null,"version":null,"openapi":"/openapi.json post /sandbox/payouts/{payoutId}/status","href":"/api-reference/sandbox/move-an-emulated-outgoing-transfer-to-its-next-reported-status"}]}]}]},"basePath":"","title":"Open an escrow and return the payer's approval - HEVN","buildId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","deploymentId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CybtLBIt.js","utils-BMLj2fvV.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-B6In562Y.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Dr8Mfhp9.js","snippetPresets-2rmQvMVl.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-WMqJYdZj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CJ-MlPHu.js","shallow-dY3TMRCk.js","getApiPlaygroundDisplay-v-1B2bKm.js","CodeSnippet-BDhiTB7U.js","CodeSnippets-D9hnzQcS.js","Page-C4GwDT3_.js","getPastedJson-Th2V45jI.js","icon-BQXch1W9.js","MethodPill-BCqUneP3.js","DuplicateIcon-Q_-bhurZ.js","createIcon-DUjLHRqp.js","DynamicMarkdown-B-f2cqXQ.js","SectionHeading-Da5NsV4v.js","axios-vUo_bRtp.js","Markdown-D13FWkIM.js","clsx-D3Isdib3.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-C-XZBk9h.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink--qIqmmVG.js"]}