About Volt Accounts

Volt offers transactional accounts to selected customers, called Volt Accounts.  These accounts are operated separately from our Connect functionality.  A Volt Account can be used to receive funds (including shopper payments initiated by Volt) and paying out to other parties, like suppliers or your own customers.  It provides Volt merchants an efficient and secure way to manage financial transactions.

Note: Volt Accounts are currently in beta, and we are actively working to enhance their functionality. Talk to your Sales representative or Delivery Manager for more details.

Getting started

  1. You’ll need to provide a webhook URL to which all notifications will be sent by Volt.
  2. To start integrating you need to have the following details (thse will be provided to you by the Volt Implementation Team):
    • username
    • password
    • notification secret
  3. After your onboarding for Volt Accounts, you will receive the account details, e.g.: IBAN and Volt account identifier

Authentication

Every request must contain an authorisation header :-

Authorization: Bearer {token}

How to generate the JWT token
  • Token is constructed from JWT header, empty payload, and JWS signature.
  • JWT header must contain “kid” field with your API key identifier
  • JWS signature is constructed from JWT header, original request payload and your API secret

JWT_Header:
{
  "alg": "HS256",
  "typ": "JWT",
  "kid": "YOUR_API_KEY_GOES_HERE"
}

JWT Payload (detached, empty): 
""

JWT Signature:
HMACSHA256(
  base64UrlEncode(JWT_Header) + "." +
  base64UrlEncode(request_payload),
  YOUR_API_SECRET_GOES_HERE
)


request_payload:
{"requestPayload": "some_payload"}

Example token, where:

  • kid = YOUR_API_KEY_GOES_HERE
  • secret = YOUR_API_SECRET_GOES_HERE
  • payload = {“requestPayload”: “some_payload”}

Result, signature is red:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IllPVVJfQVBJX0tFWV9HT0VTX0hFUkUifQ...

tIkEiumeKx7iLHX_Rk78jVvByV5KhnedjqCCJGVEXcM