The notificationUrl acts as a fail-safe to ensure that your server always has the final transaction status in the situation where the client device loses connectivity.

For the MSDK, the system uses the notificationUrl to send a notification ONLY if the get status (GET /v1/checkouts/{id}/payment) was not called successfully by your server. Our server tracks whether or not your server pulled the final result and triggers the notificationURL in the following scenario:

 Flow of events:

- NotificationUrl provided in createCheckout request (for the MSDK)

- The shopper is redirected to 3D Secure window and closed the browser or had a connectivity issue

- 3D Secure times out after 12 minutes

- Status changes from pending to rejected

- System immediately sends a notification to the notificationUrl, adding GET parameter resourcePath based on the UUID

- Notification to the merchant's server is sent 29 minutes after payment was initiated. It will be a server to server call on the notificationUrl, adding GET parameters "checkoutId", and "resourcePath" based on the checkoutId

Based on the above – if your server fails to trigger the GET request for the transaction result then we will trigger the notificationURL.