Overview
The Pay By Link feature allows you to create a secure payment request link, which can be sent directly to customers to initiate payment collection. Upon clicking the link, Volume handles the payment capture, authorization, and initiation processes seamlessly.
This feature offers a convenient, secure solution for sending a fixed-amount payment request link to end users, ensuring a smooth and efficient payment experience. The generated link can be shared through various channels, including email, SMS, or other preferred methods of communication.
Request
curl --location --request POST 'https://api.sandbox.volumepay.io/api/paymentintents/link' \
--header 'x-application-id: {application-id}'
--header 'x-application-secret: {application-secret}'
--header 'Content-Type: application/vnd.volume.v0.7+json' \
--header 'Accept: application/vnd.volume.v0.7+json' \
--data-raw '{
"applicationId": {application-id},
"customerIntentDescription": null,
"merchantIntentDescription": null,
"merchantPaymentId": "merchantPaymentId",
"paymentRequest": {
"amount": 5,
"currency": "GBP",
"reference": "reference"
}
}'
argument | kind | type | description |
---|---|---|---|
application-id | header | UUID | id of the merchant application |
application-secret | header | UUID | private key of the merchant application |
Content-Type | header | String | application/vnd.volume.v0.7+json |
Accept | header | String | application/vnd.volume.v0.7+json |
applicationId | body | UUID | id of the merchant application |
customerIntentDescription | body | String | description of the payment for customer |
merchantIntentDescription | body | String | description of the payment for merchant |
merchantPaymentId | body | String | merchant payment id |
amount | body | Number | amount to pay |
currency | body | String | currency of the payment |
reference | body | String | reference of the payment |
❗ applicaiton-secret
can be generated in Merchant Portal -> Settings -> Security
Response
{
"paymentIntentId": "{paymentIntentId}",
"paymentIntentLink": "https://sandbox.paybylink.volumepay.io/?paymentIntentId={paymentIntentId}",
"customerIntentDescription": null,
"merchantIntentDescription": null,
"expiryTimeUtc": "2024-08-21T15:50:38.339227886",
"merchantName": "Merchant Name",
"applicationId": "{applicationId}",
"merchantPaymentId": "null",
"paymentRequest": {
"amount": 5,
"currency": "GBP",
"reference": "payment reference"
},
"isLink": true,
"usageMode": "ALLOW_MULTIPLE_ATTEMPTS",
"tracingId": "7375828018350538150"
}
field | type | description |
---|---|---|
paymentIntentId | UUID | paymentIntentId |
paymentIntentLink | String | link to pay by link page with bank selector |
customerIntentDescription | String | description of the payment for customer |
merchantIntentDescription | String | description of the payment for merchant |
expiryTimeUtc | String | link expiry time |
merchantName | String | merchant name |
applicationId | UUID | id of the merchant application |
merchantPaymentId | string [optional] | merchant payment id if specified when payment was initialized |
amount | number | amount to pay |
currency | string | currency of the payment |
referece | string | reference of the payment |
isLink | boolean | true if payment intent was initialized as pay by link |
usageMode | string | usage mode: ALLOW_MULTIPLE_ATTEMPTS , ALLOW_SINGLE_ATTEMPT |
tracingId | string | call tracingId (for support) |
❗ Webhook Notification will be sent when payment is completed.