Skip to main content

Overview

Withdrawals allow you to transfer cryptocurrency from your InventPay account to any external wallet address. Understanding the withdrawal process helps you manage your funds efficiently and plan for fees and timing.

What is a Withdrawal?

A withdrawal is a transfer of cryptocurrency from your InventPay available balance to an external wallet address that you control.

Fast Processing

Most withdrawals processed within minutes

Any Wallet

Send to any valid wallet address

Automatic Fees

Fees calculated automatically

Real-time Status

Track withdrawal status in real-time

Withdrawal Lifecycle

Withdrawal States

Initial State: Withdrawal request created
  • Request validated
  • Balance and limits checked
  • Awaiting system processing
Duration: Usually less than 1 minute
Active State: Transaction submitted to blockchain - Transaction broadcasted - Awaiting network confirmations - Transaction hash available Duration: Varies by network (see table below)
Final State: Withdrawal successfully confirmed - Required confirmations reached - Funds delivered to destination - Transaction complete Duration: N/A (final state)
Final State: Withdrawal failed
  • Error during processing
  • Funds automatically returned to balance
  • Can create new withdrawal
Duration: N/A (final state)

Creating a Withdrawal

Using the API

const withdrawal = await sdk.createWithdrawal({
  amount: 100,
  currency: "USDT_BEP20",
  destinationAddress: "0x1E3D6848dE165e64052f0F2A3dA8823A27CAc22D",
  description: "Monthly payout",
});

console.log("Withdrawal ID:", withdrawal.data.withdrawalId);
console.log("Status:", withdrawal.data.status);
console.log("Net Amount:", withdrawal.data.metadata.netAmount);

Create Withdrawal API

View complete API documentation

Withdrawal Requirements

Minimum Amounts

Each cryptocurrency has a minimum withdrawal amount:
CurrencyMinimum WithdrawalReason
BTC0.001 BTC (~$40)Network fee efficiency
ETH0.01 ETH (~$20)Gas fee efficiency
LTC0.1 LTC (~$7)Network fee efficiency
USDT_ERC2010 USDTGas fee efficiency
USDT_BEP2010 USDTProcessing efficiency
Attempting to withdraw less than the minimum will result in an error. Network fees would consume too large a percentage of small withdrawals.

Withdrawal Limits

Daily Limits:
  • BTC: 10 BTC
  • ETH: 50 ETH
  • LTC: 500 LTC
  • USDT: 10,000 USDT
Monthly Limits:
  • BTC: 100 BTC
  • ETH: 500 ETH
  • LTC: 5,000 LTC
  • USDT: 100,000 USDT
Limits reset automatically. Daily limits reset every 24 hours, monthly limits reset on the 1st of each month.

Balance Requirements

You must have sufficient available balance to cover:
  1. Withdrawal amount
  2. Network fee
  3. Service fee (0.5%)
Example Calculation:
Withdrawal Request: 100 USDT
Service Fee (0.5%): 0.50 USDT
Network Fee: 0.10 USDT (estimated)
Required Balance: 100.60 USDT

Withdrawal Fees

Fee Structure

All withdrawals include two types of fees:

Service Fee

Rate: 0.5% of withdrawal amountPurpose: Platform maintenance and supportExample: 0.50 USDT on 100 USDT withdrawal

Network Fee

Rate: Variable (depends on blockchain)Purpose: Blockchain transaction costExample: 0.10 USDT for BEP-20 transactions

Fee Examples by Currency

CurrencyService FeeTypical Network FeeTotal Fee (on 100 units)
BTC0.5%~0.0001 BTC~0.0006 BTC
ETH0.5%~0.001 ETH~0.006 ETH
LTC0.5%~0.001 LTC~0.006 LTC
USDT_ERC200.5%~$2-10~$2.50-10.50
USDT_BEP200.5%~$0.10-0.50~$0.60-1.00
Network fees vary based on blockchain congestion. Fees shown are estimates and may be higher during peak times.

Fee Calculation Response

When you create a withdrawal, you’ll receive a detailed fee breakdown:
{
  "amount": "100",
  "feeAmount": "0.60",
  "metadata": {
    "netAmount": 100.0,
    "serviceFee": 0.5,
    "networkFee": 0.1
  }
}

Processing Times

