One API. Every payment provider.
Connect the payment provider accounts you already have. Veyqo gives you one integration, one webhook schema and one dashboard across all of them — and your money keeps settling directly into your own provider account.
- Providers live
- 3
- Webhook schema
- 1
- Funds held by Veyqo
- None
Providers
Bring the accounts you already have
Veyqo connects to your existing provider accounts. Nothing is re-onboarded, nothing is re-underwritten, and settlement continues exactly where it does today.
- PaystackAvailableCard, bank transfer and USSD payments across Africa.
- FlutterwaveAvailablePan-African and cross-border collections.
- StripeAvailableGlobal card processing and hosted checkout.
- MonnifyComing soonReserved accounts and bank transfers in Nigeria.
- InterswitchComing soonEstablished Nigerian payments infrastructure.
- KoraComing soonPan-African collections and payouts.
- OPayComing soonWallet and mobile money collections.
- PayPalComing soonGlobal consumer wallet checkout.
- AdyenComing soonEnterprise global acquiring.
Need a provider that isn't here? Tell us which one.
Unified API
Switch provider by changing one string
The request shape, the response shape, the status values and the error codes are identical across every provider. Moving traffic to a different processor is a configuration change, not a migration.
Everything below stays the same. Only provider changed.
const payment = await veyqo.payments.create({
amount: 50000, // kobo — smallest currency unit
currency: "NGN",
reference: "ORDER-1001",
provider: "paystack",
customer: {
email: "customer@example.com"
},
metadata: { order_id: "1001" }
});
redirect(payment.checkout.url);Unified webhooks
Three providers. Three formats. One event.
Every provider signs differently, names events differently and retries differently. Veyqo verifies each signature against that provider's own scheme, deduplicates, normalizes, and delivers you a single signed event.
Verified at the edge
Signatures are checked against the raw request body before anything is parsed. Failures are rejected and kept, so you can see them.
Processed exactly once
Duplicate provider webhooks are caught by a database constraint, not by hopeful application logic.
Signed on the way out
Every delivery carries an HMAC-SHA256 signature and a timestamp, so you can verify us the same way we verify them.
Provider selection
Choose the processor without changing your integration
Name a provider explicitly on a request, set a default for the project, or let Veyqo use the only active connection. If several providers are connected and none is selected, Veyqo refuses to guess.
- RequestExplicit providerThe provider field on the API request wins.
- ProjectDefault providerUsed when the request leaves provider unset.
- Safe defaultOnly active connectionUsed only when there is exactly one choice.
Developer experience
Built for the day it breaks
Anyone can make the happy path work. Veyqo is designed around the afternoon a payment succeeded at the provider, your endpoint 500'd, and someone needs to know exactly what happened.
Raw and normalized, side by side
See exactly what the provider sent and exactly what we turned it into. No other dashboard can show you both.
Every attempt recorded
Status, duration, request headers, request body, response body — for each retry, not just the last one.
Replay on demand
Fix your handler, replay the event. No provider dashboard round-trip, no asking support.
Sandbox that behaves
Separate keys, separate credentials, separate webhooks. Test data can never reach live.
Security
Your provider keys are the most sensitive thing we hold
So the architecture is built around them: encrypted at rest behind a swappable vault interface, never returned by the API, never written to a log, and never visible in full anywhere in the product.
Encrypted credentials
Provider keys are encrypted with a key held outside the database, behind an interface that can move to a managed KMS without touching a single integration.
Never displayed in full
Secrets are shown once at creation and masked forever after. The API has no endpoint that returns one.
Signed webhooks both ways
We verify every inbound provider signature and sign every outbound delivery, with a timestamp so replays can be rejected.
Audit trail
Key creation, credential changes, role changes and replays are all recorded with actor, IP and timestamp.
No card data
Veyqo never collects or stores a card number. Card entry stays on provider-hosted checkout, which keeps PCI scope minimal by construction.
Your money, your account
Veyqo orchestrates. Funds move through your own provider account and settle to you, not through us.
Veyqo is designed with security-first infrastructure. We do not claim certifications we have not obtained — when we hold them, they will be listed here with their scope and date. Read the security overview.
Connect your first provider in about five minutes
Create a project, paste your Paystack test keys, and send a payment through Veyqo. No contract, no migration, no change to where your money lands.