Overview
When your sale application is approved, a test sale will be created in addition to a production sale. Test sales are for for testing your app’s integration with Sonar, including various failure/edge cases. Test sales differ from production sales in the following ways:- You are able to update settings at any time via the founder dashboard (production sales are locked after approval).
- You are able to override the setup/eligibility state of your entities in order to test various failure scenarios.
How to integrate with a test sale
Test sales have a separate sale UUID and OAuth client UUID, which you will need to configure in your app. You can find the UUIDs in the Integration section of test sale settings in the founder dashboard. More details on how to configure these settings in your app are in the integration guides.How to override entity state for a test sale
You need to navigate to the Sonar entity management page for the test sale. You can either follow the link that you should have on your sale site, or click the preview link in the Integration section of test sale settings in the founder dashboard. You will know you are on a test sale because a panel saying “Sale integration sandbox” will be visible. You can override entity state by clicking the “Overrides” link.
This will bring up a modal like this:
Refer to our reference documentation for the meanings of each of these fields:
- Setup State
- Eligibility Reasons
- Pre Purchase Check Failure Reason
- Country - the entity’s country of resience or incorporation. This can be useful for testing the experience for entities in blocked countries.
Testing with multiple people
Overrides are set per entity, so your whole team can test in parallel. Each teammate signs into the test sale via OAuth and gets their own entity. They then set Overrides on their own entity from the test sale’s entity management page. This is not limited to people with founder dashboard access, and no real KYC is required. Anyone who can reach the test sale site can authenticate, create an entity, and apply Overrides to test their own commitment flow.Why a test commit is blocked without overrides
If you do not set Overrides on a test sale, your entity uses your Echo account’s real setup state and sale eligibility. If that account has not completed setup or is not eligible, the entity will not be ready to purchase (for examplereadyToPurchase = false), which blocks the commitment.
To bypass this for integration testing, apply Overrides (for example, set the entity to “ready to purchase”). Your frontend should still handle PrePurchaseFailureReason with the documented messages so you can verify the blocked-commitment experience too.