Withdrawal processing times vary by cryptocurrency:
CryptocurrencyProcessing TimeConfirmations Required
Bitcoin (BTC)30-60 minutes3 blocks
Ethereum (ETH)10-30 minutes12 blocks
Litecoin (LTC)10-30 minutes6 blocks
USDT (ERC-20)10-30 minutes12 blocks
USDT (BEP-20)5-15 minutes15 blocks
USDT_BEP20 is fastest: If speed is important, consider using USDT on Binance Smart Chain for significantly faster withdrawals.

Factors Affecting Speed

High transaction volume can slow processing
Higher gas prices can expedite Ethereum transactions
Some networks are busier during certain hours
Large amounts may receive priority processing

Address Validation

InventPay validates all destination addresses before processing:

Validation Checks

1

Format Validation

Ensures address matches cryptocurrency format
2

Checksum Verification

Verifies address checksum (for supported networks)
3

Network Matching

Confirms address is valid for selected network
4

Blacklist Check

Screens against known malicious addresses

Address Format Examples

bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh
Always double-check addresses! Cryptocurrency transactions are irreversible. Sending to the wrong address means permanent loss of funds.

Tracking Withdrawals

Check Withdrawal Status

const withdrawal = await sdk.getWithdrawal("withdrawal-id");

console.log("Status:", withdrawal.data.status);
console.log("TX Hash:", withdrawal.data.transactionHash);

if (withdrawal.data.status === "COMPLETED") {
  console.log("Completed at:", withdrawal.data.completedAt);
}

Blockchain Explorer

Once processing, you can track your withdrawal on blockchain explorers:
NetworkExplorer URL
Bitcoinhttps://blockchair.com/bitcoin/transaction/{hash}
Ethereumhttps://etherscan.io/tx/{hash}
BSChttps://bscscan.com/tx/{hash}
Litecoinhttps://blockchair.com/litecoin/transaction/{hash}

Get Withdrawal API

View API documentation for checking withdrawal status

Failed Withdrawals

Common Failure Reasons

Cause: Not enough funds to cover network fees Solution: System automatically retries with adjusted fees
Cause: Destination address format invalid Solution: Verify address and create new withdrawal
Cause: Blockchain network experiencing problems Solution: System automatically retries; wait or create new withdrawal
Cause: Too many withdrawal attempts Solution: Wait 5 minutes and try again

When a Withdrawal Fails

  1. Automatic Refund: Funds returned to your available balance
  2. Notification: Webhook sent (if configured)
  3. Failure Reason: Check failureReason field
  4. Retry: Create new withdrawal once issue is resolved
If a withdrawal fails, your balance is immediately credited back. There’s no waiting period or manual refund process.

Security Measures

InventPay employs multiple security layers for withdrawals:

Address Whitelisting

Optional whitelist of approved addresses

Two-Factor Auth

Optional 2FA requirement for withdrawals

Rate Limiting

Automatic limits prevent abuse

Anomaly Detection

AI-powered fraud detection

Enable Enhanced Security

1

Enable 2FA

Require two-factor authentication for withdrawals
2

Set Up Whitelist

Pre-approve destination addresses
3

Configure Notifications

Get alerts for all withdrawal activity
4

Set Thresholds

Require manual approval for large withdrawals

Best Practices

Always double-check destination addresses before withdrawing
Send a small test transaction to new addresses
Choose networks with lower fees for smaller withdrawals
Track daily/monthly limits before large withdrawals
Fastest and cheapest option for USDT withdrawals
Don’t let large balances accumulate; withdraw regularly

Withdrawal Scheduling

For businesses with regular payout needs:

Automated Withdrawals

  • Schedule recurring withdrawals
  • Set up automatic payouts on specific dates
  • Configure minimum balance triggers
  • Multiple beneficiary addresses

Contact Sales

Enterprise features available for high-volume merchants

Tax and Compliance

Record Keeping

InventPay provides withdrawal records for tax purposes:
  • Transaction history export (CSV, PDF)
  • Detailed fee breakdowns
  • Timestamp and amount records
  • Blockchain transaction IDs

Reporting

1

Access Dashboard

Log in to your InventPay dashboard
2

Navigate to Withdrawals

View complete withdrawal history
3

Export Data

Download records in your preferred format
4

Share with Accountant

Provide records to tax professional

Troubleshooting

Normal Duration: Up to 5 minutes If Longer: Check system status or contact support
Cause: Network and service fees deducted Solution: Review fee breakdown in withdrawal details
Cause: Must reserve amount for fees Solution: Reduce withdrawal amount by ~1%
Cause: Invalid format or wrong network Solution: Verify address matches currency network

Next Steps