Wallet & Payouts
The Fangate wallet backend exposes creator balances, affiliate revenue, transaction history, and payout requests.
Wallet endpoints
GET /api/walletGET /api/wallet/affiliatePOST /api/wallet/cashout
Wallet balance model
The live wallet resource currently returns:
availableholdpendingtotalreferral_revenuecashout_availabletransactions
Balance meanings
Available
Funds that the creator can currently cash out.
Hold
Funds that exist in the wallet but are still under a hold period or similar release rule.
Pending
Funds already moved into the payout-processing state.
Total
Aggregate view across wallet balance categories.
Referral revenue
Affiliate earnings exposed separately for creator reporting.
Cashout behavior
Current endpoint:
POST /api/wallet/cashout
Current backend behavior:
- no request body is required
- the backend attempts to create a payout for the current available amount
- on success it returns a success envelope with the message
Cashout created successfully - if no funds are available it returns an error such as
No available funds
Affiliate wallet view
GET /api/wallet/affiliate returns affiliate-specific revenue data using the affiliate resource shape. This is separate from the broader wallet summary.
Transaction history
The wallet summary includes a transaction collection. Integrators should treat the backend-provided resource as the source of truth for:
- transaction timestamps
- direction/type labeling
- amounts shown to the creator
Payout prerequisites
Whether a creator can cash out depends on:
- available balance
- payout / bank information present on the user account
- backend business rules
The payout account lives on the user profile (bank_data). Since 2026-09-27 its type is the creator's choice whatever the currency - IBAN / BIC, US routing number or UK sort code - and one account receives every payout; the payout currency decides the fee rail. The payout is made out to payout_recipient (the company's legal name, or the name on the verified ID), never to a typed-in name. Registration no longer collects the account: a creator adds it under Payout settings, and POST /api/wallet/cashout without one answers 422 payout_account_required.
See Users and bank_account_types[] / withdrawal_fees[] on App data.
Example flow
GET /api/wallet- client confirms
cashout_available=true(it isfalsebelowpayout_minimum, 30.00 in the wallet's currency, and while a payout block applies) POST /api/wallet/cashout- client refreshes
GET /api/walletto observe updated pending / available balances
Integrator guidance
- do not compute creator payout balances locally
- do not assume pending funds are withdrawable
- do not expose payout eligibility based on stale cached wallet data