Back to Gateway Index
Checkout.com logo
Payment Gateway

Checkout.com

Enterprise-grade global acquiring with custom-quote pricing — built for high-volume merchants, not first-time builders.

Builder Verdict

Pick Checkout.com when you process meaningful volume (low-millions+ ARR), need local acquiring across UK/EEA/MENAP/APAC, and want negotiated interchange++ rates plus white-glove account management. Pick Stripe or Adyen Express otherwise.

Complexity

◆◆◆ Complex

Region

55 countries (UK, EEA, US, MENAP, APAC)

Fees

Custom quote (interchange++ or flat); no setup / monthly fees

Checkout.com is a London-headquartered payment processor founded in 2009 (originally Opus Payments) that targets enterprise and mid-market merchants with a Unified Payments API covering acquiring, payouts, fraud, 3DS, and marketplace splits. It powers Netflix, eBay, Uber Eats, Pinterest, Klarna, and ASOS, supports 145+ processing currencies in 55 domestic-acquiring countries, and recently secured a US bank charter (Georgia MALPB, 2026) to acquire directly in the United States.

Last full audit: April 15, 2026

01

Trust Score Breakdown

Account Stability

75/100

Strict upfront underwriting filters out risky merchants, so post-onboarding surprise freezes are rarer than at Stripe. However, merchants who breach the MSA face long reserve holds and limited recourse; some report unilateral term changes. Stable for a vetted enterprise customer; less so if you're a marginal fit.

Developer Experience

88/100

Excellent technical docs, official SDKs in 7+ languages (.NET, Java, Node, PHP, Python, Ruby, Go), Frames + Flow + HPP integration tiers, robust webhook tooling, EventBridge alternative, and 3DS 2.3.1 EMVCo certification. Slight friction: some developers report sandbox access lags real account approval.

Payout Reliability

80/100

T+0 to T+3 settlement schedules per region, with same-day payouts available. Card Payouts via Visa Direct/Mastercard Send are real-time. Negative: settlement-reserve clauses in the MSA can hold all funds for weeks past account closure, and a few merchants reported reduced payouts after a 2024 dashboard migration.

Support Quality

60/100

Enterprise customers with assigned account managers report excellent white-glove service. Smaller-tier customers and Trustpilot reviewers describe multi-day email response times, agent hand-offs, and replies that don't address the question. Two-tier support quality.

Track Record

88/100

Founded 2009 as Opus Payments (rebranded Checkout.com 2012); processes for Netflix, eBay, Uber Eats, Pinterest, Klarna, ASOS, Vinted, Sony, DocuSign. Reached profitability in 2024 with 45% YoY core growth. Georgia MALPB bank charter approved 2026, enabling direct US acquiring. No notable regulatory scandals.

Transparency

50/100

Worst dimension. No public rate card — every fee (transaction, chargeback, FX, APM surcharges) is buried in the per-merchant MSA. Apples-to-apples comparison with Stripe/Adyen requires a sales call. Status page and changelog exist, but commercial transparency is poor.

02

Availability Matrix

Region Countries Currencies Payout Timing
Europe (UK + EEA) UK, plus all EEA member states (Austria, Belgium, Bulgaria, Croatia, Cyprus, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia, Liechtenstein, Lithuania, Luxembourg, Malta, Netherlands, Norway, Poland, Portugal, Romania, Slovakia, Slovenia, Spain, Sweden) GBP, EUR + ~18 more settlement currencies T+0 to T+3 business days (region & merchant agreement)
North America (United States) United States USD (settlement) T+0 to T+2 business days (per merchant agreement)
MENAP (Middle East, North Africa, Pakistan) UAE, Saudi Arabia, Qatar, Bahrain, Kuwait, Oman, Egypt, Jordan, Pakistan (specific country list varies) AED, SAR, QAR, BHD, KWD, OMR, EGP, JOD, PKR + USD/EUR T+1 to T+3 business days
Asia-Pacific (APAC) Singapore, Hong Kong, Malaysia, Indonesia, Philippines, Thailand, Vietnam, China (cross-border), South Korea (specific list varies) SGD, HKD, MYR, IDR, PHP, THB, VND, CNY, KRW + USD T+1 to T+3 business days
Global summary Domestic acquiring in 55 countries; processes 145+ currencies; ~20 settlement currencies 145+ processing, ~20 settlement T+0 (same-day) to T+3 (varies by region & MSA)
NOT available (merchant acquiring) Australia, Canada, Japan, India, Latin America (most countries) — limited or no direct merchant acquiring; sanctioned regions blocked entirely (Iran, North Korea, Russia, Syria, Cuba, Crimea, etc.)
03

