SoftSolzSoftSolz
HomeAPI GuideAPI ReferenceWidget Tester

Create a payment link.

Create a payment link.

POSThttps://app.softsolz.uk/api/v1/services/payments/payment-links

Recent Requests

Kept only in this browser
TimeStatusTook
Send a request with Try it to see it here.

Headers

Authorizationstringrequired

Bearer token: `Bearer sk_live_...` (or `sk_test_...` for sandbox). A login token will not work here.

Idempotency-Keystring

Optional idempotency key for safe retries.

Body Params

titlestringrequired

Link title / Stripe line-item name.

currencystringrequired

ISO 4217 3-letter currency code. Stored upper-cased.

kindstring

Surface type. Any value other than "link" is treated as "button".

amount_centsinteger | null

Fixed charge in MINOR units (cents/pence). When set, the link is fixed-amount and the minimum is ignored.

min_amount_centsinteger | null

Minimum allowed amount in MINOR units for a custom-amount link (used only when amount_cents is omitted).

descriptionstring | null

Optional longer description (max 2000 chars).

show_business_nameboolean

Show the tenant business name on the hosted page.

button_colorstring | null

Hex button background colour.

button_text_colorstring | null

Hex button text colour.

Response

Response Body

idintegerPayment link id.
tokenstringOpaque public token used in hosted-pay links and checkout-session creation.
kindstringSurface type. "button" embeds on a page; "link" is a shareable hosted link.
titlestringDisplay title / Stripe line-item name.
descriptionstring | nullOptional longer description.
amount_centsinteger | nullFixed charge amount in minor units, or null when the customer chooses the amount.
min_amount_centsinteger | nullMinimum allowed amount in minor units for custom-amount links; null when a fixed amount is set.
currencystringISO 4217 currency code, upper-cased.
activebooleanWhether the link can currently take payments.
show_business_namebooleanWhether the tenant business name is shown on the hosted page.
button_colorstring | nullHex button background colour, or null.
button_text_colorstring | nullHex button text colour, or null.
paid_countintegerNumber of successful payments recorded against this link.
created_atstringCreation timestamp.
updated_atstringLast-update timestamp; round-trip as expected_updated_at for optimistic concurrency on PATCH.

Request

curl --request POST \
--url https://app.softsolz.uk/api/v1/services/payments/payment-links \
--header 'Authorization: Bearer sk_live_your_key' \
--header 'Content-Type: application/json' \
--data '{
"title": "Premium plan",
"currency": "gbp",
"kind": "button",
"amount_cents": 2500,
"min_amount_cents": 500,
"description": "One-off onboarding charge",
"show_business_name": false,
"button_color": "#1d4ed8",
"button_text_color": "#ffffff"
}'

Credentials

Sent as a Bearer token and used in the samples above and in Try it. Kept only in this browser tab until you close it. Use an sk_test_ key to stay in your sandbox.

Response · 201

{
"data": {
"id": 42,
"token": "kQ8r3mZ7xv1nT0pL2bC9dE4f",
"kind": "button",
"title": "Premium plan",
"description": "One-off onboarding charge",
"amount_cents": 2500,
"min_amount_cents": 500,
"currency": "GBP",
"active": true,
"show_business_name": false,
"button_color": "#1d4ed8",
"button_text_color": "#ffffff",
"paid_count": 12,
"created_at": "2026-05-01T09:00:00.000Z",
"updated_at": "2026-05-02T10:30:00.000Z"
}
}