The POLi Nudge

The POLi nudge ensures that the merchant receives a real-time notification that a transaction has reached a terminal state.

If a customer closes their web browser before returning to the merchant's website but after completing the payment, this is how their transaction gets credited and is how the merchant's system is updated.

POLi API Workflow

How do I implement the nudge?

Merchants can specify that the POLi nudge be sent to them by specifying a notification URL in their Initiate transaction request.

POLi will send a HTTP POST to the merchant’s specified Notification URL upon the transaction reaching a terminal state. The data contains the token which is URL-encoded and is posted inside the Request.Form collection in a field marked as Token. The Notification URL must be publicly accessible.

The merchant can then call the GETTransaction API with the token to check the status of the transaction, and update the transaction to credited.

Note: The nudge is only a notification that a transaction has reached an end (terminal) state. This is not a notification indicating that funds will be received. The information you receive in your GETTransaction call should update your system in the correct way. Daily reconciliation should then be performed to ensure funds are received before issuing the good/service purchased.

The transaction process ends with one of the following terminal statuses:

Completed A successful payment, indicating funds are to be credited to the merchant
TimedOut The customer did not complete the payment in the allotted time
Failed The customer was unable to complete the transaction
ReceiptUnverified POLi is unable to determine if the transaction was successful
Cancelled The transaction was cancelled by the user
Important: For security reasons, the POLi Nudge contains no detailed information about the transaction and alone cannot be used as confirmation that a payment was successful; it only indicates that the transaction process has now ended.

Nudge Example

Caution: The POLi Nudge can only be sent to the default port 80 or the secured port 443.
#### << Headers >> ####
Connection: Keep-Alive
Expect: 100-continue
Content-Length: 40
Content-Type: application/x-www-form-urlencoded
#### << Content >> ####