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.


Did this page help you?