# Volt

<img src="/files/ExlGcefp6yRKX5evqAin" alt="logo_volt" data-size="original">

Volt connects to Hyperswitch as a `PaymentGateway` connector using `MultiAuthKey` authentication with four credentials: Username, Password, Client ID, and Client Secret. These are exchanged for a short-lived OAuth Bearer access token. The token is sent as `Authorization: Bearer {token}` on every payment request. Every request also carries three fixed headers: `Idempotency-Key` (a per-request UUID v4), `X-Volt-Api-Version: 1`, and `X-Volt-Initiation-Channel: hosted`. All requests use `application/json`. Volt is a global open-banking payment infrastructure providing a single gateway for account-to-account payments across markets.

### Connector-Specific Notes

* **Four-credential OAuth exchange:** Volt requires four credentials — Username (`api_key`), Password (`api_secret`), Client ID (`key1`), and Client Secret (`key2`). Hyperswitch uses all four to obtain a Bearer access token. Enter them in the control center exactly as provided; do not attempt to pre-generate tokens.
* **Per-request headers:** Every Volt payment request carries a fresh `Idempotency-Key` (UUID v4 generated by Hyperswitch), `X-Volt-Api-Version: 1`, and `X-Volt-Initiation-Channel: hosted`. These are set automatically by the Hyperswitch implementation.
* **Credentials location:** Username and Password are found in your Volt dashboard under **Configuration > Customers** (under the merchant's **Credentials** section). Client ID and Client Secret are found under **Configuration > Application** in the **Credentials** section.
* **Webhook verification:** Volt delivers webhook events to Hyperswitch using HMAC-SHA256 verification. Configure the Hyperswitch webhook endpoint in your Volt dashboard.
* **Capture methods supported:** Automatic only. Open-banking payments settle directly — manual capture is not applicable.
* Volt builds a global open-banking infrastructure and creates a single gateway for account-to-account payments. They aim to remove payment barriers in e-commerce.
* For a full list of supported payment methods, visit [hyperswitch.io/pm-list](https://hyperswitch.io/pm-list).

***

### Activating Volt via Hyperswitch

#### Prerequisites

1. You need to be registered with Volt. Sign up at [volt.io](https://www.volt.io/).
2. You should have a registered Hyperswitch account, accessible from the [Hyperswitch control center](https://app.hyperswitch.io/).
3. Volt **Username** and **Password** are found in your Volt dashboard under **Configuration > Customers** (merchant's **Credentials** section).
4. Volt **Client ID** and **Client Secret** are found under **Configuration > Application** in the **Credentials** section (create an application if one does not exist).
5. Select all payment methods you wish to use Volt for. Ensure these match the ones configured in your Volt dashboard.

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

***

### Responsibility Boundaries

**Hyperswitch owns:** routing decisions, OAuth token exchange using all four credentials, per-request Idempotency-Key generation, sending the correct version and channel headers, retry scheduling, and unified error mapping. **Volt owns:** token issuance, payment routing to the correct bank, and open-banking settlement.

**Hyperswitch owns:** maintaining all four credentials and performing the token exchange. **Volt owns:** validating the credentials and issuing a valid token. If any credential changes in Volt and is not updated in Hyperswitch, the token exchange will fail and no payments can proceed.

***

### Common Failure Modes

**Token exchange failure** Symptom: Payment requests fail before reaching the payment API. Fix: Verify all four credentials — Username, Password, Client ID, and Client Secret — in Hyperswitch match exactly what is configured in your Volt dashboard. A mismatch in any single credential causes the OAuth exchange to fail.

**Credential location confusion** Symptom: Token exchange fails after a credential update. Fix: Username and Password come from **Configuration > Customers**; Client ID and Client Secret come from **Configuration > Application**. These are different sections — ensure credentials are entered in the correct Hyperswitch fields.

**Webhook verification failure** Symptom: Volt events arrive at Hyperswitch but payment statuses do not update. Fix: Verify the Hyperswitch webhook endpoint URL is configured correctly in your Volt dashboard and that the webhook HMAC secret matches.

***

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


---

# Agent Instructions: 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:

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

The question should be specific, self-contained, and written in natural language.
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.
