To facilitate clients in quickly and conveniently integrating the system, ChainUp has outlined the core processes based on past client integration experiences, focusing on the integration solutions for [Get Receiving(Deposit) Address] , [User Receiving(Deposit)] and [User Transfer (Withdrawal)]. The details are as follows:
Create a coin address for the wallet /api/mpc/sub_wallet/create/address
ChainUp callbacks Co-Signer for signing, and Co-Signer collaborates with ChainUp node to complete the signing
Successfully signed, return the address created for the coin
Addresses support two types: system addresses and user addresses. The system address is used for auto sweep or is used as change address, cannot be assigned to users.
Users complete registration within the client system.
When users view the coin receiving address in the frontend, the client system assigns a coin address to the user.
Users deposits assets to the assigned address.
ChainUp monitors the blockchain address for incoming transactions. After detecting a deposit, ChainUp notifies the client’s business system of the receiving notification (the client’s system actively retrieves /api/mpc/billing/sync_deposit_list).
The client obtains the current block height of the corresponding blockchain for the coin (/api/mpc/chain_height).
The client system credits the user’s account after confirming the required number of secure confirmations.
After the client system approves the Transfer, it initiates a Transfer request to the ChainUp system via API /api/mpc/billing/withdraw.
Co-Signer periodically retrieves withdrawal transactions. If Co-Signer has configured a callback program, it confirms with the client’s business system. If Co-Signer has configured signature verification, it verifies the signature and collaborates with the ChainUp node to sign.
Once signed, ChainUp broadcasts the transaction to the blockchain and monitors its status.
Supported blockchains for acceleration can be obtained through the API /api/mpc/wallet/open_coin.
After blockchain confirmation, ChainUp notifies the client’s business system of the transfer notification (the client’s system actively retrieves /api/mpc/billing/sync_withdraw_list).
The client system updates the order status.
User transfer out successful.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"ChainUp Custody","colors":{"primary":"#2662FF","light":"#2662FF","dark":"#2662FF"},"logo":{"light":"https://mintcdn.com/zhp-9d4bf690/cbkONIKtw_CTQw7n/logo/chainupcustody-logo.svg?fit=max\u0026auto=format\u0026n=cbkONIKtw_CTQw7n\u0026q=85\u0026s=2fdc5228d243a49d95fcee4611d8982f","dark":"https://mintcdn.com/zhp-9d4bf690/cbkONIKtw_CTQw7n/logo/chainupcustody-logo.svg?fit=max\u0026auto=format\u0026n=cbkONIKtw_CTQw7n\u0026q=85\u0026s=2fdc5228d243a49d95fcee4611d8982f"},"favicon":"https://mintcdn.com/zhp-9d4bf690/cbkONIKtw_CTQw7n/logo/chainupcustody.svg?fit=max\u0026auto=format\u0026n=cbkONIKtw_CTQw7n\u0026q=85\u0026s=049ab15faffe4fcd88b0ae878c494c03","api":{"playground":{"display":"simple"},"mdx":{"server":"https://openapi.chainup.com"}},"appearance":{"default":"light","strict":true},"navbar":{"links":[{"href":"https://custodydocs-zh.chainup.com/introduction/overview/chainup-custody","label":"ZH-CN"}],"primary":{"type":"button","label":"Official Website","href":"https://custody.chainup.com"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"zhp-9d4bf690","hasAudioNarration":false,"actualSubdomain":"zhp-9d4bf690","customDomains":["custodydocs-en.chainup.com"],"gitSource":{"type":"github","owner":"chainup-custody","repo":"custody-docs","deployBranch":"master","contentDirectory":"en","isPrivate":false,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ae095d5cdcf99f97c312370","collectionId":"0b93002c-0e71-47d2-82e2-41b451fe1179","liveDeploymentHistoryId":"6ae095d5cdcf99f97c312370","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"DISABLED"},"NARRATION":{"status":"DISABLED"}},"buildId":"6ae095d5cdcf99f97c312370","clientVersion":"0.0.4054","searchFilterCounts":[{"language":"default","tag":"MPC Self-Custody","count":121},{"language":"default","tag":"API","count":53},{"language":"default","tag":"User Guide","count":40},{"language":"default","tag":"API Interface","count":36},{"language":"default","tag":"Help Center","count":27},{"language":"default","tag":"Introduction","count":10},{"language":"default","tag":"Get Started","count":10},{"language":"default","tag":"Auto Sweep","count":8},{"language":"default","tag":"Workspace","count":8},{"language":"default","tag":"Strategy Engine","count":7}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"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},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-references/mpc-apis/guide/test-flow","slug":"/api-references/mpc-apis/guide/test-flow","pageMetadata":{"title":"Integration Testing","description":null,"href":"/api-references/mpc-apis/guide/test-flow"},"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={code:`code`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Heading,OptimizedImage,Tip,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`To facilitate clients in quickly and conveniently integrating the system, ChainUp has outlined the core processes based on past client integration experiences, focusing on the integration solutions for [`,_jsx(_components.strong,{children:`Get Receiving(Deposit) Address`}),`] , [`,_jsx(_components.strong,{children:`User Receiving(Deposit)`}),`] and [`,_jsx(_components.strong,{children:`User Transfer (Withdrawal)`}),`]. The details are as follows:`]}),`\n`,_jsx(Heading,{level:`2`,id:`get-receiving-address`,children:`Get Receiving Address`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`Create a wallet `,_jsx(_components.code,{children:`/api/mpc/sub_wallet/create`})]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`Create a coin address for the wallet `,_jsx(_components.code,{children:`/api/mpc/sub_wallet/create/address`})]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`ChainUp callbacks Co-Signer for signing, and Co-Signer collaborates with ChainUp node to complete the signing`}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`Successfully signed, return the address created for the coin`}),`\n`]}),`\n`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Addresses support two types: system addresses and user addresses. The `,_jsx(_components.code,{children:`system address`}),` is used for auto sweep or is used as change address, cannot be assigned to users.`]})}),`\n`,_jsx(`div`,{className:`mint-w-full mint-flex mint-items-center mint-justify-center`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-get-address_en.png?fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=7264f8b7eef3869cba5755ad7a2a0048`,width:`600`,\"data-og-width\":`1873`,\"data-og-height\":`1943`,\"data-path\":`images/apis/mpc-get-address_en.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-get-address_en.png?w=280\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=ec9867a1649e4ff62c1f6290f463f697 280w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-get-address_en.png?w=560\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=f243602a812534a03dc5fe5c6b93a12b 560w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-get-address_en.png?w=840\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=d7a3e7672e2f1254795d96812e38dbd2 840w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-get-address_en.png?w=1100\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=d4bf6e9806a7ccf03e66c6651703ea5c 1100w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-get-address_en.png?w=1650\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=9bca1ace6145d58c97f2d8e71ff72215 1650w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-get-address_en.png?w=2500\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=4852f6fc160fa5c6ad62e9872547650c 2500w`})}),`\n`,_jsx(Heading,{level:`2`,id:`user-receiving-deposit`,children:`User Receiving (Deposit)`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`Users complete registration within the client system.`}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`When users view the coin receiving address in the frontend, the client system assigns a coin address to the user.`}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`Users deposits assets to the assigned address.`}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`ChainUp monitors the blockchain address for incoming transactions. After detecting a deposit, ChainUp notifies the client’s business system of the receiving notification (the client’s system actively retrieves `,_jsx(_components.code,{children:`/api/mpc/billing/sync_deposit_list`}),`).`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`The client obtains the current block height of the corresponding blockchain for the coin (`,_jsx(_components.code,{children:`/api/mpc/chain_height`}),`).`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`The client system credits the user’s account after confirming the required number of secure confirmations.`}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`User receives the coin (deposits successful).`}),`\n`]}),`\n`]}),`\n`,_jsx(`div`,{className:`mint-w-full mint-flex mint-items-center mint-justify-center`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-user-deposit_en.png?fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=6d9cc89f816bf084575b7595b2ee5d34`,width:`600`,\"data-og-width\":`2610`,\"data-og-height\":`3624`,\"data-path\":`images/apis/mpc-user-deposit_en.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-user-deposit_en.png?w=280\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=6dc9b5f662141ecfb75aadc7c0d0289e 280w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-user-deposit_en.png?w=560\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=637f18bb2d8adc9d2ef1335891aa055d 560w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-user-deposit_en.png?w=840\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=c8e8548bcaf8ede03defa220216ebee4 840w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-user-deposit_en.png?w=1100\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=e4528f6aa261cbad629521d0062badf5 1100w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-user-deposit_en.png?w=1650\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=89aadd32fed112605d886411380c6079 1650w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-user-deposit_en.png?w=2500\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=da763cd49d7dfaff534ed75fda8cd68b 2500w`})}),`\n`,_jsx(Heading,{level:`2`,id:`user-transfer-withdrawal`,children:`User Transfer (Withdrawal)`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`Users initiate a transfer in the client system.`}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`After the client system approves the Transfer, it initiates a Transfer request to the ChainUp system via API `,_jsx(_components.code,{children:`/api/mpc/billing/withdraw`}),`.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`Co-Signer periodically retrieves withdrawal transactions. If Co-Signer has configured a callback program, it confirms with the client’s business system. If Co-Signer has configured signature verification, it verifies the signature and collaborates with the ChainUp node to sign.`}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`Once signed, ChainUp broadcasts the transaction to the blockchain and monitors its status.`}),`\n`]}),`\n`]}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`Supported blockchains for acceleration can be obtained through the API `,_jsx(_components.code,{children:`/api/mpc/wallet/open_coin`}),`.`]})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`After blockchain confirmation, ChainUp notifies the client’s business system of the transfer notification (the client’s system actively retrieves `,_jsx(_components.code,{children:`/api/mpc/billing/sync_withdraw_list`}),`).`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`The client system updates the order status.`}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`User transfer out successful.`}),`\n`]}),`\n`]}),`\n`,_jsx(`div`,{className:`mint-w-full mint-flex mint-items-center mint-justify-center`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-user-withdraw_en.png?fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=1c117495186d2257f3ad8edbc937f07a`,width:`600`,\"data-og-width\":`3348`,\"data-og-height\":`4001`,\"data-path\":`images/apis/mpc-user-withdraw_en.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-user-withdraw_en.png?w=280\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=a5ef81dcf8a00c02e9e6353f7ad4cd1e 280w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-user-withdraw_en.png?w=560\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=c9fbf6d3dd64b6872aaf22202d8019e2 560w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-user-withdraw_en.png?w=840\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=5501f3e7d1f236dae40068bf4dd068bb 840w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-user-withdraw_en.png?w=1100\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=c523ba3c4128756b50dfdd91eaee4e9a 1100w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-user-withdraw_en.png?w=1650\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=1360c6713865223a43e5d19a902e2f0d 1650w, https://mintcdn.com/zhp-9d4bf690/AEZfbc6Vzsw1ahFp/images/apis/mpc-user-withdraw_en.png?w=2500\u0026fit=max\u0026auto=format\u0026n=AEZfbc6Vzsw1ahFp\u0026q=85\u0026s=72ac0ea0b9a8688c111fa1781bb30d10 2500w`})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Integration Testing","description":null,"href":"/api-references/mpc-apis/guide/test-flow"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Get Receiving Address","slug":"get-receiving-address","depth":2,"children":[]},{"title":"User Receiving (Deposit)","slug":"user-receiving-deposit","depth":2,"children":[]},{"title":"User Transfer (Withdrawal)","slug":"user-transfer-withdrawal","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"dynamicCss":".mint-flex {\n display: flex\n}\n.mint-w-full {\n width: 100%\n}\n.mint-items-center {\n align-items: center\n}\n.mint-justify-center {\n justify-content: center\n}","subdomain":"zhp-9d4bf690","siteName":"ChainUp Custody","title":"Integration Testing - ChainUp Custody","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-19T10:57:25.081Z","originalFileLocation":"api-references/mpc-apis/guide/test-flow.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"light\";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=\"light\"}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=\"ChainUp Custody\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/zhp-9d4bf690/LWKxnH-wx64j2ccl/_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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/zhp-9d4bf690/LWKxnH-wx64j2ccl/_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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Integration Testing - ChainUp Custody\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"ChainUp Custody\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/test-flow\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://zhp-9d4bf690.mintlify.app/_mintlify/api/og/v2?division=Integration+Guide\u0026amp;title=Integration+Testing\u0026amp;theme=e4d5ec45666c4be4ba4514c4\u0026amp;signature=659f9792ee40a1747a58e1208254ef8c114e787cf1ff8dc053b8e12dceb40b60\">\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=\"Integration Testing - ChainUp Custody\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://zhp-9d4bf690.mintlify.app/_mintlify/api/og/v2?division=Integration+Guide\u0026amp;title=Integration+Testing\u0026amp;theme=e4d5ec45666c4be4ba4514c4\u0026amp;signature=659f9792ee40a1747a58e1208254ef8c114e787cf1ff8dc053b8e12dceb40b60\">\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/zhp-9d4bf690/LWKxnH-wx64j2ccl/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"ChainUp Custody\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2662FF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/test-flow\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-references/mpc-apis/guide/test-flow.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://custodydocs-en.chainup.com/#organization\",\"name\":\"ChainUp Custody\",\"url\":\"https://custodydocs-en.chainup.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/zhp-9d4bf690/cbkONIKtw_CTQw7n/logo/chainupcustody-logo.svg?fit=max\u0026auto=format\u0026n=cbkONIKtw_CTQw7n\u0026q=85\u0026s=2fdc5228d243a49d95fcee4611d8982f\"}},{\"@type\":\"WebSite\",\"@id\":\"https://custodydocs-en.chainup.com#website\",\"name\":\"ChainUp Custody\",\"url\":\"https://custodydocs-en.chainup.com\",\"publisher\":{\"@id\":\"https://custodydocs-en.chainup.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/test-flow#webpage\",\"url\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/test-flow\",\"name\":\"Integration Testing\",\"dateModified\":\"2026-10-19T10:57:25.081Z\",\"isPartOf\":{\"@id\":\"https://custodydocs-en.chainup.com#website\"},\"breadcrumb\":{\"@id\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/test-flow#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/test-flow#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"MPC Self-Custody\",\"item\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Integration Guide\",\"item\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/overview\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Integration Testing\",\"item\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/test-flow\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/test-flow#article\",\"headline\":\"Integration Testing\",\"name\":\"Integration Testing\",\"url\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/test-flow\",\"mainEntityOfPage\":{\"@id\":\"https://custodydocs-en.chainup.com/api-references/mpc-apis/guide/test-flow#webpage\"},\"dateModified\":\"2026-10-19T10:57:25.081Z\",\"publisher\":{\"@id\":\"https://custodydocs-en.chainup.com/#organization\"},\"isPartOf\":{\"@id\":\"https://custodydocs-en.chainup.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"ChainUp Custody\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"ChainUp Custody","nav":{"global":null,"tabs":[{"tab":"Introduction","pages":[{"title":"Introduction","href":"/introduction/overview/chainup-custody"}]},{"tab":"Get Started","pages":[{"title":"Get Started","href":"/quick-start/overview/quickstart"}]},{"tab":"API","groups":[{"group":"Introduction to APIs","pages":[{"title":"ChainUp Custody APIs","href":"/api-references/intro/custody-apis"}]},{"group":"MPC Self-Custody","pages":[{"group":"Integration Guide","pages":[{"title":"Overview","href":"/api-references/mpc-apis/guide/overview"},{"title":"Open Account","href":"/api-references/mpc-apis/guide/create-account"},{"title":"Preparation","description":null,"href":"/api-references/mpc-apis/guide/function-set"},{"title":"Integration Testing","href":"/api-references/mpc-apis/guide/test-flow"}]},{"group":"API Interface","pages":[{"title":"Overview","description":null,"href":"/api-references/mpc-apis/apis/description"},{"group":"Workspace","pages":[{"title":"Get Supported Networks","api":"GET /api/mpc/wallet/open_coin","href":"/api-references/mpc-apis/apis/wallet/open-coin"},{"title":"Get MPC Workspace Coin Details","api":"GET /api/mpc/coin_list","href":"/api-references/mpc-apis/apis/wallet/coin-list"},{"title":"Get Latest Block Height","api":"GET /api/mpc/chain_height","href":"/api-references/mpc-apis/apis/wallet/chain-height"},{"title":"Estimated Mining Fee For Transfer","api":"GET /v2/chain/minerfee","href":"/api-references/mpc-apis/apis/wallet/minner-fee"}]},{"group":"Wallet","pages":[{"title":"Create wallet","api":"POST /api/mpc/sub_wallet/create","href":"/api-references/mpc-apis/apis/sub-wallet/subwallet-create"},{"title":"Create Wallet Address","api":"POST /api/mpc/sub_wallet/create/address","href":"/api-references/mpc-apis/apis/sub-wallet/subwallet-create-address"},{"title":"Query Wallet Address","api":"POST /api/mpc/sub_wallet/get/address/list","href":"/api-references/mpc-apis/apis/sub-wallet/subwallet-get-address"},{"title":"Get Wallet Assets","api":"GET /api/mpc/sub_wallet/assets","href":"/api-references/mpc-apis/apis/sub-wallet/subwallet-assets"},{"title":"Modify the Wallet Display Status","api":"POST /api/mpc/sub_wallet/change_show_status","href":"/api-references/mpc-apis/apis/sub-wallet/subwallet-show-status"},{"title":"Verify Address Information","api":"GET /api/mpc/sub_wallet/address/info","href":"/api-references/mpc-apis/apis/sub-wallet/subwallet-address-info"}]},{"group":"Transfer (Withdrawal)","pages":[{"title":"Transfer (Withdrawal)","api":"POST /api/mpc/billing/withdraw","href":"/api-references/mpc-apis/apis/withdraw/withdraw"},{"title":"Get Transfer Records","api":"GET /api/mpc/billing/withdraw_list","href":"/api-references/mpc-apis/apis/withdraw/withdraw-list"},{"title":"Synchronize Transfer Records","api":"GET /api/mpc/billing/sync_withdraw_list","href":"/api-references/mpc-apis/apis/withdraw/withdraw-sync-list"},{"title":"Accelerate Transfer (Withdrawal)","api":"POST /api/mpc/billing/withdraw_accelerate","href":"/api-references/mpc-apis/apis/withdraw/withdraw-accelerate"}]},{"group":"Receiving (Deposit)","pages":[{"title":"Get Receiving records","api":"GET /api/mpc/billing/deposit_list","href":"/api-references/mpc-apis/apis/deposit/deposit-list"},{"title":"Sync Receiving record","api":"GET /api/mpc/billing/sync_deposit_list","href":"/api-references/mpc-apis/apis/deposit/deposit-sync-list"}]},{"group":"Auto Sweep","pages":[{"title":"Get Auto-Sweep Wallets","api":"GET /api/mpc/auto_collect/sub_wallets","href":"/api-references/mpc-apis/apis/consolidation/consolidation-subwallet"},{"title":"Configure Auto-Sweep for Coin","api":"POST /api/mpc/auto_collect/symbol/set","href":"/api-references/mpc-apis/apis/consolidation/consolidation-symbol-set"},{"title":"Sync Auto Sweeping Records","api":"GET /api/mpc/billing/sync_auto_collect_list","href":"/api-references/mpc-apis/apis/consolidation/consolidation-sync-list"}]},{"group":"Web3 Transaction","pages":[{"title":"Create Web3 Transaction","api":"POST /api/mpc/web3/trans/create","href":"/api-references/mpc-apis/apis/web3/web3-create"},{"title":"Web3 Transaction Speed Up","api":"POST /api/mpc/web3/pending","href":"/api-references/mpc-apis/apis/web3/web3-pending"},{"title":"Get Web3 Transaction Records","api":"GET /api/mpc/web3/trans_list","href":"/api-references/mpc-apis/apis/web3/web3-record-list"},{"title":"Sync Web3 Transaction Records","api":"GET /api/mpc/web3/sync_trans_list","href":"/api-references/mpc-apis/apis/web3/web3-record-sync-list"}]},{"group":"NFT","pages":[{"title":"Get NFT Information","api":"POST /api/nft/info","href":"/api-references/mpc-apis/apis/nft/nft-info"}]},{"group":"Babylon","pages":[{"title":"Stake","api":"POST /api/mpc/babylon/stake","href":"/api-references/mpc-apis/apis/babylon/stake"},{"title":"Unstake","api":"POST /api/mpc/babylon/unstake","href":"/api-references/mpc-apis/apis/babylon/unstake"},{"title":"Unbond","api":"POST /api/mpc/babylon/unbond","href":"/api-references/mpc-apis/apis/babylon/unbond"},{"title":"Get stake record list","api":"GET /api/mpc/babylon/stake_list","href":"/api-references/mpc-apis/apis/babylon/stake-list"},{"title":"Get stake record details","api":"GET /api/mpc/babylon/details","href":"/api-references/mpc-apis/apis/babylon/stake-details"},{"title":"Get stake record details","api":"GET /api/mpc/babylon/details_by_request_id","href":"/api-references/mpc-apis/apis/babylon/stake-details-by-req-id"}]},{"group":"Tron Resource","pages":[{"title":"Purchase TRON resources on the Custody platform.","href":"/api-references/mpc-apis/apis/tron/resource-shopping-guide"},{"title":"Purchase TRON Network Transaction Resources","api":"POST /api/mpc/tron/delegate","href":"/api-references/mpc-apis/apis/tron/delegate-create"},{"title":"Obtain transaction records for purchasing Tron resources","api":"GET /api/mpc/tron/delegate/trans_list","href":"/api-references/mpc-apis/apis/tron/delegate-record-list"},{"title":"Synchronize Tron purchasing resource transaction records","api":"GET /api/mpc/tron/delegate/sync_trans_list","href":"/api-references/mpc-apis/apis/tron/delegate-record-sync-list"},{"title":"Tron Resource Purchase Asynchronous Notification","href":"/api-references/mpc-apis/apis/tron/tron-notify"}]}]},{"group":"Transaction Callback Notification","pages":[{"title":"Overview","href":"/api-references/mpc-apis/notify/description"},{"title":"Receive Asynchronous Notification","href":"/api-references/mpc-apis/notify/deposit"},{"title":"Transfer Asynchronous Notification","href":"/api-references/mpc-apis/notify/withdraw"},{"title":"Web3 Transaction Asynchronous Notification","href":"/api-references/mpc-apis/notify/web3"},{"title":"Tron Resource Purchase Asynchronous Notification","href":"/api-references/mpc-apis/notify/tron"}]},{"group":"Co-Signer","pages":[{"title":"Overview","href":"/api-references/mpc-apis/co-signer/flow"},{"group":"Co-Signer Callback","pages":[{"title":"Transfer(Withdrawal) Callback","api":"POST /{custom-url}","href":"/api-references/mpc-apis/co-signer/callback/withdraw"},{"title":"Web3 Transaction Callback","api":"POST /{custom-url}","href":"/api-references/mpc-apis/co-signer/callback/web3"}]},{"title":"Co-Signer Transaction Signature Verification","href":"/api-references/mpc-apis/co-signer/sign-verify"},{"title":"Co-Signer Deployment","href":"/api-references/mpc-apis/co-signer/deploy"}]},{"title":"Error Code","href":"/api-references/mpc-apis/err-code"},{"title":"SDK","href":"/api-references/mpc-apis/sdk"}]}]},{"tab":"Help Center","pages":[{"title":"Help Center","href":"/help-center/introduction/manage-custody"}]},{"tab":"User Guide","pages":[{"title":"User Guide","href":"/user-guide/mpc-wallet/account/password"}]}]},"basePath":"","title":"Integration Testing - ChainUp Custody","buildId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","deploymentId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","dynamics":["a74be98ba7"],"chunks":["zoom-image-lightbox-B4-wUcHm.js","lightbox-handle-r17bVUz3.js"]}