Access and activation
Fiat deposit URL permission errors
Fiat deposit URL permission errors
POST /api/v4/main-account/fiat-deposit-url endpoint requires per-account activation and is not enabled by default. Contact WhiteBIT support and provide the API key to request access. Fiat operations also depend on completed Phase 2 institutional onboarding — see How to get started.KYC requirement for fiat withdrawals
KYC requirement for fiat withdrawals
Fiat deposits
SEPA deposit matching by payment reference
SEPA deposit matching by payment reference
uniqueId submitted in the fiat-deposit-url request must appear in the SEPA payment-reference field of the bank transfer. WhiteBIT uses that string to match the incoming settlement to the original deposit request. If the end user omits or alters the reference, the deposit may settle unmatched and require manual reconciliation through institutional support. Validate the reference field in the payment UX. See SEPA payment reference.Provider value for SEPA EUR deposits
Provider value for SEPA EUR deposits
provider value from the Asset Status response, and confirm the enabled provider for SEPA EUR deposits on the account with the account manager.VISAMASTER Referer header requirement
VISAMASTER Referer header requirement
Referer header when opening the invoice link. Messengers and email clients often strip the header, and without it WhiteBIT redirects the end user to the homepage instead of the payment provider. Test the redirect in the real delivery surface — mobile app, email link, or in-app web view — before go-live. See Card-provider flows.Fiat currencies not depositable via API
Fiat currencies not depositable via API
can_deposit in the Asset Status response before generating an invoice; tickers without API deposit support run through the WhiteBIT web interface.Fiat withdrawals
Fee handling in /withdraw and /withdraw-pay
Fee handling in /withdraw and /withdraw-pay
POST /api/v4/main-account/withdraw treats amount as including the fee, so the recipient receives amount - fee. POST /api/v4/main-account/withdraw-pay charges the fee on top, so the recipient receives the exact amount specified. Select the endpoint that matches whether the specified amount is the debit or the credit.Partial fiat withdrawals (status 18)
Partial fiat withdrawals (status 18)
partialEnable: true raises the maximum limit for fiat withdrawals. The withdrawal can then complete partially, surfacing as the Partially successful status (18). The application must reconcile requestAmount against processedAmount in the history record and surface the remainder to operations. See the failure and exception paths.Reconciliation and monitoring
Webhook delivery and replay behavior
Webhook delivery and replay behavior
POST /api/v4/main-account/history (transactionMethod: 1 for deposits, 2 for withdrawals) on a regular cycle, and deduplicate against received events. See Webhooks and the reconciliation pattern.Transaction identifier casing across the API
Transaction identifier casing across the API
Webhook source IP allowlisting
Webhook source IP allowlisting
Fiat settlement timing
Fiat settlement timing
Conversion
Convert across the fiat and crypto legs
Convert across the fiat and crypto legs
POST /api/v4/convert/estimate, then execute it with POST /api/v4/convert/confirm before the quote expires. The convert service routes balances internally; no manual Main↔Trade transfers are required. See Convert.Compliance
Travel Rule holds on inbound deposits (EEA and Turkey)
Travel Rule holds on inbound deposits (EEA and Turkey)
USDT alternatives for EEA accounts (MiCA)
USDT alternatives for EEA accounts (MiCA)