> For the complete documentation index, see [llms.txt](https://docs.hyperswitch.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hyperswitch.io/integrations/connectors-integrations/payment-processor-capabilities/available-connectors/checkout.md).

# Checkout

Accept card, wallet, and network token payments through Checkout.com on Hyperswitch.

<div align="left"><img src="https://hyperswitch.io/icons/homePageIcons/logos/checkoutLogo.svg" alt=""></div>

Checkout.com supports cards, network tokens, Apple Pay, and Google Pay through Hyperswitch, including manual multiple capture and refunds across every listed method.

### Status and capabilities

**Integration status:** live

**Category:** payment gateway

**Webhook flows:** disputes, payments, refunds

| Payment method | Type          | Mandates      | Refunds   | Capture methods                                          | 3DS                 | Card networks                                                                              | Countries                                        | Currencies                                        |
| -------------- | ------------- | ------------- | --------- | -------------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------- |
| card           | Credit Card   | supported     | supported | automatic, manual, sequential automatic, manual multiple | supported, optional | American Express, Cartes Bancaires, Diners Club, Discover, JCB, Mastercard, UnionPay, Visa | 49 ([full list](https://hyperswitch.io/pm-list)) | 154 ([full list](https://hyperswitch.io/pm-list)) |
| card           | Debit Card    | supported     | supported | automatic, manual, sequential automatic, manual multiple | supported, optional | American Express, Cartes Bancaires, Diners Club, Discover, JCB, Mastercard, UnionPay, Visa | 49 ([full list](https://hyperswitch.io/pm-list)) | 154 ([full list](https://hyperswitch.io/pm-list)) |
| network token  | Network Token | not supported | supported | automatic, manual, sequential automatic, manual multiple | not applicable      | -                                                                                          | -                                                | -                                                 |
| wallet         | Apple Pay     | not supported | supported | automatic, manual, sequential automatic, manual multiple | not applicable      | -                                                                                          | 85 ([full list](https://hyperswitch.io/pm-list)) | 55 ([full list](https://hyperswitch.io/pm-list))  |
| wallet         | Google Pay    | not supported | supported | automatic, manual, sequential automatic, manual multiple | not applicable      | -                                                                                          | 72 ([full list](https://hyperswitch.io/pm-list)) | 53 ([full list](https://hyperswitch.io/pm-list))  |

### Connector-Specific Notes

* **Authentication:** Payment, refund, and dispute requests send the mapped `api_secret` as a bearer token in the `Authorization` header ([`get_auth_header`](https://github.com/juspay/hyperswitch/blob/d4e679350d9c54a0d3b22f4489be8b12c0f0cec1/crates/hyperswitch_connectors/src/connectors/checkout.rs#L123-L132)). Tokenization requests send the mapped `api_key` as the bearer ([`get_headers`](https://github.com/juspay/hyperswitch/blob/d4e679350d9c54a0d3b22f4489be8b12c0f0cec1/crates/hyperswitch_connectors/src/connectors/checkout.rs#L277-L281)).
* **Raw card data:** Checkout.com requires enablement of raw card data handling. Contact Checkout.com support at <support@checkout.com> before processing raw card data.
* **Dispute evidence:** The connector implements accept, defend, file upload, retrieval, and evidence submission flows ([connector flow implementations](https://github.com/juspay/hyperswitch/blob/d4e679350d9c54a0d3b22f4489be8b12c0f0cec1/crates/hyperswitch_connectors/src/connectors/checkout.rs#L259-L263), [file upload](https://github.com/juspay/hyperswitch/blob/d4e679350d9c54a0d3b22f4489be8b12c0f0cec1/crates/hyperswitch_connectors/src/connectors/checkout.rs#L1032-L1044), [evidence submission](https://github.com/juspay/hyperswitch/blob/d4e679350d9c54a0d3b22f4489be8b12c0f0cec1/crates/hyperswitch_connectors/src/connectors/checkout.rs#L1142-L1160)).
* For the full payment-method list behind the generated table, visit [hyperswitch.io/pm-list](https://hyperswitch.io/pm-list).

### Webhooks

The source enum contains 25 named event variants plus an `Unknown` fallback. Hyperswitch maps 21 variants to an effect and 4 to `EventNotSupported` ([event enum](https://github.com/juspay/hyperswitch/blob/d4e679350d9c54a0d3b22f4489be8b12c0f0cec1/crates/hyperswitch_connectors/src/connectors/checkout/transformers.rs#L2399-L2428), [effect mapping](https://github.com/juspay/hyperswitch/blob/d4e679350d9c54a0d3b22f4489be8b12c0f0cec1/crates/hyperswitch_connectors/src/connectors/checkout/transformers.rs#L2502-L2535)).

* `PaymentIntentAuthorizationFailure`: `AuthenticationExpired`, `AuthenticationFailed`, `PaymentAuthenticationFailed`
* `PaymentIntentSuccess`: `PaymentCaptured`
* `PaymentIntentFailure`: `PaymentDeclined`
* `RefundSuccess`: `PaymentRefunded`
* `RefundFailure`: `PaymentRefundDeclined`
* `PaymentIntentCancelFailure`: `PaymentCanceled`
* `PaymentIntentCaptureFailure`: `PaymentCaptureDeclined`
* `PaymentIntentCancelled`: `PaymentVoided`
* `DisputeOpened`: `DisputeReceived`, `DisputeEvidenceRequired`
* `DisputeExpired`: `DisputeExpired`
* `DisputeAccepted`: `DisputeAccepted`
* `DisputeCancelled`: `DisputeCanceled`
* `DisputeChallenged`: `DisputeEvidenceSubmitted`, `DisputeEvidenceAcknowledgedByScheme`
* `DisputeWon`: `DisputeWon`, `DisputeArbitrationWon`
* `DisputeLost`: `DisputeLost`, `DisputeArbitrationLost`
* `EventNotSupported`: `AuthenticationStarted`, `AuthenticationApproved`, `AuthenticationAttempted`, `PaymentApproved`

Store the webhook signing key in Hyperswitch’s connector webhook `secret` field; this field feeds HMAC-SHA256 verification. Hyperswitch hex-decodes the signature from `cko-signature` and verifies the request body ([`get_webhook_source_verification_algorithm`](https://github.com/juspay/hyperswitch/blob/d4e679350d9c54a0d3b22f4489be8b12c0f0cec1/crates/hyperswitch_connectors/src/connectors/checkout.rs#L1291-L1312), [`verify_signature`](https://github.com/juspay/hyperswitch/blob/d4e679350d9c54a0d3b22f4489be8b12c0f0cec1/crates/hyperswitch_interfaces/src/webhooks.rs#L287-L301)).

***

### Activating Checkout.com via Hyperswitch

#### Prerequisites

1. You need to be registered with Checkout.com. Sign up at [checkout.com/get-test-account](https://www.checkout.com/get-test-account).
2. You should have a registered Hyperswitch account, accessible from the [Hyperswitch control center](https://app.hyperswitch.io/register).
3. Request the Checkout.com support team to enable raw card data handling via email (<support@checkout.com>).
4. Your Checkout.com API key, Processing Channel ID, and Secret Key are available in your Checkout.com dashboard under the [Developers section](https://dashboard.sandbox.checkout.com/developers/get-started).
5. To configure a webhook endpoint, navigate to the webhooks section of your Checkout.com dashboard and create a new webhook.

[Steps to activate Checkout.com on the Hyperswitch control center](https://docs.hyperswitch.io/hyperswitch-cloud/connectors/activate-connector-on-hyperswitch)

***

### Responsibility Boundaries

**Hyperswitch owns:** routing decisions, retry scheduling, mandate record storage, and webhook fan-out to your endpoint. **Checkout.com owns:** payment execution, fraud evaluation, and webhook delivery to Hyperswitch's endpoint. The Processing Channel ID determines which Checkout.com business unit processes the payment — Hyperswitch passes this on every request but has no visibility into how Checkout.com routes internally based on it.

**Hyperswitch owns:** dispute case tracking and evidence submission orchestration. **Checkout.com owns:** dispute resolution, chargeback adjudication, and final outcome. File evidence submitted via Hyperswitch is forwarded to Checkout.com's dispute API — the final chargeback decision is made entirely by Checkout.com.

***

### Common Failure Modes

**Raw card data not enabled** Symptom: Card payments fail before authorization. Fix: Contact Checkout.com support (<support@checkout.com>) to enable raw card data handling for your account.

**Wrong Processing Channel ID** Symptom: Payments fail with a channel or merchant configuration error. Fix: Verify the Processing Channel ID in Hyperswitch matches the channel in your Checkout.com dashboard. Each business unit has a distinct channel ID.

**Webhook signing key mismatch** Symptom: Checkout.com webhooks are received but rejected, and payment statuses do not update. Fix: Ensure the webhook signing key configured in your Checkout.com dashboard matches the value stored in Hyperswitch’s connector webhook `secret` field; see [Webhooks](#webhooks).

**ManualMultiple capture exceeds authorized amount** Symptom: A partial capture call fails with an amount error. Fix: The sum of all partial captures cannot exceed the originally authorized amount — Checkout.com enforces this at the API level.

***

Connector implementation: `crates/hyperswitch_connectors/src/connectors/checkout.rs`.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.hyperswitch.io/integrations/connectors-integrations/payment-processor-capabilities/available-connectors/checkout.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
