Creating a Payment Link
Available via: Dashboard and API
How It Works
Inflow allows you to create reusable or one-time payment links that redirect your customers to a hosted checkout page.
These links are ideal for:
- Selling digital or physical goods and services
- Accepting payments without building a storefront
- Collecting support or contributions
Step-by-Step Guide
- In your Inflow Dashboard, go to Product catalog → Payment links and click Create payment link. You can also use + → Payment link in the top bar.
- Add one or more products from your catalog, or click Add new to create one, and set their quantities. The first product sets the link's currency.
- Optionally, give the link a name and an expiry date, and choose its options: Price includes VAT, Save payment method and Redirect after payment.
- Click Create link. The link's page opens.
- Copy the link, or its QR code, and share it via email, social media, messaging, or on your website.
See Payment Links for every option.
Managing Your Links
From the link's page in Product catalog → Payment links, you can:
- Edit link to change its name, expiry date and options
- Deactivate or Activate the link to control its availability
- Archive or Delete a link you no longer need
- See its Recent payments, and click View all for every payment made through it
Creating Links via the API
You can also create payment links programmatically using your private API key:
curl -X POST https://api.inflowpay.com/api/link \
-H "X-Inflow-Api-Key: inflow_prod_your_key" \
-H "Content-Type: application/json" \
-d '{
"currency": "EUR",
"products": [{ "name": "Product", "price": 2500, "quantity": 1 }]
}'| Field | Type | Required | Description |
|---|---|---|---|
currency | string | Yes | EUR, GBP or USD — the currency the link settles in |
products | array | Yes | List of products with name (string), price (number, in cents), quantity (number) |
sourceCurrency | string | No | Price this link in another currency: products[].price are then read as minor units of it and converted at the live mid-market rate — see Pricing in a Local Currency |
status | string | No | enabled (default) or disabled |
sessionCustomization | object | No | Custom checkout appearance (bgColor, fontColor, logoUrl, merchantName) |
isVatIncluded | boolean | No | false (default): prices are tax-exclusive, tax is added on top. true: prices include tax |
defaultBillingCountry | string | No | ISO 3166-1 alpha-2 country pre-filled at checkout (VAT recomputed accordingly) |
statementDescriptor | string | No | Bank statement descriptor (max 11 characters) |
returnMode | string | No | Post-payment screen: DEFAULT, APP_RETURN, or APP_INSTALL — see Mobile Apps |
appStoreUrl | string | No | App Store listing URL, shown when returnMode is APP_INSTALL |
playStoreUrl | string | No | Google Play listing URL, shown when returnMode is APP_INSTALL |
Prices are in cents. For example, €25.00 =
2500.
Pricing in another currency. Add
sourceCurrencyand send your prices in that currency's minor units — 50.00 TRY is5000. We convert at the mid-market rate, with no conversion fee charged to you, and store the result incurrency. See Pricing in a Local Currency.
See the API Reference for full details.
Looking for recurring payments? See Creating a Subscription Offer to generate a shareable subscription link instead.
Updated 13 days ago
