Withdraw your balance
Send available bolívares to your own verified Pago Móvil account, or USDT and USDC to a wallet — from the portal or the API — and follow each payout to the end.
What you will do
Only the available part of a balance can leave. New live credits are held for 24 hours first (see Read balance & holds). Each destination is verified once before the first withdrawal.
- Bolívares: your own Pago Móvil (cédula/RIF, phone, bank).
- USDT/USDC: a wallet your business controls, and business verification approved on Live.
Steps: bolívares to your Pago Móvil
- Save your payout account
Portal → Payouts → Tenant instant credit account, or
PUT /v1/tenant/payout-account. - Verify it
Start verification (
POST /v1/tenant/payout-account/verify/start), read the two small deposits on your statement, and confirm them within 2 days (POST /v1/tenant/payout-account/verifywithamount1andamount2). After changing the destination later, it waits 1 business day before it can be used. - Withdraw
Portal → Payouts → Withdraw to Pago Móvil, or
POST /v1/payouts/instantwithmonto(taken from your available balance),conceptoand a uniqueexternalRef. The response shows the fee and the net your bank receives. - Follow it
Wait for
payout.completedorpayout.failed, or readGET /v1/payouts/by-ref/:externalRef.
curl --request POST "${API_URL}/v1/payouts/instant" \
--header "content-type: application/json" \
--header "x-api-key: ${VEXPAY_API_KEY}" \
--data '{ "monto": "5000.00", "concepto": "Weekly withdrawal", "externalRef": "wd-2026-w44" }'Steps: USDT or USDC to a wallet
- Portal: save your payout wallet
Portal → USDT → Payout wallet: network, address, tag if the network needs one, and a label. Confirm the wallet belongs to your business. It can be used 24 hours after you save or change it.
- Portal: withdraw
Withdraw USDT, enter the amount, check "Network fee" and "Wallet receives", and confirm. Larger amounts wait for a VEXPay review.
- API: check the network
GET /v1/crypto/networks?currency=USDT&amount=…returns the payout fee, the minimum, and whether that amount can be sent now on each network. - API: send
POST /v1/crypto/payoutswithnetwork,address,tagif needed,amount, optionalcurrencyand anidempotencyKey. Amount plus fee are taken from that coin's available balance.
curl --request POST "${API_URL}/v1/crypto/payouts" \
--header "content-type: application/json" \
--header "x-api-key: ${VEXPAY_API_KEY}" \
--data '{
"currency": "USDT",
"network": "TRC20",
"address": "TXYZ...",
"amount": "250.00",
"idempotencyKey": "usdt-wd-0042"
}'Check that it worked
payout.completedarrived (stablecoins include thetxHash).- The money shows in your bank or wallet, and the payout appears in Portal → Payouts or USDT.
- If a payout fails, the amount and its fee return to your available balance at once.
If something goes wrong
| Symptom | Likely cause | What to do |
|---|---|---|
422 insufficient_balance with heldVes/heldUsdt and nextReleaseAt | Part of the money is still held | Withdraw the available amount now and the rest after nextReleaseAt. Do not retry in a loop. |
422 payout_account_not_verified or payout_account_cooling | Account not verified, or changed less than 1 business day ago | Finish verification, or wait for payoutEligibleAt. |
Status awaiting_approval | In its first 30 days an account can pay out up to USD 300 in any rolling 24 hours (unless VEXPay set a different limit for you); this payout went over it | No action needed; VEXPay reviews it and sends it or returns the funds. |
Bolívar payout stays pending | The bank has not answered yet | Do not create another payout. Wait for payout.completed or payout.failed. |
422 destination_cooling / destination_under_review / destination_blocked | Wallet safety checks | Wait for the 24 hours to pass, or contact VEXPay. |
403 kyb_not_approved | Business verification not approved (Live) | Finish business verification. |
422 network_unavailable or amount_below_minimum | The network cannot send that amount now, or it is under the minimum | Try another network or a larger amount. |
409 external_ref_conflict / idempotency_key_reused | The same reference was reused with different data | Use a new reference for a new payout. |
Fees: Pricing. Related: Balances & holds · Merchants & payouts · USDT & USDC