Platform · API · SDK
Wavy Core powers your checkout
Embed payments in any app or website. Wavy Core handles merchants, Flutterwave checkout, settlement, webhooks, receipts, and transaction logs — so you focus on your product.
Core modules
Everything external apps need to accept payments in Nigeria — one platform, live today.
Merchant management
Register websites, attach payout bank accounts, and manage per-site Flutterwave subaccounts from the dashboard.
LivePayment processing
Server-side checkout API and hosted Flutterwave flow. Create sessions, verify by reference, finalize transactions.
LiveFlutterwave integration
Banks, account resolve, subaccount routing, webhooks, and signature verification — fully wired.
LiveSettlement engine
Direct settlement via Flutterwave subaccount splits. Batch reporting and admin settlement tools coming next.
PartialAPI keys
Per-merchant secret and publishable keys (wavy_sk_live_*, wavy_pk_live_*) with rotation support.
Webhooks
Inbound Flutterwave events and outbound payment.success / payment.failed to your server with HMAC signatures.
Analytics
Dashboard stats, gateway transaction views, and step-by-step payment event timelines per transaction.
LiveReceipts
Auto-generated branded receipts with fee breakdown, PNG/PDF export, and public lookup by reference.
LiveTransaction logs
Full audit trail — link created, checkout initialized, payment success, settled — stored in payment_events.
Integrate in minutes
Server-side checkout is recommended. Never expose your secret key in client-side code in production.
1 · Create checkout
POST /api/gateway/v1/checkout
Authorization: Bearer wavy_sk_live_...
Content-Type: application/json
{
"amount": 5000,
"description": "Order #123",
"email": "customer@email.com",
"merchant_reference": "order_123",
"success_url": "https://yoursite.com/success",
"cancel_url": "https://yoursite.com/cancel"
}
2 · Verify payment
GET /api/gateway/v1/transactions/{tx_ref}
Authorization: Bearer wavy_sk_live_...
Or listen for webhooks — verify with the X-Wavy-Signature header.
3 · Embed (optional)
<script src="https://wavy.ng/assets/wavy-pay.js"></script>
<script>
WavyPay.init({ secretKey: '...' });
WavyPay.checkout({ amount: 5000, ... });
</script>
Use server-side checkout for production. Embed is for demos and quick prototypes.
Ready to plug in?
Sign up, open Dashboard → Integrations, register your site, and copy your API keys.