Test and go live
Test your integration with test keys, then switch to live keys with a checklist.
Test keys and test websites
Test and live are separate environments on the same host, https://uk.humanapproved.com.
- Each key works only from the allowed websites for its environment. Add each address exactly, with scheme, host and port: there are no wildcards.
- Test reviews are separate from live ones. Only a test secret key reads a test review, and a live secret key reads only live ones.
- Checks validate quotes against the product’s published version, so publish before you test.
Trigger a test review
To show the pause panel without an AI agent:
- Set the product to Every purchase. On the product’s Approval settings page, set When to ask for approval to Every purchase and publish. Every check then asks for approval. Set it back before you go live.
- Use an automated browser. A browser driven by a tool such as Playwright is treated as an agent.
With a test key, the approval page shows the code, so you can approve or decline yourself.
Test checklist
- With the product on Only when an agent is detected, a normal visit goes straight through, and the check appears under Checks in the portal.
- With Every purchase on, the step pauses and the panel shows a link.
- The link shows your quote as the customer will see it, with every value right.
- Entering the code and approving lets the paused checkout proceed.
- Declining tells the agent to ask the customer what they want to do.
- The review is under Approvals in the portal, with the quote that was sent.
- Your server reads the review with your test secret key and refuses to bind unless it’s approved for that quote.
Go-live checklist
- Live key. Replace the test publishable key with your live key,
pk_live_…, and your server’s secret key withsk_live_…, from environment variables or your secrets manager. - Live websites. Add your production checkout’s address to the product’s live allowed websites (
httpsonly). - Published version. The product has a published version with the right fields, wording and When to ask for approval setting: usually Only when an agent is detected, or Never — monitor only to measure agent traffic first. See Monitor only.
- Content Security Policy. Your production policy allows
https://cdn.beopen.cominscript-srcand your region’s address inconnect-src(andimg-srcfor a logo). See Content Security Policy. - Pinned script. The embed is loaded on every page of the journey, with the version and
integrityhash from the portal’s Embed page. - Server verification. Your server checks the review before it binds: status
approved, matchingquoteRef,envislive. See Verify on your server. - Bot check. If agents might open the approval link themselves, the product’s bot check is on in its Approval settings: it’s off by default. See Bot check.
- Fail-open considered. The embed lets the step proceed when HumanApproved doesn’t respond in time or anything goes wrong. Decide what your server does with a purchase that has no approved review, and in a server or agent flow whether to retry rather than proceed.
- Privacy notice. Your privacy notice and cookie policy name the checks, as you would fraud prevention.
Troubleshooting
When something goes wrong, the embed lets the step proceed and writes a warning to the browser console. A refused key or website gets a response without CORS headers, so the browser console shows no response: find the status and code on the request to /api/v1/checks in the browser’s network panel.