> 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/volt.md).

# Volt

Accept bank redirect payments through Volt.

<img src="https://2522436862-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F47COcdNQRd7FH3TBRipx%2Fuploads%2Fgit-blob-12b5197ee4ea0fb410c608db39942cb2d81e7828%2FVolt-Logo%20(1).png?alt=media" alt="logo_volt" data-size="original">

Volt is a payment gateway for open banking payments through bank redirects. The declared methods support refunds and automatic capture, but not mandates. Webhooks cover payment and refund updates.

### Status and capabilities

**Integration status:** live

**Category:** payment gateway

**Webhook flows:** payments, refunds

| Payment method | Type            | Mandates      | Refunds   | Capture methods | Countries                                        | Currencies                   |
| -------------- | --------------- | ------------- | --------- | --------------- | ------------------------------------------------ | ---------------------------- |
| bank redirect  | Open Banking    | not supported | supported | automatic       | 31 ([full list](https://hyperswitch.io/pm-list)) | DKK, EUR, GBP, NOK, PLN, SEK |
| bank redirect  | Open Banking UK | not supported | supported | automatic       | 31 ([full list](https://hyperswitch.io/pm-list)) | GBP                          |

### Connector-Specific Notes

* **Request headers:** Hyperswitch generates an idempotency key and sends the API version and hosted initiation channel on payment requests. You do not need to supply these headers. See [`build_headers()`](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_connectors/src/connectors/volt.rs#L95-L130).

### Authentication

Supply a Username, Password, Client ID, and Client Secret in the connector configuration. Hyperswitch exchanges all four credentials for an access token, then sends `Authorization: Bearer <access token>` on payment requests. See [`VoltAuthType::try_from()`](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_connectors/src/connectors/volt/transformers.rs#L293-L317), [`VoltAuthUpdateRequest::try_from()`](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_connectors/src/connectors/volt/transformers.rs#L242-L270), and [`build_headers()`](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_connectors/src/connectors/volt.rs#L95-L130).

### Before you start

1. Register with Volt at [volt.io](https://www.volt.io/).
2. Create or sign in to your account in the [Hyperswitch control center](https://app.hyperswitch.io/).
3. In the Volt dashboard, go to **Configuration → Customers** and open the merchant's **Credentials** section to find the Username and Password.
4. Go to **Configuration → Application** and open **Credentials** to find the Client ID and Client Secret. Create an application first if none exists.
5. Enable the same payment methods in Volt that you plan to select in Hyperswitch.
6. Have the credentials listed in [Authentication](#authentication) ready.

To connect Volt to your Hyperswitch account, follow [Activate a connector on Hyperswitch](/integrations/connectors-integrations/activate-connector-on-hyperswitch.md), then return here for what Volt supports.

### Webhooks

Configure a webhook merchant secret in Hyperswitch; the shared webhook verifier uses that value as the signature key. See [`verify_webhook_source()`](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_interfaces/src/webhooks.rs#L266-L301). Volt webhooks use HMAC-SHA256 verification: Hyperswitch reads the hex signature from `X-Volt-Signed` and verifies the request body, `X-Volt-Timed`, and the version from the user-agent value. See [`webhook_headers`](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_connectors/src/connectors/volt/transformers.rs#L39-L44) and [`get_webhook_source_verification_algorithm()`](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_connectors/src/connectors/volt.rs#L668-L708).

The connector recognizes seven webhook status values. An empty body is treated as endpoint verification.

| Resource | Status             | Effect in Hyperswitch        |
| -------- | ------------------ | ---------------------------- |
| Payment  | `RECEIVED`         | Payment is marked successful |
| Payment  | `FAILED`           | Payment is marked failed     |
| Payment  | `NOT_RECEIVED`     | Payment is marked failed     |
| Payment  | `COMPLETED`        | Payment remains processing   |
| Payment  | `PENDING`          | Payment remains processing   |
| Refund   | `REFUND_CONFIRMED` | Refund is marked successful  |
| Refund   | `REFUND_FAILED`    | Refund is marked failed      |

The wire values and mappings are defined by [`VoltWebhookPaymentStatus`](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_connectors/src/connectors/volt/transformers.rs#L730-L780).

### Source reference

[Volt connector implementation](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_connectors/src/connectors/volt.rs) and [Volt data mappings](https://github.com/juspay/hyperswitch/blob/a17a23c4c4c907d2314043a32a9f505f7f2bd4f9/crates/hyperswitch_connectors/src/connectors/volt/transformers.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/volt.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.
