Take a recurring payment
Requesting a payment
1. Get payment token
Start by generating a payment token. Read our guide on how to request a recurring payment to understand how.
2. Create payment request
Next create a RPIRRPIR - Recurring Payment Initiation Request. Send an HTTP POST
request to the relevant endpoint + /api/v1//partners/recurringPayments/
including the header Authorization: Bearer <payment_token>
. You can use the same payment token generated in the first step.
Request
On top of the request parameters defined here, there is an additional mandatory parameter. This is:
Parameter | Description |
---|---|
merchantId | The unique identifier of the merchant on behalf of which you are initiating this payment. More on finding the relevant IDs here. |
{
"merchantId": "1f7rhste5rj0unf6",
"amount": "1",
"currency": "GBP",
"description": "Web payment",
"callbackUrl": "yoursite.com/payment-outcome-page",
"firstPaymentDate" : "2022-04-09",
"numberOfPayments" : "3",
"frequency": "MONTHLY",
"destinationAccount": "GBP1",
"mediaType": "URL"
}
Response
{
"redirectUrl": "<redirect_url>",
"qrCodeUrl": "<qr_code_url>",
"requestId": "adca2b6a077de1f5",
"mediaType": "URL"
}
3. Bank selection and consent
The consumer should then be redirected as detailed here.
Recurring payment status updates
Vyne offers a number of ways for partners to be updated on the status of recurring payments.
Approach 1: Callback URL payload
As laid out here , Vyne will append the relevant payment status to the callback URL in order to allow the appropriate page to be presented to the consumer as they return to the merchant site.
Approach 2: Get payment status
You can request a status update on any payment at any time by sending an HTTP GET
request to the relevant base URL + /api/v1/partners/recurringPayments
including the headers Authorization: Bearer <payment_token>
. Generate a fresh payment token for the <payment_token>
.
Request
curl --location --request GET 'https://uat.app.payvyne.com/api/v1/partners/recurringPayments/<recurringPaymentId>' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <payment_token>'
Response
{
"merchantId": "1f7rhste5rj0unf6",
"id": "a5630672241cf824",
"amount": "1.00",
"currency": "GBP",
"description": "test payment",
"status": "COMPLETED",
"bank": "Monzo",
"destinationAccount": "GBP1",
"firstPaymentDate": "2026-09-16",
"frequency": "MONTHLY",
"numberOfPayments": 2,
"createdAt": "2021-09-27T10:11:09.089",
"updatedAt": "2021-09-27T10:11:58.424",
"customerReference": "jgdw74jg",
"merchantReference": "yegdt6t67g"
}
Recurring Payment statuses
Recurring Payments can be in one of many states which reflect the stage in the process the payment has reached between Vyne and the bank. Find out more about payment statuses here.
Updated 6 months ago