Integration guide

One REST API.
Hosted or direct.

Take payments with our Hosted Cashier and stay out of scope, or integrate the Direct API and keep the checkout entirely your own. Pay-ins, payouts, refunds, transaction queries and webhooks all run through the same integration.

Payment inputs routed through smart approval into cleared payments
Environments

Environments
and authentication.

Build against the test environment, then switch the base URL to go live. Every request is authenticated with your API key in the X-API-KEY header.

# Test
https://api.test.cyberpay.link

# Production
https://api.cyberpay.link

# Every request
X-API-KEY: your_api_key
Content-Type: application/json
Choose your integration

Choose your
integration.

Fastest to live

Hosted Cashier

Create a session and redirect the customer to a hosted payment page. CyberPay handles the payment methods, the payment data and the customer experience. The response returns a cashierUrl you send the customer to.

Own the checkout

Direct API

Server-to-server. Fetch the available payment options for the market, submit the payment, then confirm it. You keep full control of the checkout experience and the presentation of methods.

Example

Taking a payment
with the Hosted Cashier.

Create a payment session with the amount, market and customer details, then redirect to the returned cashier URL. Set redirectUrl for where the customer returns, and notificationUrl to receive the webhook for the final status.

# Create a hosted cashier session
POST https://api.test.cyberpay.link/payment-session
X-API-KEY: your_api_key

{
  "country": "DE",              # Alpha-2 ISO country code
  "currency": "EUR",            # ISO currency code
  "amount": 49.90,              # two decimal places (eight for crypto)
  "language": "en",             # Alpha-2 ISO language code
  "redirectUrl": "https://yourshop.com/return",
  "notificationUrl": "https://yourshop.com/webhooks/cyberpay",
  "customer": { /* firstName, lastName, email, phone, ip,
                     userDevice (MOBILE|DESKTOP|TABLET), userAgent, address */ }
}

# Response
{ "cashierUrl": "https://cashier.test.cyberpay.link?sessionId=..." }

Payouts follow the same pattern with /payout-session.

Reference

Endpoints.

The full set, with request and response schemas, lives in the API reference.

PurposeEndpointNotes
Hosted pay-inPOST /payment-sessionReturns a cashierUrl to redirect to.
Hosted payoutPOST /payout-sessionHosted payout flow.
Direct pay-in optionsPOST /v3/payment-optionsMethods available for that market and amount.
Direct pay-inPOST /v3/paymentSubmit the payment server-to-server.
Confirm paymentPOST /confirm-paymentComplete the flow where confirmation is required.
Direct payout optionsPOST /v3/payout-optionsPayout methods available for that market.
Direct payoutPOST /v3/payoutServer-to-server disbursement.
Settle payoutPOST /settle-payoutSettle a submitted payout.
RefundPOST /refund/by-referenceRefund against your reference.
Query transactionGET /payments/{transactionId}Current status for reconciliation.
Webhooks

Webhooks.

Set notificationUrl per session, or configure a default in the Merchant Portal — the per-session value overrides it. Treat the webhook as the source of truth for the final state, and confirm with GET /payments/{transactionId} before releasing goods or credit.

Process

Going live.

01

Get your keys

We issue test credentials and configure the methods and markets for your business.

02

Build on test

Integrate against api.test.cyberpay.link and verify the flows end to end.

03

Handle webhooks

Consume notifications and reconcile with transaction queries.

04

Switch to production

Change the base URL and your key. Nothing else in your integration changes.

Talk to an engineer.

Tell us what you're building and which markets you need. We'll point you at the right flow.