{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-products/wallet/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["admonition"]},"type":"markdown"},"seo":{"title":"Send your first transaction","description":"User guides, API reference, and support resources.","siteUrl":"https://docs.ripple.com","lang":"en-US","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"send-your-first-transaction","__idx":0},"children":["Send your first transaction"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This guide walks you through sending an outgoing transaction from the Ripple Custody (Wallet) console."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":"Prerequisites"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Before you proceed, make sure you've completed ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/get-started/console/unlock-outgoing-transactions"},"children":["Unlock outgoing transactions"]},". Your wallet must have:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["At least one active transaction policy for the asset you want to send."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The destination address registered in your address book (for external transfers)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Outgoing transactions enabled."]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"submit-a-transaction","__idx":1},"children":["Submit a transaction"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required role:"]}," Owner, Administrator, or Proposer."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["New Transaction"]}," form has four steps for a payment: ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Type"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Details"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Advanced"]},", and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Confirm"]},"."]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Navigate to your wallet."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Send transaction"]},". The ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["New Transaction"]}," form opens."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["On the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Type"]}," step, keep the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Payment"]}," transaction type and click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Next"]},". (XRP Ledger wallets also list other XRP Ledger transaction types.)"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["On the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Details"]}," step, select the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Asset"]}," you want to send. The list shows your available balance for each asset and whether it has a policy rule."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Under ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Sending to"]},", select the destination:",{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["An address from your address book (for external transfers), or"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["A wallet within your organization (for internal transfers)."]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Enter the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Amount to send"]},", excluding fees, then click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Next"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["(Optional) On the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Advanced"]}," step, enter a ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Correlation ID"]}," or ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["External ID"]}," for tracking purposes. XRP Ledger wallets also show ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Source tag"]}," and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Destination tag"]},": enter a destination tag if the recipient requires one."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Review transaction"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["On the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Confirm"]}," step, review the transaction summary. Verify the asset, amount, and destination are correct."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Confirm transaction"]}," to submit."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/get-started-send-transaction.5510872bb1751d633731d65e356079fd971ba7fd5db2dc392318c7b95567aadc.9fccc40d.png","alt":"The Details step of the New Transaction form, with Asset, Sending to, and Amount to send filled in"},"children":[]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":"Transactions are irreversible"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Once a transaction is submitted and confirmed on the blockchain, it cannot be reversed. Double-check all details before you confirm."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"approve-the-transaction","__idx":2},"children":["Approve the transaction"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required role:"]}," Owner, Administrator, Proposer, or Approver."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If your organization has configured an ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/approvals"},"children":["approval group"]}," for transactions, the transaction enters the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Approval checks pending"]}," state after submission."]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Designated approvers receive a notification in the Ripple Custody (Wallet) web console and on their mobile device (if they have one registered)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Each approver reviews the transaction details and clicks ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Approve"]}," or ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Reject"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["After the required number of approvers authorize the transaction, it moves to the signing stage."]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Approval timeout"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Approvers must respond within the configured timeout window (default: 1 hour). If the required number of approvals isn't met before the timeout expires, the transaction is automatically rejected."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If no approval group is configured for transactions on this wallet, the transaction skips this step and goes directly to signing."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"sign-the-transaction","__idx":3},"children":["Sign the transaction"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["After the transaction passes policy checks and approvals (if configured), the MPC quorum signs it."]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["CloudSign devices"]}," sign automatically within seconds."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Mobile devices"]}," send a notification to the device owner, who reviews and signs manually."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The minimum number of signatories defined in the quorum must participate within 5 minutes. After enough devices sign, the platform constructs the complete signature and submits the transaction to the blockchain."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"HSM signing in sandbox"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If your sandbox wallet uses an HSM keystore, signing is handled automatically by the Hardware Security Module. No device interaction is required."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"track-the-transaction","__idx":4},"children":["Track the transaction"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["After the transaction is signed and submitted, you can monitor its progress."]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Open your wallet and go to the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Transactions"]}," tab."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Select your transaction to see its status timeline:"]}]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Status"},"children":["Status"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What it means"},"children":["What it means"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Policy checks pending"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Transaction is being evaluated against your active policies"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Approval checks pending"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Waiting for approvers to authorize"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Signature pending"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Waiting for MPC quorum devices to sign"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Confirmation pending"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Signed and broadcast to the blockchain, waiting for confirmation"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Confirmed"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Confirmed on the blockchain — transaction is complete"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Violation"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Rejected by an approver, timed out, or failed a policy check"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Failed"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The blockchain rejected the transaction (for example, insufficient gas)"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The transaction list shows a shorter status badge: ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Requested"]},", then ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Pending"]}," while the transaction moves through checks and signing, then ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Signed"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Published"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Confirming"]},", and finally ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Success"]},". A rejected transaction shows ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Violation"]},", and a failed one shows ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Failed"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/get-started-wallet-transactions.fd9ce479dee617498b39a2a2c48ede0ff605b3e553cbdbb2629c56187baad278.9fccc40d.png","alt":"A wallet's Transactions tab with a confirmed payment showing the Success status"},"children":[]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/transactions"},"children":["How transactions work"]}," and ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/transactions/view-and-track-transactions"},"children":["View transactions in the console"]}," for the full reference."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"troubleshoot-common-issues","__idx":5},"children":["Troubleshoot common issues"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Symptom"},"children":["Symptom"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Cause"},"children":["Cause"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Fix"},"children":["Fix"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["\"No matching policy\" error"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No policy exists for the asset, or the destination doesn't match the policy's allowed counterparties/addresses"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Create a policy that covers the asset and destination you're trying to use"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["\"Address not found\" error"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The destination address isn't registered in your address book"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Add the counterparty and address to the address book"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Transaction stuck in \"Pending\""]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["An approval group is configured and approvers haven't responded yet"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Ask your designated approvers to review the transaction in the console or mobile app"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Transaction rejected automatically"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The transaction amount exceeds the policy limit, or the approval timed out"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Check the policy limits and try again with a lower amount, or coordinate with approvers to respond within the timeout window"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"what-to-do-next","__idx":6},"children":["What to do next"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You've completed the getting started walkthrough. Here are the recommended next steps to get the most from Ripple Custody (Wallet):"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"automate-with-the-api","__idx":7},"children":["Automate with the API"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/get-started/use-the-api"},"children":["Getting started with the API"]}," — Create vaults, wallets, and transactions programmatically with complete ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["curl"]}," examples."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/organization-and-access/api-credentials/best-practices"},"children":["API credentials best practices"]}," — Scope permissions, rotate credentials, and configure IP allowlisting."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/api-docs/palisade-api/palisade-api"},"children":["Ripple Custody (Wallet) API reference"]}," — Full endpoint documentation."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"integrate-with-your-systems","__idx":8},"children":["Integrate with your systems"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/integrations-and-monitoring/connections"},"children":["Connections"]}," — Open connections to external platforms."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"add-oversight-and-controls","__idx":9},"children":["Add oversight and controls"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/approvals"},"children":["Approval groups"]}," — Require human authorization before transactions execute."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/policies/manage-policies"},"children":["Manage policies"]}," — Create more granular policies for different assets, amounts, and destinations."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/organization-and-access/users-and-roles"},"children":["User roles and permissions"]}," — Assign appropriate access levels to your team."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/integrations-and-monitoring/connections"},"children":["Connections"]}," — Open connections to external platforms."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"learn-more-about-the-platform","__idx":10},"children":["Learn more about the platform"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/vaults-and-wallets/supported-blockchains-and-tokens"},"children":["Supported blockchains"]}," — Feature availability and chain-specific details."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/vaults-and-wallets/asset-sweeping"},"children":["Asset sweeping"]}," — Automate fund consolidation across wallets."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/transactions/raw-signing"},"children":["Raw signing"]}," — Sign arbitrary blockchain transaction types."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/transactions/send-assets#evm-cross-chain-transfers-via-the-api"},"children":["Cross-chain EVM transfers"]}," — Send funds across EVM-compatible chains."]}]}]},"headings":[{"value":"Send your first transaction","id":"send-your-first-transaction","depth":1},{"value":"Submit a transaction","id":"submit-a-transaction","depth":2},{"value":"Approve the transaction","id":"approve-the-transaction","depth":2},{"value":"Sign the transaction","id":"sign-the-transaction","depth":2},{"value":"Track the transaction","id":"track-the-transaction","depth":2},{"value":"Troubleshoot common issues","id":"troubleshoot-common-issues","depth":2},{"value":"What to do next","id":"what-to-do-next","depth":2},{"value":"Automate with the API","id":"automate-with-the-api","depth":3},{"value":"Integrate with your systems","id":"integrate-with-your-systems","depth":3},{"value":"Add oversight and controls","id":"add-oversight-and-controls","depth":3},{"value":"Learn more about the platform","id":"learn-more-about-the-platform","depth":3}],"frontmatter":{"title":"Send your first transaction","seo":{"title":"Send your first transaction"}},"lastModified":"2026-10-09T11:09:54.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/products/wallet/get-started/console/send-your-first-transaction","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}