All solutions
Solution · 06 · Fintech & Neobanks

Payment plumbing for embedded finance.
Card issuing, acquiring, payouts — one SDK.

Whether you're building a neobank, a remittance app, or embedded finance inside another product, Paynexus gives you the rails without the monolith. Modular, SDK-first, framework-agnostic.

Start building Talk to sales
The challenge

Modern fintech needs 5–7 vendors just to ship v1.

Card issuing from one vendor, acquiring from another, instant payouts from a third, open banking from a fourth, KYC from a fifth, AML from a sixth, sanctions from a seventh. Each with its own API, its own webhook format, its own incident pages.

Paynexus unifies these behind a framework-agnostic PHP SDK (PHP 7.4+) and a REST API. Use what you need, skip what you don't, and add new providers in hours — not weeks.

Business outcomes

What you'll see in production.

5+

Vendors, unified

Issuing, acquiring, payouts, open banking, KYC, AML — one consistent interface, one billing relationship, one incident channel.

PHP 7.4+

Framework-agnostic

Laravel, Symfony, plain PHP, legacy codebases — the SDK runs anywhere PHP 7.4+ runs. No framework lock-in, no bloated dependency tree.

Modular

Use only what you need

Install just the PSP modules your business requires. Card-only neobank? Install one module. Multi-rail remittance? Install five. Pay for exactly what you run.

White-label

Embed anywhere

Ship finance features inside someone else's product without exposing Paynexus branding. The infrastructure is invisible; your product is the hero.

Capabilities

Every rail a fintech product needs.

Card issuing rails

Issue virtual and physical cards via Marqeta, Stripe Issuing, or Unlimit Cards. Standard, premium, and custom BIN programs. Programmatic controls on every transaction.

Open Banking (PSD2)

AISP for account information, PISP for payment initiation. Supported across EU, UK, and growing markets. Unified consent model — you don't manage TPP licensing.

A2A transfers

Account-to-account transfers via SEPA, SEPA Instant, Faster Payments, SBP. Near-zero fees, seconds to settle, perfect for remittance and payroll.

KYC providers

Pre-wired to Sumsub, Jumio, and Onfido. Progressive KYC — collect minimum at signup, escalate as customers transact more.

Programmable money movement

Event-driven rules: "when this card transaction settles, move 10% to savings." Trigger webhooks, automated transfers, or custom workflows via our rules engine.

Spec-driven PHP SDK

Add a new PSP by writing a declarative PHP spec — no code changes to core. The SDK reads the spec and generates requests, response mapping, and callback parsing automatically.

How to integrate

SDK-first. Integration in a day.

Install the SDK and the modules you need

One Composer command. Core SDK + individual PSP modules. No bloat from providers you'll never use.

Register providers in your ProviderRegistry

Standard PHP DI pattern. Each provider module auto-registers its capabilities; the registry resolves them by name at runtime.

Call the PaymentFacade — one interface for every rail

Seven methods cover the entire surface: createDepositInvoice, createWithdraw, handleCallback, checkStatus, getBalance, capabilities, paywaySpec.

Add new PSPs via a declarative spec file

Create {new-psp}.spec.php describing endpoints, auth, and response mapping. Core reads the spec; no framework code to change. Afternoon's work, not a sprint.

fintech.php
PHP
use Paynexus\SDK\PaymentFacade; use Paynexus\SDK\Provider\ProviderRegistry; // Register only the modules you need $registry = new ProviderRegistry(); $registry->register(new PiastrixFactory()); $registry->register(new AmpayFactory()); $registry->register(new UnlimitFactory()); $sdk = new PaymentFacade($registry, $httpClient); // Unified API across every rail $invoice = $sdk->createDepositInvoice('piastrix', $config, [ 'amount' => '100.00', 'currency' => 'USD', 'payway' => 'CARD', 'bill_id' => 'txn-4729', 'callback_url' => 'https://your-app.com/cb', ]); echo $invoice->redirectUrl; // Check balance programmatically $balance = $sdk->getBalance('unlimit', $config); // Query capabilities — is this PSP fit for this flow? $caps = $sdk->capabilities('ampay'); if ($caps->supports('withdrawal.p2p_card')) { // Route withdrawal here }
Next steps

Keep going.

Build finance features, not payment plumbing.

One SDK. Every rail. Any framework. Ship in days.

Start free Talk to sales