Feature Snapshot

Subscriptions / Recurring

Native recurring via stored card details + Unified Payments API; real-time card updater (Account Updater) included; common pairing with Chargebee/Recurly for full subscription billing UX

Marketplace / Split payments

Integrated Platforms product: split funds at authorization/capture/refund, sub-entity onboarding, payouts to sellers in local currency

Hosted Payment Page

Low-code Hosted Payments Page (HPP) — generates a redirect link; HPP cannot be embedded in an iframe

Embedded checkout (Frames / Flow)

Frames (iframe-based card form) and the newer Flow component (drop-in customizable UI) for in-page integration

Apple Pay & Google Pay

Native support for both wallets at no extra enabling fee; same pricing as card transactions

Local payment methods (APMs)

Wide APM coverage: iDEAL, SOFORT, Bancontact, Klarna, Alipay, WeChat Pay, mada, Multibanco, etc.

Payouts API (push-to-card)

Card Payouts via Visa Direct + Mastercard Send — real-time funds to 170+ countries, 100+ currencies; Fast Funds delivers within 30 min

Webhooks

Workflows API for webhook configuration; filterable logs, retry mechanism; AWS EventBridge alternative supported

Server SDKs

Official SDKs for .NET, Java, Node.js, PHP, Python, Ruby, Go (open-source on GitHub)

Mobile SDKs (iOS / Android)

Native iOS and Android SDKs for in-app card capture and tokenization

Multi-currency processing

145+ processing currencies; ~20 settlement currencies; FX conversion handled in-platform

Fraud detection (built-in)

Fraud Detection Pro: ML-driven risk scoring, custom rules, network-level intelligence; included with platform

3D Secure 2

Full 3DS2 / SCA support; intelligent routing to maximize approval and minimize friction

Self-service merchant signup

Sales-led onboarding only — must contact sales for a quote and risk review; no instant signup like Stripe

~

Public no-code dashboard for non-developers

Dashboard supports payment management, refunds, disputes, fee viewing — but accepting payments still requires API/SDK or HPP integration

04

Pricing Breakdown

Standard transaction (card payments) Custom quote — interchange++ or flat-rate, negotiated per merchant
Setup / account opening fee $0 (none)
Monthly account / maintenance fee $0 (none)
Charity transaction fee $0 (free for registered charities in operating countries)
Chargeback / dispute fee Charged per dispute (amount set in your Merchant Service Agreement; not publicly listed)
Currency conversion / FX markup Applied per transaction (rate not publicly listed; varies by merchant agreement)
Alternative payment method fees (iDEAL, SOFORT, etc.) Per-method gateway fees apply — set in MSA, not publicly listed
05

Security & Compliance

PCI DSS Level 1 Service Provider (highest tier) — Checkout Technology Ltd certified
3D Secure 3DS 2.3.1 EMVCo-certified (May 2023); SCA-compliant; frictionless + challenge flows; 5 risk-routing options
Tokenization Network tokens (Visa/Mastercard/Amex), card-on-file vaulting, scheme-issued cryptograms per transaction
Fraud detection Built-in ML-based risk scoring (Fraud Detection Pro), custom rules engine, network-wide intelligence
Regulatory licensing FCA-authorized e-money institution (UK); regulated entities in EU (Ireland), Singapore (MAS), UAE (DFSA), US (Georgia MALPB charter approved 2026)
Data encryption in transit TLS 1.2+ for all API traffic; iframe-isolated card capture (Frames) keeps PAN out of merchant origin
06

Integration Prompt

Copy & use this 5571-char integration prompt

Production-ready prompt for Claude / GPT / Cursor — handles setup, security, webhooks & gotchas

You are integrating Checkout.com as a payment gateway into a [Django / Next.js / etc.] application.

## Prerequisites
Checkout.com is sales-led — you cannot self-serve. Before writing code, confirm: (a) you have an approved merchant account, (b) you have access to the Hub dashboard, (c) you've received your Public API key, Secret API key, and Processing Channel ID. If any of these are missing, stop and contact your account manager.

## Setup
1. Install the official server SDK: `pip install checkout-sdk` (Python) or `npm install @checkout.com/checkout-sdk-node` (Node).
2. Store credentials in environment variables — NEVER hardcode:
   - `CKO_SECRET_KEY` (server-side, starts with `sk_`)
   - `CKO_PUBLIC_KEY` (client-side, starts with `pk_`)
   - `CKO_PROCESSING_CHANNEL_ID` (per-merchant; required on most API calls)
   - `CKO_WEBHOOK_SECRET` (signing key — set when you register the webhook)
3. Use the sandbox environment first (`environment='sandbox'`); promote to `production` only after end-to-end test card flows pass.

