Create payment
Create new payment request.
Authorization
Bearer In: header
Header Parameters
It helps preventing duplicates in your POST requests. It is recommend using a UUID for the key, however you may use any other unique identifier you choose.
length <= 64Version of the API used. Currently, version 1 is the only version.
1Channel used for payment initiation flow.
"api" | "hosted"Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://gateway.sandbox.volt.io/payments" \ -H "Idempotency-Key: 85136c79cbf9fe36bb9d05d0639c70c265c18d37" \ -H "X-Volt-Api-Version: 1" \ -H "X-Volt-Initiation-Channel: api" \ -H "Content-Type: application/json" \ -d '{ "currency": "EUR", "amount": 10000, "internalReference": "H35X48Y4FWOD6G3S", "paymentReference": "T1Qwerty", "payer": { "reference": "JDOE-101", "firstName": "John", "lastName": "Doe", "organisationName": "JD Holdings", "email": "johndoe@example.com" }, "device": { "ip": "192.168.0.1", "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X x.y; rv:42.0) Gecko/20100101 Firefox/42.0", "fingerprint": "2aae6c35c94fcfb415dbe95f408b9ce91ee846ed" }, "paymentSystem": "OPEN_BANKING_EU", "openBankingEU": { "type": "SERVICES", "institutionId": "cdae5c01-a629-4362-be56-52101ec22a49", "statementDescriptor": "Black coffee - big", "validityPeriod": 1440, "accountIdentifiers": { "iban": "DE75512108001245126199" } }, "beneficiary": { "name": "Jane Doe", "accountIdentifiers": { "iban": "PL10105000997603123456789123" } }, "communication": { "notifications": { "url": "https://mywebsite.com/webhooks" }, "return": { "urls": { "unified": { "url": "https://mywebsite.com/payment" }, "success": { "url": "https://mywebsite.com/payment/success" }, "failure": { "url": "https://mywebsite.com/payment/failed" }, "pending": { "url": "https://mywebsite.com/payment/pending" }, "cancel": { "url": "https://mywebsite.com/payment/cancelled" } }, "queryString": "id=xyz" } }, "displayInfo": [ { "key": "Product SKU", "value": "87ec73a0" } ], "termsAndConditionsAccepted": true }'{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"currency": "EUR",
"amount": 10000,
"paymentReference": "XV9840MK550AMKQ910",
"internalReference": "H35X48Y4FWOD6G3S",
"paymentSystem": "OPEN_BANKING_EU",
"openBankingEU": {
"type": "BILL",
"institutionId": "cdae5c01-a629-4362-be56-52101ec22a49",
"validityPeriod": 1440,
"provider": "Volt",
"accountIdentifiers": {
"iban": "DE75512108001245126199"
}
},
"payer": {
"reference": "JDOE-101",
"firstName": "John",
"lastName": "Doe",
"organisationName": "JD Holdings",
"email": "johndoe@example.com",
"accountIdentifiers": {
"iban": "DE75512108001245126199"
}
},
"sender": {
"name": "John Doe",
"accountIdentifiers": {
"iban": "DE75512108001245126199"
}
},
"beneficiary": {
"name": "Jane Doe",
"accountIdentifiers": {
"iban": "PL10105000997603123456789123"
}
},
"device": {
"ip": "192.168.0.1",
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X x.y; rv:42.0) Gecko/20100101 Firefox/42.0",
"fingerprint": "2aae6c35c94fcfb415dbe95f408b9ce91ee846ed"
},
"status": "NEW_PAYMENT",
"transferType": "SWIFT",
"displayInfo": [
{
"key": "Product SKU",
"value": "87ec73a0"
}
],
"createdAt": "2024-04-15T15:52:01+00:00",
"updatedAt": "2005-08-15T15:52:01+00:00",
"mandateId": null,
"paymentInitiationFlow": {
"status": "PROCESSING",
"details": {
"reason": "AWAITING_USER_REDIRECT",
"redirect": {
"url": "https://vo.lt/asqIs",
"directUrl": "https://myBank.com/authorisation?code=xyz"
}
}
}
}{
"code": "MISSING_HTTP_HEADER",
"message": "Missing \"X-Volt-Initiation-Channel\" HTTP header."
}{
"code": "UNAUTHORISED",
"message": "Unauthorised."
}{
"code": "ACCESS_DENIED",
"message": "Access denied."
}{
"code": "IDEMPOTENCY_CONFLICT",
"message": "Idempontency key already used."
}{
"code": "VALIDATION_FAILURE",
"message": "Validation failed.",
"errors": [
{
"type": "TOO_LONG",
"propertyPath": "psdEurope.accountIdentifications.iban",
"message": "IBAN must have a maximum of 36 characters"
}
]
}{
"code": "INTERNAL_SERVER_ERROR",
"message": "Something went wrong. Please, contact support. TraceId: b8cfd344-093c-4b8c-8fd4-f0e406060c3c. Timestamp: 1723193467."
}