Custodial wallets support transferring assets using the /transfer endpoint — the same interface used by non-custodial wallets. This provides a simple, chain-agnostic way to move funds without needing to encode raw transaction data.
All transactions from custodial wallets are executed server-side.
For custodial wallets, only assets that are supported by the custodian can be transferred.Supported assets: OUSD, USDC, USDB, and EURCSupported chains: Tempo, Base, and Solana
Like non-custodial wallets, custodial wallets with an owner or additional_signers require an
authorization signature for transaction
requests.
Payment initiation context. This should be provided depending on SCA requirements for
the custodial wallet. This context is passed to Bridge. Learn more about
Strong Customer Authentication
(SCA).
How the payment was initiated. Use p2p_mobile_payment for peer-to-peer transfers initiated
on a mobile device; other_mobile_payment for non-P2P mobile-initiated payments (e.g. a
merchant payment via a mobile app); other for payments not relying on a mobile device.
Whether the payment was made remotely or in person. Use remote for payments initiated
from a distance (mobile app, online banking, or e-commerce checkout); non_remote for
payments made in person (physical card, payment terminal, or contactless tap).
Authentication factor metadata. Optional when outcome is sca_used; if provided,
it must contain at least two entries from different category values (e.g. one
possession factor and one knowledge factor). Omit this field for any other outcome.
The type of authentication factor used: knowledge (something
only the user knows, e.g. a PIN or password), possession (something only the
user has, e.g. a phone receiving an OTP or a hardware token), or inherence
(something the user is, e.g. a fingerprint or face scan). When outcome is
sca_used, the two factors in auth_factors must belong to two different categories.
Learn about the transfer lifecycle for custodial wallets
Sending USDC recipe
Learn how to format and encode ERC-20 token transfers
Authorization controls
Configure policies and multi-party approvals for custodial wallets
Transfer webhooks
Monitor transfer status and lifecycle events
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Privy Docs","colors":{"primary":"#010110","light":"#FFFFFF"},"logo":{"light":"https://mintcdn.com/privy-c2af3412/Ih_Fo3QYM486gzWq/logo/privy-logo-light.png?fit=max\u0026auto=format\u0026n=Ih_Fo3QYM486gzWq\u0026q=85\u0026s=bd297b680ace8a13db4d9ce977f93180","dark":"https://mintcdn.com/privy-c2af3412/Ih_Fo3QYM486gzWq/logo/privy-logo-dark.png?fit=max\u0026auto=format\u0026n=Ih_Fo3QYM486gzWq\u0026q=85\u0026s=24d83970695ab19a1803a2eb00dbea4e"},"favicon":"https://mintcdn.com/privy-c2af3412/YByWVKlFbSpnpSJG/favicon.png?fit=max\u0026auto=format\u0026n=YByWVKlFbSpnpSJG\u0026q=85\u0026s=ee4038168ea586e5f72041e5e2a1f5c8","api":{"openapi":{"source":"https://api.staging.privy.io/v1/openapi.json"},"playground":{"display":"interactive"},"examples":{"languages":["curl","java","javascript","php","go"]},"mdx":{"server":"https://api.privy.io"}},"background":{"color":{"light":"#FFFFFF","dark":"#010110"}},"navbar":{"links":[{"href":"https://demo.privy.io","label":"Demo"},{"href":"https://privy.io/slack","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://dashboard.privy.io"}},"seo":{"metatags":{"og:type":"website","og:site_name":"Privy Docs","og:image":"https://assets.privy.io/docs-og.png","twitter:title":"Privy Docs","twitter:card":"summary_large_image","twitter:image":"https://assets.privy.io/docs-og.png"},"organization":{"id":"https://www.privy.io/#organization","name":"Privy","url":"https://www.privy.io","logo":"https://assets.privy.io/docs-og.png","sameAs":["https://x.com/privy_io","https://github.com/privy-io"]}},"styling":{"codeblocks":"system","latex":true},"integrations":{"gtm":{"tagId":"GTM-WV9MVTB3"}},"contextual":{"options":["claude","chatgpt","cursor","vscode","mcp","copy","view"],"display":"header"},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"privy-c2af3412","hasAudioNarration":false,"actualSubdomain":"privy-c2af3412","customDomains":["docs.privy.io"],"gitSource":{"type":"github","owner":"privy-io","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae8ca4c72371a1bd6351c76","collectionId":"dd2027f9-fbb8-4b80-adf6-fc9ed06915ac","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae8ca4c72371a1bd6351c76"},"feedback":{"issues":true,"thumbs":true,"edits":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae8ca4c72371a1bd6351c76","clientVersion":"0.0.4045","searchFilterCounts":[{"language":"default","tag":"Wallets","count":282},{"language":"default","tag":"API reference","count":239},{"language":"default","tag":"Recipes","count":139},{"language":"default","tag":"All recipes","count":138},{"language":"default","tag":"Identity","count":130},{"language":"default","tag":"Signatures and transactions","count":90},{"language":"default","tag":"Basics","count":86},{"language":"default","tag":"Users","count":82},{"language":"default","tag":"Financial flows","count":79},{"language":"default","tag":"Controls","count":76}]},"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":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","href":"/_mintlify/custom/privy-c2af3412/4e67a2a256ed8221/style.css"}],"page":{"pagePath":"wallets/custodial-wallets/sending-funds","slug":"/wallets/custodial-wallets/sending-funds","pageMetadata":{"title":"Sending funds","keywords":["custodial wallets","send","funds","tempo","base","solana"],"description":null,"href":"/wallets/custodial-wallets/sending-funds"},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Card,CardGroup,CodeBlock,Expandable,Heading,Info,ParamField,ResponseField,Tab,Table,Tabs}=_components;if(!Card)_missingMdxReference(`Card`,true);if(!CardGroup)_missingMdxReference(`CardGroup`,true);if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Expandable)_missingMdxReference(`Expandable`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!ParamField)_missingMdxReference(`ParamField`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);if(!Tab)_missingMdxReference(`Tab`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tabs)_missingMdxReference(`Tabs`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Custodial wallets support transferring assets using the `,_jsx(_components.a,{href:`/wallets/actions/transfer/usage`,children:_jsx(_components.code,{children:`/transfer`})}),` endpoint — the same interface used by non-custodial wallets. This provides a simple, chain-agnostic way to move funds without needing to encode raw transaction data.`]}),`\n`,_jsx(Info,{children:`All transactions from custodial wallets are executed server-side.`}),`\n`,_jsx(Heading,{level:`2`,id:`initiate-a-transfer`,children:`Initiate a transfer`}),`\n`,_jsx(_components.p,{children:`For custodial wallets, only assets that are supported by the custodian can be transferred.`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Supported assets:`}),` OUSD, USDC, USDB, and EURC`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Supported chains:`}),` Tempo, Base, and Solana`]}),`\n`,_jsx(Info,{children:_jsxs(_components.p,{children:[`Like non-custodial wallets, custodial wallets with an `,_jsx(_components.code,{children:`owner`}),` or `,_jsx(_components.code,{children:`additional_signers`}),` require an\n`,_jsx(_components.a,{href:`/controls/authorization-keys/using-owners/sign/overview`,children:`authorization signature`}),` for transaction\nrequests.`]})}),`\n`,_jsx(Heading,{level:`3`,id:`usage`,children:`Usage`}),`\n`,_jsxs(_components.p,{children:[`Make a `,_jsx(_components.code,{children:`POST`}),` request to `,_jsx(_components.code,{children:`/v1/wallets/{wallet_id}/transfer`}),` with the source asset, amount, chain, and destination address:`]}),`\n`,_jsxs(Tabs,{children:[_jsx(Tab,{title:`Node.js SDK`,id:`node-js-sdk`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`13`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`13`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` transfer`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` privy`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`wallets`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`().`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`transfer`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'insert-wallet-id'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` amount:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '10.0'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` source:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` asset:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'ousd'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` chain:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'tempo'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` destination:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` address:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '0xRecipientAddress...'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`console`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`log`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`transfer`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`id`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`); `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// wallet action ID`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`console`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`log`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`transfer`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`status`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`); `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// 'pending'`})]}),`\n`]})})})}),_jsx(Tab,{title:`REST API`,id:`rest-api`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`14`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`14`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://api.privy.io/v1/wallets/{wallet_id}/transfer`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"privy-app-id: YOUR_APP_ID\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Basic BASE64_ENCODED_APP_SECRET\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"source\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"asset\": \"ousd\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"amount\": \"10.0\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"chain\": \"tempo\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"destination\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"address\": \"0xRecipientAddress...\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})})})]}),`\n`,_jsx(Heading,{level:`3`,id:`parameters`,children:`Parameters`}),`\n`,_jsx(ParamField,{path:`walletId`,type:`string`,required:true,id:`param-wallet-id`,children:_jsx(_components.p,{children:`The ID of the custodial wallet to send the transfer from.`})}),`\n`,_jsxs(ParamField,{body:`source`,type:`object`,required:true,id:`param-source`,children:[_jsx(_components.p,{children:`The source asset, amount, and chain for the transfer.`}),_jsxs(Expandable,{title:`properties`,defaultOpen:true,children:[_jsx(ParamField,{body:`source.asset`,type:`string`,required:true,id:`param-source-asset`,children:_jsxs(_components.p,{children:[`The asset to transfer (e.g. `,_jsx(_components.code,{children:`\"ousd\"`}),`, `,_jsx(_components.code,{children:`\"usdc\"`}),`, `,_jsx(_components.code,{children:`\"usdb\"`}),`, `,_jsx(_components.code,{children:`\"eurc\"`}),`).`]})}),_jsx(ParamField,{body:`source.amount`,type:`string`,required:true,id:`param-source-amount`,children:_jsxs(_components.p,{children:[`The amount to transfer as a decimal string in standard units (e.g. `,_jsx(_components.code,{children:`\"10.0\"`}),` for 10 OUSD). No\nneed to convert to smallest units.`]})}),_jsx(ParamField,{body:`source.chain`,type:`'tempo' | 'base' | 'solana'`,required:true,id:`param-source-chain`,children:_jsxs(_components.p,{children:[`The chain to transfer from (e.g. `,_jsx(_components.code,{children:`\"tempo\"`}),` or `,_jsx(_components.code,{children:`\"solana\"`}),`).`]})})]})]}),`\n`,_jsxs(ParamField,{body:`destination`,type:`object`,required:true,id:`param-destination`,children:[_jsx(_components.p,{children:`The destination for the transfer.`}),_jsx(Expandable,{title:`properties`,defaultOpen:true,children:_jsx(ParamField,{body:`destination.address`,type:`string`,required:true,id:`param-destination-address`,children:_jsx(_components.p,{children:`The recipient wallet address. Use a hex address for EVM chains and a base58 address for\nSolana.`})})})]}),`\n`,_jsxs(ParamField,{body:`custody_options`,type:`object`,id:`param-custody-options`,children:[_jsx(_components.p,{children:`Additional options for custodial transfers.`}),_jsx(Expandable,{title:`properties`,children:_jsxs(ParamField,{body:`custody_options.initiation`,type:`object`,required:true,id:`param-custody-options-initiation`,children:[_jsxs(_components.p,{children:[`Payment initiation context. This should be provided depending on SCA requirements for\nthe custodial wallet. This context is passed to Bridge. Learn more about\n`,_jsx(_components.a,{href:`/wallets/custodial-wallets/advanced/strong-customer-authentication`,children:`Strong Customer Authentication\n(SCA)`}),`.`]}),_jsxs(Expandable,{title:`properties`,defaultOpen:true,children:[_jsx(ParamField,{body:`custody_options.initiation.channel`,type:`string`,required:true,id:`param-custody-options-initiation-channel`,children:_jsxs(_components.p,{children:[`How the payment was initiated. Use `,_jsx(_components.code,{children:`p2p_mobile_payment`}),` for peer-to-peer transfers initiated\non a mobile device; `,_jsx(_components.code,{children:`other_mobile_payment`}),` for non-P2P mobile-initiated payments (e.g. a\nmerchant payment via a mobile app); `,_jsx(_components.code,{children:`other`}),` for payments not relying on a mobile device.`]})}),_jsx(ParamField,{body:`custody_options.initiation.subchannel`,type:`string`,required:true,id:`param-custody-options-initiation-subchannel`,children:_jsxs(_components.p,{children:[`Whether the payment was made remotely or in person. Use `,_jsx(_components.code,{children:`remote`}),` for payments initiated\nfrom a distance (mobile app, online banking, or e-commerce checkout); `,_jsx(_components.code,{children:`non_remote`}),` for\npayments made in person (physical card, payment terminal, or contactless tap).`]})}),_jsxs(ParamField,{body:`custody_options.initiation.attestations`,type:`object`,required:true,id:`param-custody-options-initiation-attestations`,children:[_jsx(_components.p,{children:`Payment initiation attestations for a transfer.`}),_jsx(Expandable,{title:`properties`,defaultOpen:true,children:_jsxs(ParamField,{body:`custody_options.initiation.attestations.sca`,type:`object`,required:true,id:`param-custody-options-initiation-attestations-sca`,children:[_jsx(_components.p,{children:`Strong Customer Authentication attestation for a transfer.`}),_jsxs(Expandable,{title:`properties`,defaultOpen:true,children:[_jsxs(ParamField,{body:`custody_options.initiation.attestations.sca.outcome`,type:`string`,required:true,id:`param-custody-options-initiation-attestations-sca-outcome`,children:[_jsx(_components.p,{children:`Whether Strong Customer Authentication (SCA) was applied or which regulatory\nexemption or non-applicability reason covers this payment.`}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Outcome`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`sca_used`})}),_jsx(_components.td,{children:`The user authenticated with SCA.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`payment_to_self`})}),_jsx(_components.td,{children:`Payer and payee are the same person (remote only).`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`trusted_beneficiaries`})}),_jsx(_components.td,{children:`Payee is on the user’s pre-approved list.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`recurring_transaction`})}),_jsx(_components.td,{children:`Amount and payee match a previously SCA-authorized recurring series.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`contactless_low_value`})}),_jsx(_components.td,{children:`Contactless card payment below the low-value threshold (non-remote only).`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`unattended_terminal_for_transport`})}),_jsx(_components.td,{children:`Automated terminal for transport fares or parking (non-remote only).`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`low_value`})}),_jsx(_components.td,{children:`Remote payment below the low-value threshold (remote only).`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`secure_corporate_payment`})}),_jsx(_components.td,{children:`Dedicated corporate payment process with controls equivalent to SCA (remote only).`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`transaction_risk_analysis`})}),_jsx(_components.td,{children:`PSP has performed real-time risk analysis and the transaction falls within permitted thresholds (remote only).`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`merchant_initiated_transaction`})}),_jsx(_components.td,{children:`Payment triggered by the merchant without the payer present, on a pre-authorized mandate (remote only).`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`not_applicable`})}),_jsx(_components.td,{children:`This flow requires initiation context but SCA and SCA exemptions do not apply.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`other`})}),_jsx(_components.td,{children:`Another recognized exemption not listed above.`})]})]})]})]}),_jsxs(ParamField,{body:`custody_options.initiation.attestations.sca.auth_factors`,type:`object[]`,id:`param-custody-options-initiation-attestations-sca-auth-factors`,children:[_jsxs(_components.p,{children:[`Authentication factor metadata. Optional when `,_jsx(_components.code,{children:`outcome`}),` is `,_jsx(_components.code,{children:`sca_used`}),`; if provided,\nit must contain at least two entries from different `,_jsx(_components.code,{children:`category`}),` values (e.g. one\n`,_jsx(_components.code,{children:`possession`}),` factor and one `,_jsx(_components.code,{children:`knowledge`}),` factor). Omit this field for any other outcome.`]}),_jsxs(Expandable,{title:`properties`,children:[_jsx(ParamField,{body:`custody_options.initiation.attestations.sca.auth_factors[].category`,type:`string`,required:true,id:`param-custody-options-initiation-attestations-sca-auth-factors-category`,children:_jsxs(_components.p,{children:[`The type of authentication factor used: `,_jsx(_components.code,{children:`knowledge`}),` (something\nonly the user knows, e.g. a PIN or password), `,_jsx(_components.code,{children:`possession`}),` (something only the\nuser has, e.g. a phone receiving an OTP or a hardware token), or `,_jsx(_components.code,{children:`inherence`}),`\n(something the user is, e.g. a fingerprint or face scan). When `,_jsx(_components.code,{children:`outcome`}),` is\n`,_jsx(_components.code,{children:`sca_used`}),`, the two factors in `,_jsx(_components.code,{children:`auth_factors`}),` must belong to two different categories.`]})}),_jsx(ParamField,{body:`custody_options.initiation.attestations.sca.auth_factors[].authenticated_at`,type:`string`,required:true,id:`param-custody-options-initiation-attestations-sca-auth-factors-authenticated-at`,children:_jsx(_components.p,{children:`The ISO 8601 timestamp when this factor was authenticated.`})}),_jsx(ParamField,{body:`custody_options.initiation.attestations.sca.auth_factors[].reference`,type:`string`,required:true,id:`param-custody-options-initiation-attestations-sca-auth-factors-reference`,children:_jsx(_components.p,{children:`Your internal identifier for this authentication event (e.g. a session ID,\ntransaction ID, or audit log reference). Used for reconciliation.`})})]})]})]})]})})]})]})]})})]}),`\n`,_jsx(Heading,{level:`3`,id:`returns`,children:`Returns`}),`\n`,_jsxs(_components.p,{children:[`The response is a `,_jsx(_components.a,{href:`/wallets/actions/overview`,children:`wallet action`}),` object with `,_jsx(_components.code,{children:`type: \"transfer\"`}),`:`]}),`\n`,_jsx(ResponseField,{name:`id`,type:`string`,id:`param-id`,children:_jsxs(_components.p,{children:[`The wallet action ID. Use this to poll for status updates via `,_jsx(_components.code,{children:`GET /v1/wallets/{wallet_id} /actions/{action_id}`}),`.`]})}),`\n`,_jsx(ResponseField,{name:`status`,type:`string`,id:`param-status`,children:_jsxs(_components.p,{children:[`The action status: `,_jsx(_components.code,{children:`pending`}),`, `,_jsx(_components.code,{children:`succeeded`}),`, `,_jsx(_components.code,{children:`rejected`}),`, or `,_jsx(_components.code,{children:`failed`}),`.`]})}),`\n`,_jsx(ResponseField,{name:`type`,type:`'transfer'`,id:`param-type`,children:_jsx(_components.p,{children:`The action type.`})}),`\n`,_jsx(ResponseField,{name:`source_asset`,type:`string`,id:`param-source-asset-1`,children:_jsx(_components.p,{children:`The asset being transferred.`})}),`\n`,_jsx(ResponseField,{name:`source_amount`,type:`string`,id:`param-source-amount-1`,children:_jsx(_components.p,{children:`The amount being transferred in standard units.`})}),`\n`,_jsx(ResponseField,{name:`source_chain`,type:`string`,id:`param-source-chain-1`,children:_jsx(_components.p,{children:`The source chain.`})}),`\n`,_jsx(ResponseField,{name:`destination_address`,type:`string`,id:`param-destination-address-1`,children:_jsx(_components.p,{children:`The recipient address.`})}),`\n`,_jsx(Heading,{level:`2`,id:`next-steps`,children:`Next steps`}),`\n`,_jsxs(CardGroup,{children:[_jsx(Card,{title:`Transfer lifecycle`,icon:`clock`,href:`/wallets/custodial-wallets/transaction-lifecycle`,children:_jsx(_components.p,{children:`Learn about the transfer lifecycle for custodial wallets`})}),_jsx(Card,{title:`Sending USDC recipe`,icon:`book-open`,href:`/recipes/send-usdc`,children:_jsx(_components.p,{children:`Learn how to format and encode ERC-20 token transfers`})}),_jsx(Card,{title:`Authorization controls`,icon:`shield-halved`,href:`/wallets/custodial-wallets/advanced/authorization-controls`,children:_jsx(_components.p,{children:`Configure policies and multi-party approvals for custodial wallets`})}),_jsx(Card,{title:`Transfer webhooks`,icon:`webhook`,href:`/wallets/custodial-wallets/advanced/webhooks`,children:_jsx(_components.p,{children:`Monitor transfer status and lifecycle events`})})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"codeStyling":"system","config":{},"pageMetadata":{"title":"Sending funds","keywords":["custodial wallets","send","funds","tempo","base","solana"],"description":null,"href":"/wallets/custodial-wallets/sending-funds"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Initiate a transfer","slug":"initiate-a-transfer","depth":2,"children":[{"title":"Usage","slug":"usage","depth":3,"children":[]},{"title":"Parameters","slug":"parameters","depth":3,"children":[]},{"title":"Returns","slug":"returns","depth":3,"children":[]}]},{"title":"Next steps","slug":"next-steps","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/privy-c2af3412/9a6cfa36ced76db0/welcome.js","/_mintlify/custom/privy-c2af3412/1af79d46bd64cd8b/fullstory.js","/_mintlify/custom/privy-c2af3412/e4d91321024fde21/recipes/recipes-search.js","/_mintlify/custom/privy-c2af3412/d31c5451398ab22c/check-links.js"],"subdomain":"privy-c2af3412","siteName":"Privy Docs","title":"Sending funds - Privy Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-30T18:43:57.931Z","originalFileLocation":"wallets/custodial-wallets/sending-funds.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=\"application-name\" content=\"Privy Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/privy-c2af3412/bJgmnaRQwH8sO8y5/_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/privy-c2af3412/bJgmnaRQwH8sO8y5/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/privy-c2af3412/bJgmnaRQwH8sO8y5/_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/privy-c2af3412/bJgmnaRQwH8sO8y5/_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/privy-c2af3412/bJgmnaRQwH8sO8y5/_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/privy-c2af3412/bJgmnaRQwH8sO8y5/_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/privy-c2af3412/bJgmnaRQwH8sO8y5/_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/privy-c2af3412/bJgmnaRQwH8sO8y5/_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/privy-c2af3412/bJgmnaRQwH8sO8y5/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Sending funds - Privy Docs\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Privy Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.privy.io/wallets/custodial-wallets/sending-funds\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://assets.privy.io/docs-og.png\">\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=\"Privy Docs\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://assets.privy.io/docs-og.png\">\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/privy-c2af3412/bJgmnaRQwH8sO8y5/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Privy Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#010110\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.privy.io/wallets/custodial-wallets/sending-funds\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/wallets/custodial-wallets/sending-funds.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://www.privy.io/#organization\",\"name\":\"Privy\",\"url\":\"https://www.privy.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://assets.privy.io/docs-og.png\"},\"sameAs\":[\"https://x.com/privy_io\",\"https://github.com/privy-io\"]},{\"@type\":\"WebSite\",\"@id\":\"https://docs.privy.io#website\",\"name\":\"Privy Docs\",\"url\":\"https://docs.privy.io\",\"publisher\":{\"@id\":\"https://www.privy.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.privy.io/wallets/custodial-wallets/sending-funds#webpage\",\"url\":\"https://docs.privy.io/wallets/custodial-wallets/sending-funds\",\"name\":\"Sending funds\",\"dateModified\":\"2026-10-30T18:43:57.931Z\",\"isPartOf\":{\"@id\":\"https://docs.privy.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.privy.io/wallets/custodial-wallets/sending-funds#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.privy.io/wallets/custodial-wallets/sending-funds#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Custodial wallets\",\"item\":\"https://docs.privy.io/wallets/custodial-wallets/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sending funds\",\"item\":\"https://docs.privy.io/wallets/custodial-wallets/sending-funds\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.privy.io/wallets/custodial-wallets/sending-funds#article\",\"headline\":\"Sending funds\",\"name\":\"Sending funds\",\"url\":\"https://docs.privy.io/wallets/custodial-wallets/sending-funds\",\"mainEntityOfPage\":{\"@id\":\"https://docs.privy.io/wallets/custodial-wallets/sending-funds#webpage\"},\"image\":\"https://assets.privy.io/docs-og.png\",\"dateModified\":\"2026-10-30T18:43:57.931Z\",\"keywords\":\"custodial wallets, send, funds, tempo, base, solana\",\"publisher\":{\"@id\":\"https://www.privy.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.privy.io#website\"}}]}\u003c/script>","siteName":"Privy Docs","nav":{"global":null,"tabs":[{"tab":"Basics","pages":[{"title":"Basics","href":"/basics/get-started/about"}]},{"tab":"Wallets","menu":[{"item":"Overview","pages":[{"title":"Overview","href":"/wallets/overview"}]},{"item":"Embedded wallets","groups":[{"group":"Embedded wallets","pages":[{"title":"Embedded wallets","sidebarTitle":"Overview","href":"/wallets/overview/embedded"},{"title":"User wallets","href":"/wallets/overview/solutions/user-wallets"},{"title":"Organization wallets","href":"/wallets/overview/solutions/organization-wallets"},{"title":"Treasury","href":"/wallets/overview/solutions/treasury-wallets"},{"title":"Agent wallets","href":"/wallets/overview/solutions/agent-wallets"}]},{"group":"Management","pages":[{"title":"Create a wallet","href":"/wallets/wallets/create/create-a-wallet"},{"group":"Get a wallet","pages":[{"title":"Get user connected wallets","href":"/wallets/wallets/get-a-wallet/get-connected-wallet"},{"title":"Get wallet by ID","href":"/wallets/wallets/get-a-wallet/get-wallet-by-id"},{"title":"Get wallet by external ID","href":"/wallets/wallets/get-a-wallet/get-wallet-by-external-id"},{"title":"Get all wallets","href":"/wallets/wallets/get-a-wallet/get-all-wallets"}]},{"title":"Update a wallet","href":"/wallets/wallets/update-a-wallet"},{"title":"Archive a wallet","sidebarTitle":"Archive a wallet","href":"/wallets/wallets/archive-a-wallet"},{"group":"Import a wallet","pages":[{"title":"HD wallets","href":"/wallets/wallets/import-a-wallet/hd-wallets"},{"title":"Private keys","href":"/wallets/wallets/import-a-wallet/private-key"},{"title":"Architecture","href":"/wallets/wallets/import-a-wallet/architecture"}]},{"title":"Export a wallet","href":"/wallets/wallets/export"},{"title":"External IDs","sidebarTitle":"External IDs","href":"/wallets/wallets/external-ids"}]},{"group":"Usage","pages":[{"title":"Using wallets","href":"/wallets/using-wallets/overview"},{"title":"Server-side access to user wallets","href":"/wallets/wallets/server-side-access"},{"title":"Offline actions with user wallets","href":"/wallets/wallets/offline-actions"},{"title":"Conditional policies per signer","sidebarTitle":"Conditional policies per signer","href":"/recipes/wallets/conditional-signer-policies"}]},{"group":"UI components","pages":[{"title":"UI components","href":"/wallets/using-wallets/ui-components"},{"title":"Whitelabel","href":"/wallets/using-wallets/whitelabel"}]},{"group":"Custodial wallets","pages":[{"title":"Overview","href":"/wallets/custodial-wallets/overview"},{"title":"Setup","href":"/wallets/custodial-wallets/setup"},{"title":"Create a custodial wallet","description":null,"href":"/wallets/custodial-wallets/create-custodial-wallet"},{"title":"Sending funds","href":"/wallets/custodial-wallets/sending-funds"},{"title":"Transfer lifecycle","description":null,"href":"/wallets/custodial-wallets/transaction-lifecycle"},{"group":"Advanced","pages":[{"title":"Authorization and controls","href":"/wallets/custodial-wallets/advanced/authorization-controls"},{"title":"Webhooks","href":"/wallets/custodial-wallets/advanced/webhooks"},{"title":"Funding","href":"/wallets/custodial-wallets/advanced/funding"}]}]},{"group":"Digital asset accounts","pages":[{"sidebarTitle":"Overview","title":"Digital asset accounts","href":"/wallets/accounts/overview"},{"title":"Create an account","href":"/wallets/accounts/create"},{"title":"Get an account","href":"/wallets/accounts/get"},{"title":"Update an account","href":"/wallets/accounts/update"},{"title":"Get account balance","href":"/wallets/accounts/balance"},{"title":"Configuring self-custody","href":"/wallets/accounts/self-custody"},{"title":"Taking actions","href":"/wallets/accounts/actions"}]},{"group":"Global wallets","pages":[{"title":"Overview","sidebarTitle":"Overview","href":"/wallets/global-wallets/overview"},{"group":"Launch your wallet","pages":[{"title":"Overview","href":"/wallets/global-wallets/launch-your-wallet/overview"},{"title":null,"href":"/wallets/global-wallets/launch-your-wallet/custom-experience"}]},{"group":"Integrate a global wallet","pages":[{"title":null,"href":"/wallets/global-wallets/integrate-a-global-wallet/overview"},{"title":null,"href":"/wallets/global-wallets/integrate-a-global-wallet/login-with-a-global-wallet"},{"title":null,"href":"/wallets/global-wallets/integrate-a-global-wallet/linking-a-global-wallet"},{"title":null,"href":"/wallets/global-wallets/integrate-a-global-wallet/getting-global-wallets"},{"title":null,"href":"/wallets/global-wallets/integrate-a-global-wallet/using-global-wallets"},{"title":"RainbowKit connector","href":"/wallets/global-wallets/integrate-a-global-wallet/rainbowkit-connector"},{"title":null,"href":"/wallets/global-wallets/integrate-a-global-wallet/connectkit-connector"}]}]},{"group":"EVM smart wallets","pages":[{"title":"Smart wallets","sidebarTitle":"Overview","href":"/wallets/using-wallets/evm-smart-wallets/overview"},{"group":"Setup","pages":[{"title":"Configure smart wallets in the dashboard","sidebarTitle":"Configuring the dashboard","href":"/wallets/using-wallets/evm-smart-wallets/setup/configuring-dashboard"},{"title":"Configure smart wallets in the SDK","sidebarTitle":"Configuring the SDK","href":"/wallets/using-wallets/evm-smart-wallets/setup/configuring-sdk"}]},{"title":"Using smart wallets","sidebarTitle":"Usage","href":"/wallets/using-wallets/evm-smart-wallets/usage"}]}]},{"item":"Organization wallets","pages":[{"title":"Organization wallets","href":"/organizations/overview"}]},{"item":"External wallets","pages":[{"title":"External wallets","href":"/wallets/connectors/overview"}]},{"item":"Signatures and transactions","pages":[{"title":"Signatures and transactions","href":"/wallets/signatures-and-transactions"}]},{"item":"Balances and webhooks","pages":[{"title":"Balances and webhooks","href":"/wallets/gas-and-asset-management/assets/overview"}]},{"item":"Gas and fee management","pages":[{"title":"Gas and fee management","href":"/wallets/gas-and-asset-management/gas/overview"}]}]},{"tab":"Financial flows","menu":[{"item":"Overview","pages":[{"title":"Overview","href":"/financial-flows/overview"}]},{"item":"Deposits","pages":[{"title":"Deposits","href":"/financial-flows/deposits/overview"}]},{"item":"Payouts","pages":[{"title":"Payouts","href":"/financial-flows/payouts/overview"}]},{"item":"Earn","pages":[{"title":"Earn","href":"/wallets/actions/earn/overview"}]},{"item":"Cards","pages":[{"title":"Cards","href":"/financial-flows/cards/overview"}]},{"item":"Trade","pages":[{"title":"Trade","href":"/wallets/actions/swap/overview"}]},{"item":"Monetization","pages":[{"title":"Monetization","href":"/financial-flows/monetization"}]},{"item":"Treasury management","pages":[{"title":"Treasury management","href":"/treasury-management/overview"}]},{"item":"Private transactions","pages":[{"title":"Private transactions","href":"/financial-flows/private-transactions"}]}],"pages":[{"title":"Financial flows","href":"/financial-flows/overview"}]},{"tab":"Controls and policies","menu":[{"item":"Controls","pages":[{"title":"Controls","href":"/controls/overview"}]},{"item":"Policies","pages":[{"title":"Policies","href":"/controls/policies/overview"}]},{"item":"Manual approvals","pages":[{"title":"Manual approvals","href":"/controls/dashboard/overview"}]}],"pages":[{"title":"Controls and policies","href":"/controls/overview"}]},{"tab":"Identity","menu":[{"item":"Authentication","pages":[{"title":"Authentication","href":"/authentication/overview"}]},{"item":"Users","pages":[{"title":"Users","href":"/user-management/users/overview"}]},{"item":"KYC and KYB","pages":[{"title":"KYC and KYB","href":"/kyc-kyb/overview"}]}],"pages":[{"title":"Identity","href":"/authentication/overview"}]},{"tab":"Security","pages":[{"title":"Security","href":"/security/overview"}]},{"tab":"Recipes","pages":[{"title":"Recipes","href":"/recipes/overview"}]},{"tab":"API reference","pages":[{"title":"API reference","href":"/api-reference/introduction"}]}]},"basePath":"","title":"Sending funds - Privy Docs","buildId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","deploymentId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","dynamics":[],"chunks":[]}