Payments infrastructure your finance team can actually reconcile.
Accept card payments through hosted checkout and payment links, watch every cent land in an immutable ledger, pay out to verified bank accounts, and integrate with a versioned REST API — all under your own brand.
Money movement, done properly
Integer minor units, an append-only ledger, and balances derived from entries — never from summed UI rows.
Verified state only
Payments, payouts and KYC advance on signature-verified processor webhooks. Nothing financial is set from a browser.
Developer API
Versioned REST endpoints, hashed secret keys, idempotency keys, request logs and webhook delivery history.
Processor abstraction
A single PaymentProcessor interface routes by country, currency and capability, so processors are swappable.
Least privilege by default
Row-level security on every table, security-definer role checks, and a separate roles table for admin access.
Test mode everywhere
Every record carries livemode. Test and live data never mix, and each mode has its own keys and badge.