Skip to main content
For technical developers
Technical support

Technical support

How does the Developer sandbox work?

You require a secure client ID and secret to access the sandbox. This will be provided by the Application Management team.

Payit will provide the endpoint connection details.

Sandbox allows you to develop and test your integration from your checkout page with Payit as a new payment option.

The sandbox treats Payit and the individual banks as a ‘black box’ reducing effort and complexity during development and early testing.

This is in a safe environment as it is not connected to ‘real banks.

Payit receives a number of error codes (see API specification) from the banks which are translated into an easily understood response for you, so that this can be played back to the customer to inform them of the next step e.g. payment has been successful and goods will be despatched.

Is the sandbox for Collecting Payment by Request the same sandbox used for Collecting Payments Online?

No, a separate sandbox is required for Collecting Payments by Request. If you are onboarding both products, you will need to be set up 2 sandboxes to allow testing for the different functionality.

Please refer to the Sandbox documentation on the Collecting Payments and Collecting Payments by Request Bank of APIs pages for further information.

How does payment status and reconciliation work?

For each and every Payit transaction, we will pass the payment status back to you showing the payment as “successful” or “failed”. If there is no status received this means the payment is “in progress”. This could mean the ASPSP (i.e. the payer’s Bank) has placed the payment in a fraud queue for example. You can then use an API to send a request to Payit to check the payment status. Payit has three polling strategies:

Short term – Payit will poll your Bank for 15 seconds

Mid Term – Payit will poll your Bank for 3 hours

Long Term – Payit will poll your Bank for up to 6 days

If Payit does not receive a terminal message (success or failed) after six days, Payit will confirm back to you the payment was unsuccessful.

NatWest will provide you with daily reconciliation reports for Payit which will include data fields such as: date and time of transaction, merchant name, bank name, amount, payment status and the transaction ID.

The four reports that will be available are:

  1. Successful transaction file – containing all successful transaction for today
  2. Failed transaction file - containing all failed transaction for today
  3. In progress transaction file - containing all transactions that are neither successful or failed and therefore are deemed “In progress”
  4. In progress in past but completed today – containing all transactions that were previously “in progress” but were successfully processed today

Files are available to the merchant from 01:00 and will detail transactions for the previous day from 00:00 to 23:59. Files are generated at the merchant parent level, so different brands within the file will have reporting control breaks with Total number of transactions and Total amount of transactions. If you are unsure on the merchant and brand setup, please ask your Implementation Manager.

The response payload contains the direct URL for various reconciliation files. You can action a download of the file using the URLs.

Payit also provides an API endpoint which allows you to pass in transaction ID and receive status for an incomplete (pending) payment supporting intraday reconciliation.

Is there Developer Documentation?

Yes. Please find this at: https://www.bankofapis.com/products/payit/

Was this article helpful?