{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-products/wallet/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["admonition"]},"type":"markdown"},"seo":{"title":"Manage address book via the console","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":"manage-address-book-via-the-console","__idx":0},"children":["Manage address book via the console"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The address book stores information about external counterparties and their blockchain addresses. Ripple Custody (Wallet) requires you to register every external destination in the address book before you can send funds to it. Keep the address book accurate, governed, and compliant."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Prerequisite"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Each address belongs to a counterparty, so you must create a counterparty before adding any addresses."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"address-book-actions","__idx":1},"children":["Address book actions"]},{"$$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":"Action"},"children":["Action"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Console role"},"children":["Console role"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Console procedure"},"children":["Console procedure"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"API procedure"},"children":["API procedure"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Create a counterparty"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Owner, Administrator"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"#create-a-counterparty-via-the-console"},"children":["Create a counterparty"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/address-book/manage-address-book-api#create-a-counterparty-via-the-api"},"children":["Create a counterparty"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["List and get counterparties"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["All except Viewer"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"#list-and-get-counterparties-via-the-console"},"children":["List and get counterparties"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/address-book/manage-address-book-api#list-and-get-counterparties-via-the-api"},"children":["List and get counterparties"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Update a counterparty"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["-"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["-"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/address-book/manage-address-book-api#update-a-counterparty-via-the-api"},"children":["Update a counterparty"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Add an address"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Owner, Administrator"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"#add-an-address-via-the-console"},"children":["Add an address"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/address-book/manage-address-book-api#add-an-address-to-a-counterparty-via-the-api"},"children":["Add an address to a counterparty"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["List addresses"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["All except Viewer"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"#list-addresses-via-the-console"},"children":["List addresses"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/address-book/manage-address-book-api#list-addresses-via-the-api"},"children":["List addresses"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Delete an address"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Owner, Administrator"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"#delete-a-counterparty-or-address-via-the-console"},"children":["Delete a counterparty or address"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/address-book/manage-address-book-api#get-or-delete-an-address-via-the-api"},"children":["Get or delete an address"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Delete a counterparty"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Owner, Administrator"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"#delete-a-counterparty-or-address-via-the-console"},"children":["Delete a counterparty or address"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/address-book/manage-address-book-api#delete-a-counterparty-via-the-api"},"children":["Delete a counterparty"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Require approval for new addresses"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Owner, Administrator"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"#require-approval-for-new-entries-via-the-console"},"children":["Require approval for new entries"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["-"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Permissions:"]}," In the console, owners and administrators can create, update, and delete counterparties and addresses. Owners, administrators, proposers, and approvers can approve addresses. See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/organization-and-access/users-and-roles#addresses"},"children":["User roles and permissions"]},". The API procedures need an API credential of type ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CONTROLS"]},". See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/address-book/manage-address-book-api#prerequisites"},"children":["Prerequisites"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"create-a-counterparty-via-the-console","__idx":2},"children":["Create a counterparty via the console"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required role:"]}," Owner or Administrator."]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Go to ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Address book"]}," > ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Counterparties"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Add counterparty"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Enter the counterparty ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["name"]}," and optional ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["description"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Select the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Type"]},". ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Organization"]}," is selected by default:",{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Individual"]},": A person. Enter their first name, last name, and address details."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Organization"]},": A company or institution. Enter the legal name (at least 5 characters) and address details."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Dapp"]},": A decentralized application (smart contract)."]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Next"]},". Ripple Custody (Wallet) creates the counterparty."]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":"Compliance checks"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Ripple Custody (Wallet) runs compliance checks on counterparty and address details, so new entries may not be available for immediate use. The platform validates entries before activating them."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/get-started-add-counterparty.614e55ff09609bdd0f5fc92a8429ea5f686dc829ae71b4539496e88cd6b6ec68.9fccc40d.png","alt":"The Create counterparty form with the Dapp, Individual, and Organization types"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"list-and-get-counterparties-via-the-console","__idx":3},"children":["List and get counterparties via the console"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required role:"]}," Owner, Administrator, Proposer, Approver, or Auditor."]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Go to ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Address book"]}," > ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Counterparties"]},". The table lists each counterparty with its ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Counterparty"]}," name, ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["ID"]},", number of ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Active addresses"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Type"]},", and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Created"]}," date."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["To find a counterparty, enter text in ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Search counterparties"]},". To clear the search, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Clear search"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["To filter by type, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Filters"]},", select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Type"]},", and then select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Dapp"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Individual"]},", or ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Organization"]},". The active filter appears as a chip above the table. To remove it, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Clear all"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["To sort the table, select the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Counterparty"]}," or ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Created"]}," column heading."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["To get a counterparty's details, select its row. The counterparty page shows its type, ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["ID"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Active addresses"]},", and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Last updated"]}," date. It also shows the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Legal name"]}," and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Registered office"]}," of an organization, or the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Name"]}," and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Postal address"]}," of an individual."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The counterparty page's ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Addresses"]}," tab lists the counterparty's addresses, with the same search and filters as the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Addresses"]}," tab of the address book, except the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Counterparty"]}," filter. From the counterparty page, you can also select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Add address"]}," to add an address to this counterparty, or delete the counterparty."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/address-book-counterparties-list.04bc4574668f510d80e8a734df4eb576fb0aa6e3f73ce7117f8a1ec34a22b784.9fccc40d.png","alt":"The Counterparties tab of the address book, with the search box, the Filters button, and the counterparties table"},"children":[]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/address-book-counterparty-details.45b24e04f7250263d9154632307b86c44cf9883c7abdaf65315562426736628f.9fccc40d.png","alt":"A Dapp counterparty page with its type, ID, active addresses, last updated date, and Addresses tab"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"add-an-address-via-the-console","__idx":4},"children":["Add an address via the console"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required role:"]}," Owner or Administrator."]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Go to ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Address book"]}," > ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Addresses"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Add address"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Select the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["counterparty"]}," the address belongs to."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Enter the destination address in ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Wallet address"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Under ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Supported blockchains"]},", select one or more blockchains supported by the address."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If you selected XRP Ledger, you can optionally enter a ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Destination tag"]}," to identify a specific counterparty at this r-address. See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"#xrp-ledger-destination-tags"},"children":["XRP Ledger destination tags"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Enter a ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["name"]}," for the address (description is optional)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If the destination is ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["custodial"]}," (controlled by a custodian such as Coinbase), select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Add custodian details"]},". Under ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Select custodian"]},", enter the custodian's name, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Search"]},", and then select the custodian."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Select the submission checkbox to confirm that the custodial information you're submitting about ownership of the destination wallet is correct."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Add address"]},"."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If your organization has an ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Addresses"]}," approval group, the address shows ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Inactive | Approval pending"]}," until approvers approve it, and then ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Active | Enabled"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/address-book-add-address.b623c849ce6bbcda3fdd89fefed11517027e7388425d6d8119ccb16414a48e39.9fccc40d.png","alt":"The Add address dialog with a counterparty, wallet address, XRP Ledger blockchain, destination tag, and name"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"list-addresses-via-the-console","__idx":5},"children":["List addresses via the console"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required role:"]}," Owner, Administrator, Proposer, Approver, or Auditor."]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Go to ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Address book"]}," > ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Addresses"]},". The table lists each address with its ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Name"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Address"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Blockchains"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Counterparty"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["3rd party custodian"]},", and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Status"]},"."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To find an address, enter text in ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Search addresses"]},". To clear the search, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Clear search"]},"."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To filter the table, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Filters"]},", select a category under ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Filter by"]},", and then set the filter:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Blockchain"]},": Select one or more blockchains."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Counterparty"]},": Enter a counterparty ID."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Date created"]}," and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Date updated"]},": Select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Today"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Last 48 hours"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Last 7 days"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Last 30 days"]},", or ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["This month"]},", or select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Custom"]}," and enter a ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["From"]}," and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["To"]}," date."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Description"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["ID"]},", and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Name"]},": Enter a value."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Status"]},": Select a status, for example ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Enabled"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Creation approval pending"]},", or ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Deletion approval pending"]},"."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For the counterparty, description, ID, and name filters, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Include"]}," to show matching addresses or ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Exclude"]}," to hide them. Each active filter appears as a chip above the table, and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Filters"]}," shows the number of active filters. To remove the filters in a category, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Clear all"]},". To remove all filters, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Clear filters"]},"."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To sort the table by name, select the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Name"]}," column heading."]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/address-book-addresses-filters.d1c35431265289aa19512817c016ff6dcd7534d60f27be2958e5efe84814c3dd.9fccc40d.png","alt":"The Addresses tab of the address book with the Filters panel open on the Status category and a Status: Enabled filter chip"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"xrp-ledger-destination-tags","__idx":6},"children":["XRP Ledger destination tags"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Destination tags are optional 32-bit unsigned integers (0 to 4,294,967,295) that identify a specific counterparty at an XRP Ledger r-address. Exchanges commonly use a single r-address for many customers and rely on the destination tag to route funds to the correct account."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When adding an XRP Ledger address, you can enter a destination tag alongside the r-address. Ripple Custody (Wallet) treats the r-address and destination tag together as a unique address, so you can add multiple entries that share the same r-address but differ by tag."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Tagless addresses"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You can leave the destination tag empty for r-addresses that don't require a tag. A tagless entry is distinct from any entry with a tag — matching is exact."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"how-destination-tags-affect-matching","__idx":7},"children":["How destination tags affect matching"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Address lookup"]}," — Searches match on the full r-address and destination tag combination. Two address book entries with the same r-address but different tags resolve independently."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Transaction history"]}," — New transactions display the counterparty whose r-address and destination tag exactly match the transaction's destination. Ripple Custody (Wallet) doesn't backfill historical transactions."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Policies"]}," — Policies that reference an address book entry apply to the specific r-address and destination tag combination on that entry."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"delete-a-counterparty-or-address-via-the-console","__idx":8},"children":["Delete a counterparty or address via the console"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required role:"]}," Owner or Administrator."]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Find the counterparty or address in its respective table."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Open the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Actions"]}," menu and select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Delete address"]}," or ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Delete counterparty"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["In the dialog, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Delete address"]}," or ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Delete counterparty"]}," again to confirm."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["With an ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Addresses"]}," approval group, an address deletion takes effect after approvers approve it, and the address shows ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Active | Approval pending"]}," until then. Counterparty deletions take effect immediately."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You must delete all of a counterparty's addresses before you can delete the counterparty. Review any ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/policies/manage-policies"},"children":["transaction policies"]}," that reference the deleted entries. Removing an address may unintentionally narrow what a policy permits."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"how-the-address-book-fits-into-the-security-model","__idx":9},"children":["How the address book fits into the security model"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Address book entries are ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["global"]},": a counterparty and its addresses are available to all wallets in your organization. But the address book alone doesn't grant permission to send. Two conditions must be true:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["You registered the address in the address book under a counterparty."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["A ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/policies/manage-policies"},"children":["transaction policy"]}," on the sending wallet permits that address (or its counterparty) as a destination."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This separation means one user can register counterparties in the address book, while a different user controls which wallets can actually send to them through policies."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Internal transfers"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Transfers between wallets within your own organization don't require address book entries. The address book is only for external destinations."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"governance-for-address-book-changes","__idx":10},"children":["Governance for address book changes"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Uncontrolled address book modifications are a significant risk: a malicious or compromised user could register a fraudulent address and then send funds to it. Mitigate this with layered controls."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"require-approval-for-new-entries-via-the-console","__idx":11},"children":["Require approval for new entries via the console"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Set up an approval group for address book entries so that new addresses require review before they become active, and address deletions require review before they take effect. Counterparties don't go through approval."]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Go to the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Controls"]}," section of the console and select the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Approval groups"]}," tab."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Create an approval group with the type ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Addresses"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Select approvers and set a threshold."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/approvals/configure-approval-flows#create-an-approval-group-via-the-console"},"children":["Create an approval group"]}," for the full setup."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"restrict-who-can-create-entries","__idx":12},"children":["Restrict who can create entries"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Only users with the Owner or Administrator role can create address book entries. Assign the Proposer, Approver, Viewer, or Auditor role to users who must not modify the address book. See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/organization-and-access/users-and-roles#counterparties"},"children":["Roles and permissions"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"audit-address-book-changes","__idx":13},"children":["Audit address book changes"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Ripple Custody (Wallet) logs all address book modifications (creates, updates, deletes). Use ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/integrations-and-monitoring/audit-logging"},"children":["audit logging"]}," to track who changed what and when, and to detect unauthorized modifications."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"compliance-considerations","__idx":14},"children":["Compliance considerations"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The address book helps you meet regulatory requirements for counterparty due diligence:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["EU Transfer of Funds regulation"]}," — requires custodians and wallet providers to collect and verify counterparty information (travel rule data) for inbound and outbound transactions. The address book provides a structured way to record this information. When adding an address, mark custodial destinations and identify the custodian."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Counterparty due diligence"]}," — record legal names, physical addresses, and custodian information to support your organization's know-your-customer (KYC) and anti-money laundering (AML) processes."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Sanctions screening"]}," — Ripple Custody (Wallet) runs compliance checks on counterparty and address details, so new entries may not be available for immediate use."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To exchange Travel Rule data with counterparty VASPs, see ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/compliance/travel-rule"},"children":["Travel Rule"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"operational-best-practices","__idx":15},"children":["Operational best practices"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Verify addresses through an independent channel"]}," — before registering a new external address, confirm it with the counterparty through a separate communication channel (phone, in-person). Don't rely solely on email."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Review the address book regularly"]}," — remove stale counterparties and addresses that are no longer needed. Each active entry is a potential transaction destination."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Coordinate with policies"]}," — when you delete an address, review any transaction policies that reference it. Deleting an address may unintentionally narrow what a policy permits."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Document counterparty relationships"]}," — use the description field to record the business context for each counterparty (who they are, why they are in the address book, who requested the addition)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Use counterparty types accurately"]}," — classify each entry correctly (Individual, Organization, or Dapp) to support compliance reporting and filtering."]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"API documentation"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To manage the address book programmatically, see ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/address-book/manage-address-book-api"},"children":["Manage the address book via the API"]},"."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"related-guides","__idx":16},"children":["Related guides"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/address-book"},"children":["Address book overview"]}," — Conceptual overview"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/policies/manage-policies"},"children":["Manage policies via the console"]}," — Reference addresses in policies"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/governance-and-controls/approvals/configure-approval-flows"},"children":["Configure approval flows"]}," — Require approval for new addresses"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/wallet/integrations-and-monitoring/audit-logging"},"children":["Configure audit logging"]}," — Track address book changes"]}]}]},"headings":[{"value":"Manage address book via the console","id":"manage-address-book-via-the-console","depth":1},{"value":"Address book actions","id":"address-book-actions","depth":2},{"value":"Create a counterparty via the console","id":"create-a-counterparty-via-the-console","depth":2},{"value":"List and get counterparties via the console","id":"list-and-get-counterparties-via-the-console","depth":2},{"value":"Add an address via the console","id":"add-an-address-via-the-console","depth":2},{"value":"List addresses via the console","id":"list-addresses-via-the-console","depth":2},{"value":"XRP Ledger destination tags","id":"xrp-ledger-destination-tags","depth":2},{"value":"How destination tags affect matching","id":"how-destination-tags-affect-matching","depth":3},{"value":"Delete a counterparty or address via the console","id":"delete-a-counterparty-or-address-via-the-console","depth":2},{"value":"How the address book fits into the security model","id":"how-the-address-book-fits-into-the-security-model","depth":2},{"value":"Governance for address book changes","id":"governance-for-address-book-changes","depth":2},{"value":"Require approval for new entries via the console","id":"require-approval-for-new-entries-via-the-console","depth":3},{"value":"Restrict who can create entries","id":"restrict-who-can-create-entries","depth":3},{"value":"Audit address book changes","id":"audit-address-book-changes","depth":3},{"value":"Compliance considerations","id":"compliance-considerations","depth":2},{"value":"Operational best practices","id":"operational-best-practices","depth":2},{"value":"Related guides","id":"related-guides","depth":2}],"frontmatter":{"title":"Manage address book via the console","seo":{"title":"Manage address book via the console"}},"lastModified":"2026-10-09T11:09:54.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/products/wallet/governance-and-controls/address-book/manage-address-book","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}