Skip to content

Sentoo (Betalen)

Sentoo is de lokale online betaaloplossing voor de Dutch Caribbean. Het werkt vergelijkbaar met iDEAL in Nederland: de klant kiest zijn bank, wordt doorgestuurd naar zijn eigen bankapp, keurt de betaling goed, en wordt teruggestuurd naar de app.

Beschikbare banken:

  • Aruba Bank
  • Banco di Caribe
  • Caribbean Mercantile Bank (CMB)
  • MCB Bonaire
  • MCB Curaçao
  • Orco Bank
  • Windward Islands Bank (WIB)
MethodeKostenSecurity
A2A (lokale bank)1%, max AWG/USD 1,50Bank-level authenticatie
Visa/MastercardGateway $0.27–$0.48 + processing 0.25–0.75% + MDR + $20/mnd3D Secure (3DS), PCI DSS

Bij onboarding krijgen developers:

  • Merchant key voor API authenticatie
  • REST API documentatie op developer.sentoo.io
  • OpenAPI v3 / Swagger met executable test requests
  • Integration environment (sandbox) voor testen

Vereisten:

  • Registratie bij Kamer van Koophandel Aruba
  • Zakelijke bankrekening bij Aruba Bank of CMB
  • Merchant agreement afsluiten met Sentoo
  • Contact: support@sentoo.io

Sentoo biedt een REST API met secret key authenticatie. De volledige API docs staan op developer.sentoo.io (beschikbaar na onboarding).

apps/api/src/routes/payments.ts
const response = await fetch('https://api.sentoo.io/v1/transactions', {
method: 'POST',
headers: {
'Authorization': `Bearer ${c.env.SENTOO_API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
amount: 125.00,
currency: 'AWG',
description: 'Factuur #2024-047 — Dagopvang Max',
expiry_date: '2024-12-08',
webhook_url: 'https://api.[domein].com/api/payments/webhook',
redirect_url: 'https://app.[domein].com/invoices/[id]/success',
}),
});
const { payment_url, qr_code, transaction_id } = await response.json();
// apps/api/src/routes/payments.ts — webhook endpoint
app.post('/webhook', async (c) => {
// 1. Verificeer webhook handtekening
const signature = c.req.header('x-sentoo-signature');
const body = await c.req.text();
if (!verifySignature(body, signature, c.env.SENTOO_WEBHOOK_SECRET)) {
return c.json({ error: 'Niet geautoriseerd' }, 401);
}
const payload = JSON.parse(body);
const adminClient = c.get('adminClient');
// 2. Betaling ophalen
const { data: payment } = await adminClient
.from('payments')
.select('*')
.eq('sentoo_transaction_id', payload.transaction_id)
.single();
// 3. Idempotency check
if (payment.status === 'success') {
return c.json({ message: 'Al verwerkt' }, 200);
}
// 4. Status updaten
const status = mapSentooStatus(payload.status);
await adminClient
.from('payments')
.update({ status, paid_at: new Date().toISOString() })
.eq('id', payment.id);
// 5. Notificatie bij succes
if (status === 'success') {
await sendPaymentConfirmation(payment);
}
return c.json({ message: 'OK' }, 200);
});
Sentoo statusApp statusActie
ISSUEDpending
PENDINGpending
SUCCESSsuccessFactuur betaald, bevestigingsmail
FAILEDfailedNotificatie klant
CANCELLEDcancelled
EXPIREDexpiredHerinnering sturen
1. Klant klikt "Betaal nu" op factuurpagina
2. App roept Hono API aan: POST /api/invoices/:id/send
3. API maakt Sentoo transactie aan
4. App toont betaallink + QR code aan klant
5. Klant klikt betaallink → Sentoo tussenpagina
6. Klant kiest bank → redirect naar bankapp
7. Klant autoriseert betaling
8. Sentoo stuurt webhook: POST /api/payments/webhook
9. API markeert factuur als betaald (idempotent)
10. Bevestigingsmail via Resend
11. Klant wordt teruggestuurd naar success pagina

Sentoo Cards is een apart product voor internationale kaartbetalingen. Setup:

  1. Contact support@sentoo.io
  2. Sentoo regelt merchant card account bij de bank
  3. Eenmalige setup fee + maandelijkse kosten ($20+)
  4. 3D Secure (3DS) ingebouwd voor PCI DSS compliance
  1. Taalondersteuning betaalpagina: welke talen? Is Papiamento beschikbaar? Taalparameter via API?
  2. Webhook signature formaat: exact verificatiemechanisme (HMAC-SHA256 verwacht, bevestigen bij onboarding)