On this page, find out how to:
Before you begin
Make sure you've registered to begin using Payment Links. Contact your Solution Engineer or request support . During integration, you can specify your payment capture and 3D Secure settings. Create your secret and public API keys in the Dashboard. You can set up webhooks to be notified when the payment has been approved, so you can continue the sales fulfillment flow. Create a Payment Link
Step 1: Create a new Payment Link session
When requesting a payment from a customer using Payment Links solution, you can create a Payment Links session. This can be sent to the customer through a method that best suits you.
To display a button that redirects the customer after their payment is approved, make sure your API request includes a return_url parameter with your chosen URL value.
To get a detailed view of all required and optional fields, see our API reference .
Checkout.com does not support Payment Links embedded within an iframe.
You can enable Remember Me to allow customers to save their card details during checkout. The next time the customer shops at any merchant that has Remember Me enabled, we display their saved card details.
Endpoints
http://localhost/ can only be used for the URL fields during testing and does not work in production.
post
https://api.checkout.com/payment-links
post
https://api.sandbox.checkout.com/payment-links
The fields you're required to supply in your request vary depending on the payment method used. To see which fields are required, refer to the Payment methods table.
Request example
4
"reference" : "ORD-123A" , 14
"country_code" : "+44" , 18
"return_url" : "https://example.com/payments/return" Payment method field requirements
Some payment methods may require you to provide additional fields or specific values when you perform a payment request. Refer to the API reference for more details.
Payment method Field requirements Card payments
No additional requirements.
Apple Pay
Apple Pay is processed as a card transaction. currency and billing.address.country must be supported by Apple Pay .Google Pay
Google Pay is processed as a card transaction. currency and billing.address.country must be supported by Google Pay .AlipayCN
customer.email or customer.id must be providedpayment_type must be set to Regular or Recurringproducts[] must be providedFor each product in products[], the following must be provided:namequantityreferenceunit_price billing.address.country value must be CN, for Chinacurrency value must be one of:AlipayHK
customer.email or customer.id must be providedpayment_type must be set to Regular or Recurringproducts[] must be providedFor each product in products[], the following must be provided:namequantityreferenceunit_price billing.address.country value must be HK, for Hong Kongcurrency value must be one of:Alma
billing.address.country value must be FR, for Francecurrency value must be EURBancontact
customer.name must be providedbilling.address.country value must be BE, for Belgiumcurrency value must be EURBenefit Payment Gateway
billing.address.country value must be BH, for Bahraincurrency value must be BHDreference must be providedBizum
billing.address.country value must be ES, for Spaincurrency value must be EURDana
customer.email or customer.id must be providedpayment_type must be set to Regular or Recurringproducts[] must be providedFor each product in products[], the following must be provided:namequantityreferenceunit_price billing.address.country value must be ID, for Indonesiacurrency value must be one of:EPS
billing.address.country value must be AT, for Austriacurrency value must be EURGCash
customer.email or customer.id must be providedpayment_type must be set to Regular or Recurringproducts[] must be providedFor each product in products[], the following must be provided:namequantityreferenceunit_price billing.address.country value must be PH, for the Philippinescurrency value must be one of:iDEAL
billing.address.country value must be NL, for Netherlandscurrency value must be EURKakao Pay
customer.email or customer.id must be providedpayment_type must be set to Regular or Recurringproducts[] must be providedFor each product in products[], the following must be provided:namequantityreferenceunit_price billing.address.country value must be KR, for South Koreacurrency value must be one of:Klarna
products[] must be providedcustomer.name must be providedbilling.address.country value must be one of:AT for AustriaAU for AustraliaBE for BelgiumCH for SwitzerlandCZ for Czech RepublicDE for GermanyDK for DenmarkES for SpainFR for FranceFI for FinlandGB for United KingdomGR for GreeceIE for IrelandIT for ItalyNL for NetherlandsNO for NorwayPL for PolandPT for PortugalSE for SwedenUS for United Statescurrency value must be one of: AUDCHFCZKDKKEURGBPNOKPLNSEKUSD KNET
billing.address.country value must be KW, for Kuwaitcurrency value must be KWDlocale value must be ar – if no value is provided, the en-GB locale is used by defaultMB WAY
billing.address.country value must be PT, for Portugalcurrency value must be EURreference must be providedMobilePay
Multibanco
customer.name must be providedbilling.address.country value must be PT, for Portugalcurrency value must be EURPayPal
Przelewy24
customer.name must be providedcustomer.email must be providedbilling.address.country value must be PL, for Polandcurrency value must be EUR or PLNQPay
billing.address.country value must be QA, for Qatarcurrency value must be QARdescription must be providedSEPA Direct Debit
billing.address.address_line1 must be providedbilling.address.city must be providedbilling.address.country value must be set to a country in the Single Euro Payments Area (SEPA) billing.address.zip must be providedcurrency value must be EURstc pay
billing.address.country must be set to SAcurrency value must be SARreference must be providedTabby
billing.address.country value must be one of:AE for United Arab EmiratesSA for Saudi ArabiaKW for Kuwaitcurrency value must be one of:reference must be providedThe following shipping information must be provided:shipping.address_line1shipping.cityshipping.zip items[] must be providedFor each item in items[], the following must be provided: Tamara
reference must be provided.items[] must be provided.billing.address.address_line1 and billing.address.city must be provided.For each item in items[], the following must be provided: billing.address.country must be one of:SA for Saudi ArabiaAE for United Arab EmiratesTouch 'n Go
customer.email or customer.id must be providedpayment_type must be set to Regular or Recurringproducts[] must be providedFor each product in products[], the following must be provided:namequantityreferenceunit_price billing.address.country value must be MY, for Malaysiacurrency value must be one of:TrueMoney
customer.email or customer.id must be providedpayment_type must be set to Regular or Recurringproducts[] must be providedFor each product in products[], the following must be provided:namequantityreferenceunit_price billing.address.country value must be TH, for Thailandcurrency value must be one of:TWINT
billing.address.country value must be CH, for Switzerlandcurrency value must be CHFpayment_type must be set to Regularreference must be providedVenmo
billing.address.country must be US, for the United Statescurrency value must be USDVipps
Response example
2
"id" : "pl_ELqQJXdXzabU" , 3
"reference" : "ORD-123A" , 4
"expires_on" : "2024-08-20T20:25:28+08:00" , 7
"href" : "https://pay.sandbox.checkout.com/link/pl_ELqQJXdXzabU" Step 2: Send the link to your customer
Retrieve the Payment Link from _links.redirect.href to send to your customer.
This could be by email, text message, social media, live chat – wherever your customer wants to pay.
When they visit the link, they're presented with a Hosted Payments Page to complete their payment. Once they complete the payment, they're redirected to a Checkout.com-hosted confirmation page.
Check the status of a Payment Link
To keep track of the payments you request through Payment Links, you can check the status using the id returned when you created the session. For example, pl_ELqQJXdXzabU.
There are three statuses:
Active – The Payment Link can accept a payment from the customer. A payment may have been attempted by the customer but not completed successfully.Payment Received – A payment has been received successfully using this Payment Link.Expired – The Payment Link has expired and can no longer be accessed.Endpoints
For a full explanation of the fields, see our API reference .
get
https://api.checkout.com/payment-links/{id}
get
https://api.sandbox.checkout.com/payment-links/{id}
Response examples
2
"id" : "pl_ELqQJXdXzabU" , 4
"payment_id" : "undefined" , 7
"reference" : "ORD-123A" , 8
"description" : "Payment for Gold Necklace" , 9
"expires_on" : "2021-08-20T20:25:28+08:00" , 16
"address_line1" : "123 High St." , 17
"address_line2" : "Flat 456" , 23
"country_code" : "+44" , 24
"number" : "1234567890" 29
"name" : "Gold Necklace" , 36
"href" : "https://api.sandbox.checkout.com/payment-links/pl_ELqQJXdXzabU" 39
"href" : "https://pay.sandbox.checkout.com/link/pl_ELqQJXdXzabU" 2
"id" : "pl_ELqQJXdXzabU" , 3
"status" : "Payment Received" , 4
"payment_id" : "pay_mbabizu24mvu3mela5njyhpit4" , 7
"reference" : "ORD-123A" , 8
"description" : "Payment for Gold Necklace" , 9
"expires_on" : "2021-08-20T20:25:28+08:00" , 16
"address_line1" : "123 High St." , 17
"address_line2" : "Flat 456" , 23
"country_code" : "+44" , 24
"number" : "1234567890" 29
"name" : "Gold Necklace" , 36
"href" : "https://api.sandbox.checkout.com/payment-links/pl_ELqQJXdXzabU" 39
"href" : "https://pay.sandbox.checkout.com/link/pl_ELqQJXdXzabU" 42
"href" : "https://api.sandbox.checkout.com/payments/pay_mbabizu24mvu3mela5njyhpit4" 45
"href" : "https://api.sandbox.checkout.com/payments/pay_mbabizu24mvu3mela5njyhpit4/actions" 2
"id" : "pl_ELqQJXdXzabU" , 4
"payment_id" : "undefined" , 7
"reference" : "ORD-123A" , 8
"description" : "Payment for Gold Necklace" , 9
"expires_on" : "2021-08-20T20:25:28+08:00" , 16
"address_line1" : "123 High St." , 17
"address_line2" : "Flat 456" , 23
"country_code" : "+44" , 24
"number" : "1234567890" 29
"name" : "Gold Necklace" , 36
"href" : "https://api.sandbox.checkout.com/payment-links/pl_ELqQJXdXzabU" 39
"href" : "https://pay.sandbox.checkout.com/link/pl_ELqQJXdXzabU" Next steps