Payment links#
The simplest flow: charge an amount, no deposit, no guarantee. Use it for one-off invoices, utility bills or ad-hoc charges.
Create one#
curl -X POST https://manage.casapay.com/api/v1/gateway/sessions \
-H 'Authorization: Bearer sk_live_...' \
-H 'Content-Type: application/json' \
-d '{
"tenant": { "email": "tenant@example.com", "first_name": "Mari", "last_name": "Tamm" },
"agreement_type": "payment_link",
"first_payment_amount": 120.50,
"first_payment_description": "Water bill, March",
"currency": "EUR",
"success_url": "https://your-app.com/done",
"cancel_url": "https://your-app.com/cancelled"
}'Send the tenant the returned gateway_url.
What is different#
| Payment link | Guarantee types | |
|---|---|---|
cover_amount | Not allowed | Required |
deposit_mode | Not used | Required when cover is above 0 |
| Deposit choice step | Never shown | Shown when mode is choice |
| Payout | On settlement | Due date, or +30 days for cover |
| CasaPay risk | None | CasaPay pays you even if the tenant does not |
cover_amount is rejected on payment links
Sending a non-zero cover_amount with agreement_type: payment_link returns 422. Payment links carry no guarantee by definition.
Payment method fees#
If your entity has per-method fees configured, a CasaPay transaction fee is added on top as its own invoice line when the tenant pays by card or bank. The fee for each method is returned with the available payment methods, so the checkout shows the surcharge before the tenant commits.
An operator take rate, if configured, is deducted from your payout instead and billed back on your operator billing period. See Amounts and pricing.