Card acquiring · EUR / USD · sandbox available
One payment API. Everything behind it is our problem.
Push Push Payments is a server-to-server card gateway: authorisations, 3-D Secure, refunds and signed webhooks through a single integration that never changes when the routing behind it does.
curl -X POST https://pushpushpayments.app/api/public/v1/payments \
-H "X-Api-Key: pk_live_..." \
-H "X-Timestamp: 1723000000" \
-H "X-Signature: <hmac-sha256>" \
-d '{"amount": 2500, "currency": "EUR", "order_id": "A-1042",
"card": {"number": "4012888888881881", "exp_month": 12,
"exp_year": 2030, "cvv": "123"}}'Host-to-host card API
Post card data straight to one REST endpoint. No redirect to a third-party checkout, no branding other than yours.
3-D Secure, on your domain
Issuer challenges are wrapped by our checkout page, so the shopper never leaves the flow you control.
Signed webhooks
Every status change is delivered with an HMAC-SHA256 signature, retried with backoff and replayable from the console.
Refunds and status
Full or partial refunds and idempotent status reads on the same key pair, in the same envelope.
Sandbox that behaves
Deterministic approve, decline and 3-D Secure test cards in EUR and USD. Integrate before contracts are signed.
Operations console
Every payment, every webhook attempt, one authenticated dashboard for your team only.
Three steps to first transaction
Get keys
Receive a key id and secret for sandbox, then for live.
Sign the request
HMAC-SHA256 over timestamp and body, sent in one header.
Go live
Swap the key, keep the same payloads and webhook contract.