Go-live checklist
Before flipping over to running your integration in production for paying customers it's important that we both confirm that things are working as expected. Of particular importance is ensuring that the numbers shown in Loaded correctly match what the source data sent from your integration expect. Our joint customers expect that they can rely on the products to work nicely together!
Handle edge cases
Once you've finished the main integration it's worthwhile spending a little bit of time to consider the edge cases that might warrant a little extra checking. Things that we've found can commonly cause inconsistencies in integrations are:
- Items being added to an order
- Refunds
- Split bills
Review your API error handling and logging
Production is the worst place to find that errors aren't being handled gracefully. Before going live make sure that you're comfortable that you've got sufficient error handling and logging to be able to support customers using the integration you've built.
Every error response from the Loaded API should (if it doesn't please raise it with us to fix) come with an errorId
property that contains a unique value. This value allows Loaded to quickly identify the reason for any unexpected errors you receive - make sure this is easily found in your logs!
Syncing existing data
The Loaded platform ideally has all POS data synced with it when you first connect a new site. This lets the customer immediately gain value from reporting features instead of having to wait for data to accumulate over time.
It's worth checking the sync of a system with a reasonable amount of data to check for any edge cases that might not have occurred when developing the integration.
Remember that the Loaded API has rate limiting in place. This means that your code should be tolerant of receiving an HTTP 429 Too Many Requests
response back. When this occurs (often seen during loads of lots of historic data) the client application needs to back off and wait a minute before sending more requests.
Complete the integration QA tests
The integration QA test cases that should have been shared with you early in the integration process should now all be passing. Once you're confident that the scenarios are working as expected and the numbers add up in Loaded to match what happens on your system you can share this with Loaded for validation.
We generally try and run through these cases together on a call, however you can also let us know what date range in Loaded was used for the testing, and at what time the tests were run we can run through the checks on our side to confirm things look ok too.
Determine a plan for recovering sites that have data issues
Inevitably there'll come a point where a production customer ends up with incorrect data appearing in Loaded. To be able to efficiently address this it's important that your integration has an approach to address these and correct the data.
A solution we've seen used to good effect here is to be able to re-initiate the initial data load portion of an integration with a given data range. The requests can be sent to the Loaded API as updates which replace the content of what was originally sent, thereby replacing the incorrect values with the (hopefully) correct ones.
Change your API client credentials
Once you're ready to move into production Loaded will share a new set of credentials with you for your client. These are production specific and will be different to those of our test environment where your integration will have been occurring to-date.
Make sure your integration is capable of being configured with different credentials easily.
Production pilot customers
To allow a round of validation in production we move integrations into a pilot phase first. This allows you to run a small number of real customers data into Loaded while a close eye is kept on things. The length of time this takes varies, but the purpose is that we're all comfortable that when connecting new sites using the integration things add up correctly.
In parallel with the pilot phase we need to agree a process for connecting new, and supporting existing customers. The Loaded Customer Success team will work with you to make sure that there is a well understood plan for these things.
Generally available release
Once everyone is comfortable that the integration is working well for the pilot customers the integration can move to being generally available. At this point both Loaded and your team are able to bring new customers on whenever desired.