Return URL & Webhooks
Two URLs configure post-payment behaviour at the business profile level (Dashboard → Developers → Payment Settings → Payment behaviour):
| Field | API field | Delivers to |
|---|---|---|
| Return URL | return_url | Buyer's browser (redirect) |
| Webhook URL | webhook_details.webhook_url | Your backend (HTTP POST) |
Return URL
Use when the checkout flow redirects the buyer (3DS, bank, hosted checkout, payment link).
Per-payment override: pass return_url when creating a payment. It takes precedence over the profile default.
Query parameters on redirect (typical): status, payment_id, client_secret.
Your thank-you / error page should read these and optionally retrieve the payment via API for the final state.
Webhook URL
PaySwitch sends asynchronous POST requests when payment (and configured refund/payout) events occur.
Your endpoint should:
- Accept HTTPS POST with JSON body.
- Respond quickly (process asynchronously if needed).
- Verify signature when enabled on your installation.
If the profile webhook URL is empty, no outbound webhooks are sent.
Allowlist
On some PaySwitch deployments, webhook destination URLs must be allowlisted by the platform team. If events do not arrive despite a correct URL in Dashboard, contact your operator.
Recommended setup
Use both: Return URL for buyer UX, Webhook URL for durable order status in your database.