Recurring - Alternative Payment Methods (APM)
Recurring functionality allows merchants to complete transactions using saved information from previous transactions, eliminating the need to re-enter payment method details for subsequent transactions.
The following alternative payment methods support recurring transactions:
- applepay
- googlepay
- klarna
- paypal
- sepa
This guide uses applepay as an example, but the process is identical for all supported payment methods mentioned above. For more details on standard integration, please refer to the applepay integration guide.
For comprehensive information, consult the API documentation.
Required Fields
Recurring transactions require additional fields:
First Transaction | Repeat Transaction(s) |
---|---|
|
|
For information on creating a customer object, see the customer object creation section in the applepay integration guide.
First Transaction Initialization
In addition to the standard
applepay transaction initialization request, include the recurring_type
and
customer
parameters.
Example request body for initiating the first recurring applepay transaction:
{
"payment_profile": "7c23a50d-8699-431c-a82b-a78718d2b6f6",
"amount": 14,
"customer": "cbbfa6ec-fb44-4da4-94c4-d81e92fd43e6",
"customer_ip": "127.0.0.1",
"details": {
"redirect_url": "https://example.com/finalize"
},
"dynamic_descriptor": "orderdesc01",
"merchant_reference": "my order id",
"payment_product": "applepay",
"recurring_type": "first",
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) Chrome/86.0.4240.198 Safari/537.36",
"webhook_transaction_update": "https://example.com"
}
Obtaining the Recurring ID (Optional)
After successful transaction completion, you can retrieve the transaction information using the following endpoint:
GET
/v1/transaction/{Transaction ID}
The details.recurring_id
field in the response contains the Recurring ID. This ID is optional for subsequent
transactions.
recurring_id
is supplied in subsequent transactions, the system automatically
uses the last created recurring profile for the given customer and payment product. The recurring_id
is only necessary
if you need to support multiple recurring profiles for the same customer and payment product.
Subsequent Transaction Initialization
For subsequent transactions, include the recurring_type
and customer
parameters in addition to the
standard
applepay transaction initialization request. Optionally, you can include the
details.recurring_id
parameter.
Example request body for initiating a subsequent recurring applepay transaction:
{
"payment_profile": "7c23a50d-8699-431c-a82b-a78718d2b6f6",
"amount": 14,
"customer": "cbbfa6ec-fb44-4da4-94c4-d81e92fd43e6",
"customer_ip": "127.0.0.1",
"details": {
"redirect_url": "https://example.com/finalize",
"recurring_id": "f49c7599-0635-4622-8d6a-f3857296d773"
},
"dynamic_descriptor": "orderdesc01",
"merchant_reference": "my order id",
"payment_product": "applepay",
"recurring_type": "repeat",
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) Chrome/86.0.4240.198 Safari/537.36",
"webhook_transaction_update": "https://example.com"
}