1. Wallets
Artha All Module Api's
  • Introduction
  • Authentication
  • KYC/KYB Requirements
  • API Setup Guide
  • Products
    • List Products
      GET
    • Get Product
      GET
    • Get Customer Product Status
      GET
  • Customers
    • Create Customer
      POST
    • List Customers
      GET
    • Get Customer
      GET
    • Submit Applicant (KYC/KYB)
      POST
    • Create Onboarding Session
      POST
  • Wallets
    • Beneficiary
      • Create Crypto Beneficiary
      • Update Crypto Beneficiary
      • List Crypto Withdraw Beneficiaries
    • Create Wallet
      POST
    • Get Wallet Address
      GET
    • Get Customer Balances
      GET
    • List Wallets
      GET
    • List Withdrawals
      GET
    • List Withdrawal Networks
      GET
    • Preview Withdrawal Summary
      POST
    • Create Crypto Withdrawal
      POST
  • Cards
    • Issuance
      • Issue Card
      • List Cards
      • List Customer Cards
      • Get Card Details
      • Get Sensitive Card Details
    • Funding
      • Top Up Card
      • Get Card Balance
      • Get Top-Up Status
      • List Top-Up History
    • Operations
      • Resend Activation Code
      • Activate Card
      • Set Card PIN
      • Change Card PIN
      • Update Card Limits
      • Freeze Card
      • Unfreeze Card
      • Replace Card
      • Cancel Card
      • Get Card Limits
      • Show Card PIN Details
      • Get PIN View Iframe URL
      • Get PIN Change Iframe URL
      • Get PIN Set Iframe URL
      • Get Card View Iframe URL
      • Show Card PIN
  • Payees
    • Create a payee for a customer.
      POST
    • List a customer's payees.
      GET
    • Update a payee.
      PUT
    • Retrieve a payee by id.
      GET
    • Look up an existing payee.
      GET
    • List the currencies a payee can be created in.
      GET
    • List the accepted payment purpose codes for a payee.
      GET
    • List the countries a payee can be created in.
      GET
    • List currency/country pairings for payees.
      GET
    • List the accepted beneficiary relationship codes.
      GET
  • Payments
    • Onboarding
      • List the customer's payout-currency configuration sections.
      • Enable a payout-currency section for the customer.
      • Get the customer's terms-of-service acceptance status.
      • Enable or disable a payout-currency section.
    • Quote
      • List the currencies a beneficiary can be paid in under a product.
      • List the payout rails available for a product and beneficiary.
      • Create an FX quote giving the rate and fee for a cross-currency payout.
    • Order
      • Submit a payout order to send money to a beneficiary.
      • Retrieve the on-chain address to fund an order.
      • Retrieve the status and settlement detail of a payout order.
    • Lookups
      • List the accepted payment purpose codes for a payout.
      • List the accepted source-of-funds codes for a payout.
      • List the document types accepted on a payout order.
  • Banks
    • Accounts
      • Create Bank Account
      • Get Account Details
      • Get Account Issuance Status
    • Withdraw
      • Create Withdrawal Quote
      • List Withdrawal Purposes
      • Get Payment Schemes
      • Execute Withdrawal
  • Exchange
    • Quote
      • Get Exchange Rate
      • Create Price Quote
    • Order
      • Place Exchange Order
  • Transactions
    • List Transactions
    • Get Transaction Details
  • Utilities
    • List Currencies
    • List Countries
    • Get Fee Schedule
    • List Product Occupations
    • List Product Industry Codes
    • Upload File
  • Webhook's
    • Wallets Webhooks
    • Banks Webhooks
    • Payments Webhooks
    • Exchange Webhooks
    • Card Webhooks
  1. Wallets

Preview Withdrawal Summary

POST
/api/v1/wallets/withdraw/estimateFee
Calculates a fee and received-amount estimate for a prospective crypto withdrawal without executing it. Use this to show the customer the fee, exchange rate, and net amount before calling POST /api/v1/wallets/withdraw with the same payload. The quote is valid for the number of seconds indicated by timer.
Prerequisites
The customer must have an active wallet for the given currency + network, and the beneficiary must exist. The source wallet is resolved internally from customerId + currency + network; if no active wallet matches, the API returns 404 WALLET_NOT_FOUND with a clear message.
amount must be at least the minLimit returned by GET /api/v1/wallets/withdraw/networks for the same currency + network. A smaller amount is rejected with 422 VALIDATION_ERROR: "Amount is less than the minimum withdrawal amount of 10 USDT."
Query Parameters
FieldTypeDescription
customerIdstring (uuid)Unique identifier of the customer requesting the estimate — required
Required Fields
FieldTypeDescriptionConstraints
currencystringCurrency ticker of the source wallet (e.g. USDT)Min: 2 · Max: 20 · Pattern: ^[A-Za-z0-9_-]+$
networkstringBlockchain network of the source wallet (e.g. TRC-20)Min: 2 · Max: 20 · Pattern: ^[A-Za-z0-9_-]+$
beneficiaryIdstring (uuid)Saved beneficiary to send funds to-
amountnumber (double)Gross amount to withdrawMust be greater than 0 and at least the network's minLimit
Response Fields
FieldTypeDescription
data.amountnumberGross amount requested
data.walletCodestringCurrency ticker (e.g. USDT)
data.networkstringNetwork the withdrawal will use (e.g. TRC-20)
data.walletAddressstringDestination on-chain address
data.feenumberFee that will be charged
data.receivedAmountnumberAmount the beneficiary will receive
data.exchangeRatenumberExchange rate applied
data.timerstringSeconds the quote remains valid
requestIdstringUnique identifier of this API request
timestampstring (date-time)Server timestamp of the response (UTC)

Request

Authorization
or
Query Params

Header Params

Body Params application/jsonRequired

Examples

Responses

🟢200
application/json
OK.
Bodyapplication/json

🟠401
🟠422
Request Request Example
Shell
JavaScript
Java
Swift
curl --location '/api/v1/wallets/withdraw/estimateFee?CustomerId=' \
--header 'X-API-Key;' \
--header 'X-Signature;' \
--header 'X-Timestamp;' \
--header 'X-Nonce;' \
--header 'X-Body-Hash;' \
--header 'Content-Type: application/json' \
--data '{
    "currency": "USDT",
    "network": "TRC-20",
    "beneficiaryId": "8a1f4e62-19c7-4b83-9d05-6f2ac31de470",
    "amount": 25.5
}'
Response Response Example
{
    "data": {
        "amount": 25.5,
        "walletCode": "USDT",
        "network": "TRC-20",
        "walletAddress": "TNXtjoJVXzABPqawSmmX27S2iCsL3RbAhG",
        "fee": 1.0,
        "receivedAmount": 24.5,
        "exchangeRate": 1.0,
        "timer": "60"
    },
    "requestId": "77b1d0e94ca24f38b5e6c2a7f091d354",
    "timestamp": "2026-08-21T10:05:38.6613092Z"
}
Modified at 2026-08-22 10:27:38
Previous
List Withdrawal Networks
Next
Create Crypto Withdrawal
Built with