Payment Link
A Payment Link is a shareable URL you can send to a customer to collect a single payment or set up a subscription, without writing any checkout code. Open the URL in any browser and we render the hosted checkout, collect payment details, and process the payment. Use Payment Links for one-off invoices, social-media checkout, in-person QR codes, or anywhere you need a checkout page without integrating the SDK.
A Payment Link is a shareable URL you can send to a customer to collect a single payment or set up a subscription, without writing any checkout code. Open the URL in any browser and we render the hosted checkout, collect payment details, and process the payment. Use Payment Links for one-off invoices, social-media checkout, in-person QR codes, or anywhere you need a checkout page without integrating the SDK.
{ "id": "plink_abc123", "object": "payment_link", "merchantId": "mer_xyz789", "active": true, "expiresAt": "string", "currency": "EGP", "computedAmount": 100000, "nameCollection": false, "billingAddressCollection": false, "shippingAddressCollection": false, "phoneNumberCollection": false, "allowPromotionCodes": false, "submitType": "PAY", "customerCreation": "always", "afterCompletion": { "type": "redirect", "redirect": { "url": "string" }, "hostedConfirmation": { "customMessage": "string", "returnUrl": "string" } }, "lineItems": [ { "id": "string", "quantity": 0, "price": {}, "adjustableQuantity": {}, "amountSubtotal": 0, "amountTotal": 0, "amountDiscount": 0, "amountTax": 0, "currency": "EGP", "description": "string", "presentmentDetails": {} } ], "customFields": [ { "key": "string", "label": "string", "type": "TEXT", "isOptional": true, "hasLimits": true, "limitType": "AT_MOST", "minCharacters": 0, "maxCharacters": 0, "dropdownOptions": [ null ], "text": {}, "numeric": {}, "dropdown": {} } ], "feeConfig": { "feesPassThrough": true, "vatCollectionEnabled": true, "vatCollectionRate": 0 }, "metadata": { "property1": null, "property2": null }, "brandingSettings": { "colorMode": "light", "borderStyle": "rounded", "spacing": "condensed", "inputSize": "small", "inputStyle": "flat", "formLayout": "compact", "colors": { "primary": "string", "primaryForeground": "string", "background": "string", "foreground": "string", "border": "string", "input": "string", "ring": "string", "muted": "string", "mutedForeground": "string", "accent": "string", "accentForeground": "string", "destructive": "string" }, "fontFamily": "string" }, "paymentMethodConfigurationId": "string", "createdAt": "string", "updatedAt": "string"}Payment Intent
A PaymentIntent tracks the full lifecycle of collecting one payment from your customer: from creation, through authorization and 3-D Secure, to capture and final outcome. We recommend creating one PaymentIntent per order: you can inspect its history of Charge attempts, watch its `status` as it transitions, and reference the successful Charge it ultimately produces. PaymentIntents are the object that the hosted Checkout and xpay.js drive on the client to complete a payment.
Pending Coupon
The Coupon selected for a Checkout Session before payment completes. It contains the discount terms used to calculate the session total; the Coupon has not yet been redeemed.