Returning your customer to you

Important!

The success notification is only a confirmation that the payment was successfully initiated at the bank. Some banks allow payments to be cancelled after they are initiated so this is not a guarantee that the funds will arrive in your account.

Once your customer has confirmed the payment and the bank has successfully initiated it, Volt will show your customer a confirmation before redirecting them to the success URL that you defined when registering your application. We’ll also send a payment notification POST, with a COMPLETED status, to your previously configured URL. More details on this process are available here.

  • Contents
  • Example

This field contains a Json string comprising 3 fields. The volt parameter will be sent base64 encoded so you’ll need to base64 decode it before processing.

https://success.customer.com?volt=eyJpZCI6ICJ7Vm9sdCdzIHBheW1lbnQgVVVJRH0iLCJ1bmlxdWVSZWZlcmVuY2UiOiAie3lvdXIgaWQgZm9yIHRoZSBwYXltZW50fSIsInN0YXR1cyI6ICJ7Q09NUExFVEVEfEZBSUxFRHxQRU5ESU5HfSJ9
{
  "id": "{Volt's payment UUID}",
  "uniqueReference": "{your id for the payment}",
  "status": "{COMPLETED|FAILED|PENDING}"
}

Using the details from our initial example payment request you would receive the following details back in base64 encoded format.

https://success.customer.com?volt=eyJpZCI6ICI5M2I4NWYzYy03NmViLTQzMTYtYjFhZS1mMzM3MGRkYzU5YmMiLCJ1bmlxdWVSZWZlcmVuY2UiOiAidGVzdDU0MzIxIiwic3RhdHVzIjogIkNPTVBMRVRFRCJ9
{
  "id": "93b85f3c-76eb-4316-b1ae-f3370ddc59bc",
  "uniqueReference": "test54321",
  "status": "COMPLETED"
}

When we redirect the customer, the query string will have a parameter called volt included.

If you also requested custom parameters, we’ll include these in the return URL. Please note that we will pass these back exactly as requested and won’t encode them, so we suggest sensitive information should be encrypted before you send the parameters in your initial payment request.

Other outcomes if payment was not successful
Sometimes a payment initiation won’t be immediately successful. Potential other outcomes and why they occur are:

Pending
A payment initiation can have a PENDING status for multiple reasons, but usually:

  • For corporate accounts, another person often needs to authorise payments before they can be sent
  • For payments of a higher value or to a new beneficiary, banks occasionally perform additional checks before releasing the payment.

If you receive a PENDING status, we’ll send a POST to your notification URL and redirect your customer to the pending URL you defined when registering your application.

A pending payment will either be successful or fail. We’ll send you an updated payment notification in either case, and you should never release goods or services until the funds have been received in your bank account.

Cancelled, abandoned, failed
Payments can fail for a number of reasons, including but not limited to:

  • Insufficient funds
  • The bank refused payment
  • There was an error at the bank
  • The customer cancelled the payment
  • The customer abandoned the payment process

If a payment couldn’t be completed, we’ll send a POST with a status of FAILED to your notification URL and then redirect your customer to the failure URL you defined when registering your application.

If a payment has been cancelled by the user we will redirect them to the cancellation URL you defined when registering your application.

If you do encounter a failed payment, Fuzebox will have detailed information as to why.