## Recommended Integration: Flow (drop-in component)
For most web checkouts, use **Flow** — it's PCI-SAQ-A scoped (card data never touches your server), supports cards + Apple Pay + Google Pay + local APMs from a single integration, and handles 3DS2 challenges automatically.

**Server: create a Payment Session**
```python
from checkout_sdk import CheckoutSdk
from checkout_sdk.environment import Environment

api = CheckoutSdk.builder() \
    .secret_key(settings.CKO_SECRET_KEY) \
    .environment(Environment.sandbox()) \
    .build()

session = api.payment_sessions.create_payment_sessions({
    'amount': 2000,            # $20.00 in minor units
    'currency': 'USD',
    'reference': 'order_internal_id',
    'processing_channel_id': settings.CKO_PROCESSING_CHANNEL_ID,
    'success_url': 'https://yourdomain.com/success',
    'failure_url': 'https://yourdomain.com/cancel',
    'customer': {'email': customer.email, 'name': customer.name},
})
# Pass session.payment_session_token to the browser
```

**Browser: mount Flow**
```html
<script src="https://checkout-web-components.checkout.com/index.js"></script>
<div id="flow-container"></div>
<script>
  const checkout = await CheckoutWebComponents({
    publicKey: '{{ CKO_PUBLIC_KEY }}',
    environment: 'sandbox',
    paymentSession: { id: '{{ session.id }}', payment_session_token: '{{ session.payment_session_token }}' },
    onPaymentCompleted: (component, paymentResponse) => { window.location = '/success'; },
  });
  checkout.create('flow').mount('#flow-container');
</script>
```

## Alternative integrations
- **Frames** (legacy iframe card form) — use only if you need full visual control of the card UI and accept higher PCI scope.
- **Hosted Payment Page (HPP)** — full redirect; no embedding; quickest to ship if you don't need on-site checkout. NOTE: HPP cannot be embedded inside an iframe.
- **Direct Payments API** — only if you're already PCI DSS certified and tokenize cards yourself.

## Webhooks (mandatory — do not trust the redirect)
The success/failure URL is a UX hint, not authoritative. Always confirm payment via webhook.

1. Register the webhook in the Hub dashboard or via the Workflows API. Subscribe to `payment_approved`, `payment_declined`, `payment_captured`, `payment_refunded`, `payment_chargeback`.
2. ALWAYS verify the `cko-signature` HMAC-SHA256 header against your webhook secret:
```python
import hmac, hashlib

def verify(payload_bytes: bytes, signature_header: str) -> bool:
    expected = hmac.new(
        settings.CKO_WEBHOOK_SECRET.encode(),
        payload_bytes,
        hashlib.sha256,
    ).hexdigest()
    return hmac.compare_digest(expected, signature_header)
```
3. Make the handler idempotent — keyed on the event `id` — Checkout.com retries on non-2xx responses for up to 24 hours.
4. Return 200 quickly; do heavy work in a background queue.

## Recurring / subscriptions
Store the first transaction's `id`, then pass it as `previous_payment_id` on subsequent merchant-initiated transactions (MIT). For full subscription billing UX (dunning, upgrades, proration) pair with Chargebee or Recurly — Checkout.com handles the rails, not the lifecycle.

## Marketplaces (split payments)
Use the **Integrated Platforms** product. Onboard sellers as sub-entities, then split funds at authorization or capture by passing `marketplace.sub_entities[]` with amounts and reference IDs.

## Security checklist
- [ ] All card data flows through Flow / Frames / HPP — never POST raw PAN to your server.
- [ ] 3DS2 enabled on every transaction (`'3ds': {'enabled': True}`); use the SCA exemption matrix only with explicit fraud-risk sign-off.
- [ ] Webhook handler verifies signature on every request.
- [ ] Secret key only loaded server-side; rotate quarterly.
- [ ] Network tokens enabled in the Vault for stored cards (improves auth rate, survives card replacement).

## Common pitfalls (from real merchant reports)
- The MSA is the source of truth for fees, reserves, and termination terms — not the website. Read it and negotiate.
- Reserve clauses can hold all funds for weeks past the last transaction if the account is closed. Plan cash-flow accordingly.
- Sandbox access can lag the production approval — request explicitly during onboarding so you can build in parallel.
- Sub-$1M/year merchants typically get worse commercial terms than at Stripe; reconsider fit before integrating.

## Reference
- API reference: https://api-reference.checkout.com/
- Docs: https://www.checkout.com/docs
- Status: https://status.checkout.com

Replace [Django / Next.js / etc.] with your stack. Follows PCI DSS best practices and handles common edge cases.

