--- title: "Payment Return and Notification URL" slug: "payment-return-and-notification-url" updated: 2026-09-24T11:27:29Z published: 2026-09-24T11:27:29Z canonical: "api-docs.blinkpayment.co.uk/payment-return-and-notification-url" --- > ## Documentation Index > Fetch the complete documentation index at: https://api-docs.blinkpayment.co.uk/llms.txt > Use this file to discover all available pages before exploring further. # Payment Return and Notification URL Use this page for card, Open Banking, Direct Debit, and Stripe-connected card payments. A return URL redirects the customer back to your website, while a notification URL receives payment updates on your server. ## Return URL and notification URL Set `return_url` and `notification_url` in the payment [intent](https://chatgpt.com/api/apidocs/create-intents), including for Stripe-connected payments. The `notification_url` should be a publicly reachable HTTPS endpoint that accepts `POST` requests. A browser redirect alone should not be used as proof of payment. ```json {  "return_url": "https://example.com/payment/result",  "notification_url": "https://example.com/webhooks/payments" } ``` ### Return URL After the customer has completed the payment successfully, they will be redirected to the specified URL with the following query parameters: - `transaction_id`: The [Transaction ID](https://chatgpt.com/api/apidocs/get-transactions) for the payment. - `status`: The status of the transaction. - `note`: Additional transaction details. - `merchant_data`: Additional custom data relating to the merchant or customer, for example, an `order_id`. #### Example card redirect `https://example.com/payment/result?transaction_id=BL-NRUGVMX93Q-075959&status=captured&note=captured` ### Notification URL / Webhooks After the customer has completed the payment successfully, Blink Payment sends a `POST` request to the `notification_url` provided in the intent. The request body can contain the following fields: - `transaction_id`: The [Transaction ID](https://chatgpt.com/api/apidocs/get-transactions) for the payment. - `status`: The status of the transaction. - `event_type`: Distinguishes between new customer transactions and reruns. - `note`: Additional transaction details. - `merchant_data`: Additional custom data relating to the merchant or customer, for example, an `order_id`. #### Notification URL examples **Card payment HTTP body** ```json {  "transaction_id": "BL-NRUGVMX93Q-075959",  "note": "captured",  "event_type": "new_transaction",  "status": "captured" } ``` **Open Banking HTTP body** ```json {  "transaction_id": "BL-PEUGDNJX1WW-812063",  "note": "OK",  "event_type": "new_transaction",  "merchant_data": "{\"order_id\" : \"ob-12345678\"}",  "status": "Accepted" } ``` **Direct Debit HTTP body** ```json {  "transaction_id": "BL-007748C858",  "note": "Pending Submission",  "merchant_data": "{\"order_id\": \"dd-12345678\"}",  "status": "Pending Submission" } ``` **Rerun card transaction HTTP body** ```json {  "transaction_id": "BL-WWUKV3WG4Y-783191",  "note": "Rerun successfully",  "event_type": "rerun_transaction",  "status": "Captured" } ``` All response bodies are flat JSON objects. `merchant_data` is returned as a JSON-encoded string. ### Responding to webhooks and retries Acknowledge the webhook with `HTTP 200`, `201`, `202`, or `204`. The response body is ignored. All other status codes count as failures, including other 2xx responses and redirects. Blink does not follow redirects. ```http HTTP/1.1 204 No Content ``` Failed deliveries are attempted up to five times in total, approximately 310 seconds apart, with no increasing backoff. Connection errors, timeouts, and unsuccessful responses follow the same retry rules. Worker failures may consume an attempt before a request reaches your endpoint. Respond promptly: connection timeouts are 5 seconds, and read timeouts are 10 seconds. Your endpoint should also handle duplicate notifications safely. After all retry attempts have been exhausted, failed messages are retained for 14 days. Restoring the endpoint does not automatically replay them.