Wise Developer API & Sandbox Indonesia — Integrasi Payout buat Startup Tech
Lo startup tech Indonesia. Lo butuh automate payment: vendor payout, salary batch, refund customer. Manual lewat UI Wise app = slow + error-prone.
Wise API = solution. Lo integrate ke backend, automate payment end-to-end. Yang bakal kita bahas: API overview, sandbox setup, payout flow, webhook, use case, dan best practices.
Singkatnya: Wise API = automate payout + salary + refund. Sandbox free buat test. Production key buat live. ChatBot Cell siap bantu setup developer.
Wise API Overview
Apa Itu Wise API?
Wise API adalah REST API yang allow developer untuk:
- Create payout (send money to bank account).
- Create quote (get conversion rate).
- Create recipient (save bank account).
- Create transfer (execute send).
- Fund transfer (debit balance).
- Webhook events (real-time status update).
- Batch payout (1,000 recipient single API call).
Documentation: wise.com/api-docs
Authentication: Bearer token (API key dari Wise dashboard).
Wise API vs Competitor
| Aspek | Wise API | Stripe Connect | PayPal Payouts |
|---|---|---|---|
| Coverage | 80+ countries | 47 countries | 200+ countries |
| Fee | 0.5% + flat | 0.25% + $0.10 | 2% + $0.25 |
| Multi-currency | 40+ balances | 135 currencies | 25 currencies |
| Sandbox | Free | Free | Free |
| Documentation | Excellent | Excellent | Good |
| Latency | <500ms | <300ms | <500ms |
| Best for | Cross-border payout | Card payment | PayPal ecosystem |
Setup Wise API — Step by Step
Step 1: Wise Business Account
Lo butuh Wise Business account (not personal). Apply dengan:
- AKTA PT.
- NPWP.
- NIB.
- SiTanda.
- Bank account perusahaan.
Approval 5-10 hari kerja.
Step 2: Generate API Token
- Login Wise Business dashboard.
- Settings → "API tokens".
- Click "Add new token".
- Set permission:
balances.read(read balance).transfers.create(create payout).recipients.create(save recipient).quotes.create(get rate).
- Token generated (string mulai
wise-...). - SAVE securely. Token hanya show sekali.
Step 3: Test di Sandbox
Wise punya sandbox environment untuk test tanpa real money.
- Visit sandbox.wise.com.
- Register sandbox account (terpisah dari production).
- Generate sandbox token.
- Test API call dengan sandbox token.
- Verify flow work end-to-end.
- Setelah verified, switch ke production token.
Penting: Jangan pakai production token untuk testing. Bisa transfer real money.
API Flow — Vendor Payout
High-Level Flow
[Backend lo] → Create Quote → Create Recipient → Create Transfer → Fund Transfer → [Webhook: success] → [Done]
Detailed Steps
Step 1: Create Quote (get conversion rate)
POST https://api.wise.com/quotes
Authorization: Bearer wise-xxx
Content-Type: application/json
{
"sourceCurrency": "USD",
"targetCurrency": "IDR",
"sourceAmount": 1000,
"profile": 123456
}
Response:
{
"id": "abc123",
"sourceAmount": 1000,
"targetAmount": 16400000,
"rate": 16400,
"fee": 5,
"type": "CONVERSION"
}
Step 2: Create Recipient (save bank detail)
POST https://api.wise.com/recipients
Authorization: Bearer wise-xxx
{
"currency": "IDR",
"type": "iban",
"profile": 123456,
"accountHolderName": "Andi Pramana",
"bankDetails": {
"bankCode": "BCA",
"accountNumber": "1234567890"
}
}
Response: Recipient ID.
Step 3: Create Transfer (execute send)
POST https://api.wise.com/transfers
Authorization: Bearer wise-xxx
{
"targetAccount": 987654,
"quoteUuid": "abc123",
"details": {
"reference": "Invoice #2024-001"
}
}
Response: Transfer ID.
Step 4: Fund Transfer (debit balance)
POST https://api.wise.com/profiles/123456/transfers/111222/pay
Authorization: Bearer wise-xxx
{
"type": "BALANCE"
}
Response: Transfer status processing.
Step 5: Webhook Notification
Wise kirim webhook ke backend lo:
{
"event": "transfers#state-change",
"data": {
"transferId": 111222,
"currentState": "outgoing_payment_sent"
}
}
Lo handle webhook, update invoice status di database lo.
Use Case — Automate Vendor Payout
Skenario Startup
Lo startup Indonesia dengan 50 freelancer di 5 negara:
- 20 designer Indonesia (IDR).
- 10 developer Vietnam (VND).
- 10 writer Philippines (PHP).
- 5 video editor India (INR).
- 5 marketing US (USD).
Manual process (sebelum Wise API):
- HR buat spreadsheet.
- Finance create 50 transfer manual via bank.
- Time: 2 hari kerja.
- Error rate: 5-10% (typo account number, salah amount).
Automated via Wise API:
- Backend lo pull data dari HR system.
- Loop: create recipient + quote + transfer untuk 50 freelancer.
- Single API call per freelancer (<500ms).
- Webhook update payment status.
- Time: 5 menit total.
- Error rate: <0.5%.
Save: 16 jam kerja/bulan, plus avoid late payment penalty.
Code Example (Node.js)
const WiseAPI = require('wise-sdk');
const wise = new WiseAPI({
apiKey: process.env.WISE_API_KEY,
environment: 'production'
});
async function payoutVendor(vendor) {
// 1. Create quote
const quote = await wise.quotes.create({
sourceCurrency: 'USD',
targetCurrency: vendor.currency,
sourceAmount: vendor.amountUSD,
profile: process.env.WISE_PROFILE_ID
});
// 2. Create recipient (kalau belum ada)
let recipient = vendor.wiseRecipientId;
if (!recipient) {
recipient = await wise.recipients.create({
currency: vendor.currency,
accountHolderName: vendor.name,
bankDetails: vendor.bankDetails
});
// Save recipient ID ke database
}
// 3. Create transfer
const transfer = await wise.transfers.create({
targetAccount: recipient.id,
quoteUuid: quote.id,
details: {
reference: `Vendor payment ${vendor.invoiceNumber}`
}
});
// 4. Fund transfer
await wise.transfers.fund(transfer.id, {
type: 'BALANCE'
});
// 5. Wait for webhook
return transfer.id;
}
// Batch payout 50 vendors
async function batchPayout(vendors) {
const results = await Promise.all(
vendors.map(v => payoutVendor(v).catch(e => ({error: e.message})))
);
return results;
}
Batch Payout — 1,000 Recipient Single API Call
Promo seru yang cocok buat kamu
Penawaran pilihan dari mitra kami — klik buat lihat detail.
Mengandung link afiliasi. Baca disclaimer.
Wise punya Batch API untuk kirim ke 1,000 recipient sekaligus.
POST https://api.wise.com/batch
Authorization: Bearer wise-xxx
{
"transfers": [
{"recipient": 1, "amount": 100, "currency": "USD"},
{"recipient": 2, "amount": 200, "currency": "USD"},
...
{"recipient": 1000, "amount": 50, "currency": "USD"}
]
}
Response: Single batch ID, track status per item.
Use case:
- Salary payout 1,000 employee.
- Affiliate commission payout.
- Refund batch 1,000 customer.
Webhook Events — Real-Time Update
Available Events
balances#deposit(balance terima top up).transfers#state-change(transfer status berubah).transfers#refund(transfer refund).quotes#created(quote dibuat).
Setup Webhook Endpoint
app.post('/webhooks/wise', (req, res) => {
const signature = req.headers['x-signature'];
// Verify signature (security critical)
if (!verifySignature(req.body, signature)) {
return res.status(401).send('Invalid signature');
}
const event = req.body;
switch (event.event_type) {
case 'transfers#state-change':
handleTransferUpdate(event.data);
break;
case 'balances#deposit':
handleDeposit(event.data);
break;
}
res.status(200).send('OK');
});
Security — Verify Signature
Wise sign setiap webhook dengan HMAC. Backend lo harus verify:
const crypto = require('crypto');
function verifySignature(payload, signature) {
const expected = crypto
.createHmac('sha256', process.env.WISE_WEBHOOK_SECRET)
.update(JSON.stringify(payload))
.digest('base64');
return expected === signature;
}
Critical: Jangan skip verify. Bisa webhook spoofing.
Sandbox Mode — Free Testing
Apa Itu Sandbox?
Sandbox = Wise environment terpisah untuk testing. Tidak ada real money. Lo bisa test API tanpa risk.
Setup Sandbox
- Visit sandbox.transferwise.tech.
- Register sandbox account.
- Generate sandbox token.
- Top up sandbox balance (free, otomatis).
- Test API call.
Sandbox Features
- Same API dengan production.
- Test data (fake recipient, fake transfer).
- Webhook test (Wise kirim test event).
- No fee, no real money.
Best practice: Selalu test di sandbox sebelum production deploy.
Studi Kasus — Indonesian Startup Integrate Wise API
User: PT Tech Nusantara, SaaS B2B Indonesia.
Tech stack:
- Backend: Node.js + Express.
- Database: PostgreSQL.
- Frontend: React.
- Hosting: AWS.
Integration goal:
- Automate salary payout 50 employee (mix Indonesia + remote Vietnam/Philippines).
- Vendor payout 20 contractor.
- Customer refund (rare case).
Implementation timeline:
- Week 1: Apply Wise Business + sandbox account.
- Week 2: API integration (recipient + quote + transfer).
- Week 3: Webhook + batch payout.
- Week 4: Testing + production deploy.
Result:
- Salary payout: from 2 days → 5 minutes (auto via cron job every 25th).
- Vendor payout: from 1 day → instan (trigger via invoice approve).
- Refund: from manual → instan via API.
Annual save: Rp 200 juta (man-hour saving + avoid late penalty).
Best Practices Wise API
1. Use Sandbox First
Always test di sandbox sebelum production. Catch bug tanpa risk.
2. Implement Webhook Signature Verification
Jangan skip. Webhook spoofing bisa trigger false payment confirm.
3. Idempotency Keys
Setiap payout request kirim unique idempotency key. Mencegah double-charge kalau network retry.
const transfer = await wise.transfers.create({
// ... data
idempotencyKey: `vendor-${vendorId}-${invoiceNumber}`
});
4. Handle Rate Limit
Wise API rate limit 100 request/second per token. Kalau exceed, kena 429 error.
Solution: Throttle backend queue. Batch 50 request per second.
5. Monitor Failed Transfer
Webhook akan notify kalau transfer fail. Handle retry + alert finance team.
6. Multi-Currency Strategy
Simpan USD sebagai base. Convert to local currency on-demand. Save conversion fee.
7. Don't Store Sensitive Bank Detail
Pakai Wise recipient ID (tokenized). Backend lo gak store raw account number. Reduce PCI compliance scope.
Comparison dengan Kompetitor API
Wise API vs Stripe Connect
| Aspek | Wise API | Stripe Connect |
|---|---|---|
| Use case | Cross-border payout | Card payment + payout |
| Fee | 0.5% + flat | 0.25% + $0.10 + card fee |
| Multi-currency | 40+ balances | 135 currencies |
| Sandbox | Free | Free |
| Documentation | Good | Excellent |
| Best for | International vendor payout | Card-based marketplace |
Wise API vs PayPal Payouts
| Aspek | Wise API | PayPal Payouts |
|---|---|---|
| Coverage | 80+ countries | 200+ countries |
| Fee | 0.5% + flat | 2% + $0.25 |
| Recipient | Bank account | PayPal email |
| Best for | Bank transfer | PayPal user |
Mitos vs Fakta Wise API
Mitos 1: Wise API sulit di-integrate. ❌ Fakta: REST API standard. SDK untuk JavaScript, Python, PHP. Dokumentasi clear.
Mitos 2: Wise API fee tinggi buat developer. ❌ Fakta: Tidak ada API fee. Hanya transaction fee (0.5% conversion + flat payout).
Mitos 3: Wise API tidak support webhook real-time. ❌ Fakta: Webhook support. Real-time event.
Mitos 4: Sandbox Wise berbayar. ❌ Fakta: Free unlimited.
Mitos 5: Wise API hanya buat perusahaan besar. ❌ Fakta: Available buat semua Wise Business account. SME bisa pakai.
Pertanyaan yang Sering Ditanya
Q: Berapa lama setup Wise API end-to-end? A: 2-4 minggu (including Wise Business approval).
Q: Apakah saya butuh PT untuk pakai Wise API? A: Ya, minimal CV atau Yayasan dengan NIB. Personal account tidak support API.
Q: Berapa rate limit Wise API? A: 100 request/second per token. Bisa request increase kalau high volume.
Q: Apakah Wise API support webhook retry? A: Ya. Kalau webhook fail, Wise retry 3x dengan exponential backoff.
Q: Bisakah saya pakai Wise API untuk receive payment (customer bayar)? A: Limited. Wise fokus payout. Untuk receive, pakai Stripe / Xendit.
Checklist Setup Wise API
- Wise Business account approved.
- API token generated (production).
- Sandbox token generated.
- Permission set correctly.
- Backend integration (Node.js / Python / PHP).
- Webhook endpoint setup + signature verification.
- Test di sandbox (recipient, quote, transfer, webhook).
- Idempotency key implementation.
- Rate limit handling.
- Production deploy.
- Monitoring + alerting (failed transfer).
- Documentation internal (SOP).
Tools Pendukung
- Wise API documentation (wise.com/api-docs).
- Wise SDK (JavaScript, Python, PHP).
- Postman — API testing.
- ngrok — webhook local testing.
- Sentry / Datadog — error monitoring.
- Grafana — webhook + payout metrics.
- ChatBot Cell — AI Chatbot bantu developer troubleshooting.
Verdict
Wise API adalah must-have buat startup tech Indonesia dengan payment automation need.
Best for:
- SaaS startup dengan vendor payout.
- E-commerce dengan refund automation.
- Marketplace dengan seller payout.
- Agency dengan freelancer team multi-country.
- Corporate dengan salary batch.
Hemat realistis:
- Rp 50-200 juta/year (man-hour save).
- Plus avoid late payment penalty (Rp 5-20 juta/year).
Rekomendasi:
- Apply Wise Business sebelum integration.
- Always test di sandbox dulu.
- Implement webhook + signature verification.
- Plan idempotency untuk reliability.
Butuh bantuan integrate Wise API buat startup lo? ChatBot Cell siap bantu.
👉 Chat sekarang via WhatsApp — tim AI Chatbot kami online 24/7. Top up saldo e-wallet (DANA, GoPay, OVO, ShopeePay, QRIS), pulsa semua operator, paket data gaming/streaming, voucher game (ML, FF, PUBG, Genshin, Roblox), dan token PLN dengan harga reseller. Proses 3 detik, bayar QRIS!