07

Common Pitfalls

7 items
1

Sales-led onboarding — no instant signup

Unlike Stripe, you cannot sign up self-serve and start charging cards in minutes. Expect a sales call, a risk-review questionnaire, and merchant underwriting. Onboarding can take days to weeks, and very small or unproven merchants are often declined or quoted unattractive terms.

2

Enterprise-volume bias — small businesses get poor fit

Checkout.com targets merchants processing meaningful volume (often quoted publicly as $1M+/year, with their flagship clients all >$1B). Sub-$100k/yr merchants will get better commercial terms — and faster support — from Stripe, Adyen Express, or PayPal.

3

Opaque pricing — fees only revealed in MSA

No public rate card. Standard transaction rates, chargeback fees, FX markup and APM surcharges are all set in your Merchant Service Agreement, which makes apples-to-apples comparison difficult and leaves room for renegotiation later. Insist on a line-item breakdown before signing.

4

Settlement reserves can be held weeks past last transaction

If your account is closed (voluntarily or forced), all funds — settlement payouts plus cumulative reserves — are held until the reserve period set in your MSA expires. The exact duration is buried in the contract; some merchants report waits of weeks to months. Read the reserve clause carefully.

5

Support response times skew slow for non-enterprise tiers

Account-managed enterprise customers get fast white-glove support. Smaller merchants on standard tiers report multi-day email turnarounds and being passed between agents. If 24/7 chat is critical, this is not Stripe.

6

Test environment access can lag full integration

Some developers report that full sandbox / test-environment access is granted only after substantial implementation work or even merchant approval, slowing the build-evaluate loop. Not a universal experience — depends on your account manager.

7

Limited direct merchant acquiring outside core regions

Strong in UK, EEA, MENAP, parts of APAC, and (since 2026) US via own bank charter. Weaker or absent for Australia, Canada, Japan, India, and most of Latin America. Pick a different processor if those markets are your core.

08

Community Pulse

Developer sentiment is bimodal: enterprise teams praise the API quality, payment-method breadth, and dedicated account-management once approved, while smaller merchants frequently report frustrating onboarding (months of back-and-forth, unrealistic reserves, and outright denials). Trustpilot sits at ~2.2/5 driven mostly by complaints about opaque fees and slow non-enterprise support, whereas G2/Capterra reviews from established customers are noticeably more positive about uptime, routing intelligence, and the Flow + Frames integration story. The recurring theme across 2025–2026 reviews is fit: Checkout.com is built for big merchants and behaves accordingly — picking it without that volume is the most common regret. Note: direct Reddit threads were not retrievable in this audit; sentiment is synthesized from public aggregator review sites instead.

Sentiment last updated: April 2026 · We summarize — never copy — community content. Links go to original threads.

09

Changelog

  1. logo

    downloaded from seeklogo (Checkout.com horizontal wordmark, 540x70 source, normalized to 400x62 transparent PNG, brightness 73.8 — no logo_bg needed)

  2. pricing

    initial entry — official pricing page is custom-quote only; setup/monthly/charity items verified, chargeback/FX/APM fees marked unverified (set per MSA)

  3. availability

    initial entry — 55 domestic-acquiring countries across UK/EEA, US (Georgia MALPB charter approved 2026), MENAP, APAC; 145+ processing currencies; ~20 settlement currencies

  4. features

    initial entry — 15 features verified (subscriptions, marketplace splits, Frames/Flow/HPP, Apple+Google Pay, APMs, Card Payouts, webhooks, server+mobile SDKs, multi-currency, fraud, 3DS2; no self-serve signup; partial no-code dashboard)

  5. security

    initial entry — PCI DSS Level 1 Service Provider; 3DS 2.3.1 EMVCo-certified (May 2023); network tokens; ML fraud detection; FCA + MAS + DFSA + Georgia MALPB regulated entities

  6. pitfalls

    initial entry — 7 pitfalls documented (sales-led onboarding, enterprise bias, opaque pricing, settlement reserves, slow non-enterprise support, sandbox access lag, limited acquiring outside core regions)

  7. community

    initial summary synthesized from Trustpilot (~2.2/5), G2, Capterra, TrustRadius reviews; direct Reddit threads not retrievable in this audit

  8. trust_score

    initial trust score: overall 75 (payout 80, account 75, devx 88, transparency 50, support 60, track 88)

  9. integration_prompt

    initial prompt — recommends Flow as default integration; covers webhooks (HMAC-SHA256), recurring (previous_payment_id), marketplace sub-entities, 3DS2, network tokens

Back to Gateway Index

LearnWithHasan.com · Payment Gateway Index · No affiliate links · Builder-first