Test cases
The ekko integration check collections verify your ekko Climate API v3 integration against the staging environment before you go live. Each collection is tailored to a specific integration path and includes automated pass/fail assertions for every request.
Two collections are available. Choose the one that matches your integration path.
Which collection do I need?
Use the Direct API integration check if your integration calls the quotes and funds allocation endpoints directly. Use the Checkout SDK integration check if you present the consumer-facing payment experience using the ekko Checkout SDK.
What you need
Before running the check you need two values from ekko:
org_id: your organisation ID. Find it in ekko Hub on the organisation detail page.api_key: your API key. Find it in ekko Hub under Settings > API keys.
Protect your API key
Do not share your
api_keyin screenshots, log files or public repositories.
Add the collection to Postman
ekko will send you an invitation to the ekko Climate API Postman workspace. Accept the invitation from the email, then sign in to Postman.
Once you're in the workspace:
- Find the collection for your integration path in the left sidebar.
- Click the three-dot menu next to the collection name and select Fork.
- Choose your own workspace as the destination and click Fork Collection.
- Repeat for the ekko API v3: staging environment: fork it into the same workspace.
Set your credentials
The environment is pre-configured with the staging base URL. You only need to fill in two variables.
- Open the Environments panel in Postman (the folder icon in the left sidebar).
- Select ekko API v3: staging.
- Fill in the two variables:
| Variable | Value |
|---|---|
org_id | Your organisation ID (from ekko Hub) |
api_key | Your API key (from ekko Hub under Settings > API keys) |
- Click Save.
- Select ekko API v3: staging in the environment selector at the top-right of the Postman window.
Run the collection
- In the left sidebar, click the collection name.
- On the collection overview tab, click Run collection (top right).
- In the Collection Runner, leave all requests selected and the order unchanged.
- Click Run.
Requests run in sequence and pass values between steps automatically. Do not reorder requests or skip steps.
A complete run takes under 30 seconds.
Direct API integration: test coverage
The Direct API integration check runs 17 requests across six folders.
| Folder | Requests | What's verified |
|---|---|---|
| Organisation onboarding | 2 | Creates a child organisation and confirms it is active, has impact partners configured and has carbon calculation enabled |
| Impact partners | 2 | Lists available impact partners and their projects |
| Quotes | 2 | Creates a carbon quote and confirms projects are available for it |
| Funds allocations | 6 | Creates three allocations: credits only, contribution only and credits combined with contribution. Confirms each returns the expected fields |
| Reversal | 1 | Reverses the combined allocation and confirms a reversalId is returned |
| Reconciliation | 4 | Retrieves the single impact and profit-share records for the reversed allocation and confirms both list endpoints return a data array |
All 17 requests must pass for the integration to be considered correctly configured.
Checkout SDK integration: test coverage
The Checkout SDK integration check runs 14 requests across four folders.
| Folder | Requests | What's verified |
|---|---|---|
| Organisation onboarding | 2 | Creates a child organisation and confirms it is active, has impact partners configured and has carbon calculation enabled |
| Impact partners | 2 | Lists available impact partners and their projects |
| Checkout session | 2 | Creates a checkout session and confirms it returns sessionId, clientSecret and expiresAt. Retrieves the session using the consumer-facing X-Client-Secret header and confirms the quote object is present |
| Funds, reversal & reconciliation | 8 | Creates a quote and a combined allocation, reverses it and confirms all four reconciliation endpoints return the expected fields |
All 14 requests must pass for the integration to be considered correctly configured.
Reading the results
Every request either passes all its checks or displays a named failure message. All tests should pass on a correctly configured integration.
If a test fails
| Message | What to check |
|---|---|
| ❌ Authentication failed: check your api_key | The api_key value in your Postman environment |
| ❌ Access denied: check your org_id | The org_id value. It must be your root organisation ID, not a child organisation ID |
| ❌ Prerequisite not met | A request earlier in the run did not succeed. Check the first failure in the list |
If a request fails with a message not listed above, export the results and share them with your ekko integration contact.
Export and share results
- When the run completes, click Export Results at the top of the Collection Runner screen/ screenshot the results if you're using the web version.
- Postman downloads a JSON file with the full run details.
- Send that file/ image to your ekko integration contact.
Other integration paths
Collections for ImpactPay and post-purchase SDKs are in development.
