Flow Builder

Build your money-movement flow — pick a source and a destination to see the path and the exact Hodle API calls.

Flow
Tether USD WalletExternal · Tron
Fund via Tron
Hodle Switch
Convert USDT → BRLA
Settle via PIX
Brazilian Real AccountExternal · PIX
Receive via PIX
Hover any node to see what happens inside the flow.
Code· 6 steps
1Get a quote
Locks the rate for 2 min — returns quoteToken + outputAmount.
curl -X POST https://api.hodle.com.br/api/quote \
  -H 'Authorization: Bearer $HODLE_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ "inputCurrency": "USDT", "inputPaymentMethod": "TRON", "outputCurrency": "BRL", "outputPaymentMethod": "PIX", "inputAmount": "100.00" }'
2Create subaccount
Segregated account for your end-user — returns subAccountId.
curl -X POST https://api.hodle.com.br/api/subaccount \
  -H 'Authorization: Bearer $HODLE_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ "name": "Sam Chen" }'
3Provision wallet
curl -X POST https://api.hodle.com.br/api/wallet/create \
  -H 'Authorization: Bearer $HODLE_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ "subAccountId": "$SUBACCOUNT_ID", "network": "tron" }'
4Submit KYC
Once per subaccount — wait for APPROVED.
curl -X POST https://api.hodle.com.br/api/kyc \
  -H 'Authorization: Bearer $HODLE_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ "subAccountId": "$SUBACCOUNT_ID", "fullName": "Sam Chen", "taxIdNumber": "...", "countryOfTaxId": "BRA" }'
5Trigger BRL payout
curl -X POST https://api.hodle.com.br/api/wallet/payout \
  -H 'Authorization: Bearer $HODLE_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ "subAccountId": "$SUBACCOUNT_ID", "value": 10000, "network": "tron", "pixKey": "sam@acme.com", "pixKeyType": "EMAIL", "quoteToken": "$QUOTE_TOKEN" }'
6Poll status
Poll until COMPLETED, or use webhooks.
curl -X GET https://api.hodle.com.br/api/wallet/payout/$TRANSACTION_ID \
  -H 'Authorization: Bearer $HODLE_API_KEY'

How it maps

Every selection resolves to one documented Hodle route. The flow always opens with POST /api/quote to lock the rate, then executes:

  • USDT / USDC → BRL (PIX) — the Stable ↔ PIX off-ramp: quote → create subaccount → wallet → KYC → payout → poll.
  • BTC (Lightning) → BRL (PIX) — the Lightning ↔ PIX off-ramp: quote → issue invoice → payer pays → webhooks.
  • BRL (PIX) → USDT / USDC / BTC — the Deposit Asset on-ramp: quote → deposit/asset → webhook.
  • BTC (Lightning) → USDB (Spark) — the Flashnet AMM swap: quote → receive Lightning → swap → webhook.

The generated calls are real endpoints — see the API Reference for full schemas, and Authentication for the bearer token.