Testing Your Setup
This guide walks you through verifying that each VerifyHuman feature is correctly installed and working on your Shopify store.
Prerequisites
Before testing, ensure:
- The VerifyHuman app is installed and active on your store.
- Your VerifyHuman API key is entered in Settings > API Configuration.
- The
verifyhuman.app_urlmetafield is set (check via Settings > Diagnostics). - At least one verification feature is enabled in Settings.
- The Theme App Extension is enabled in your theme editor.
Step 1: Run Diagnostics
The built-in diagnostics tool checks your entire setup automatically.
- Open the VerifyHuman app in your Shopify admin.
- Go to Settings.
- Scroll to the Diagnostics card.
- Review each check:
| Check | Pass Criteria |
|---|---|
| App Installed | App is installed and active |
| API Key Configured | A valid VerifyHuman API key is saved |
| Metafield Set | verifyhuman.app_url matches your app URL |
| Settings Configured | At least one feature (Age Gate, Identity, or Human Check) is enabled |
If the metafield check fails or shows a warning, click the Repair button to automatically fix it.
Step 2: Test Age Gate
Enable Age Gate
- In the VerifyHuman dashboard, go to Settings > Age Gate tab.
- Toggle Age Verification on.
- Set your preferred minimum age, use case, and trigger mode.
- Click Save Changes.
Verify in Theme Editor
- Go to Online Store > Themes > Customize.
- Click App embeds in the left sidebar.
- Confirm VerifyHuman - Age Gate is toggled on.
- Check the settings match your preferences (trigger mode, minimum age, etc.).
Test on Storefront
- Open your store in a new incognito/private browser window.
- Navigate to a page where the age gate should appear:
- If trigger mode is Entire Store: any page should show it.
- If trigger mode is Product Tag: visit a product tagged with your configured tag (default:
age-restricted). - If trigger mode is Collection Tag: visit a collection with the configured tag.
- If trigger mode is Specific Pages: visit one of the page handles you configured.
- The age verification overlay should appear and block page content.
- Test both flows:
- Click Yes / I am of age to proceed (with selfie if
Require Selfieis enabled). - Click No / I am underage to be redirected to the configured URL (default: google.com).
- Click Yes / I am of age to proceed (with selfie if
- After passing verification, refresh the page. The overlay should not reappear until the session expires.
Verify Session Duration
- Verification is remembered for the configured session duration (default: 24 hours).
- Clear your browser cookies or wait for the session to expire, then revisit to confirm the overlay reappears.
Step 3: Test Identity Verification
Button-Triggered (App Block)
- Go to Online Store > Themes > Customize.
- Navigate to the page where you want the verification button (e.g., a product page).
- Click + Add block in the relevant section.
- Select Identity Verification under Apps.
- Configure the button text, color, and optional redirect URL.
- Save the theme.
Test:
- Visit the page on your storefront.
- Click the Verify My Identity button.
- The identity verification modal should appear requesting an ID document photo and a selfie.
- Complete the flow and verify the success callback fires (check browser console for
[VerifyHuman] Identity verified:log).
Checkout Guard (App Embed)
- In the theme editor, go to App embeds.
- Enable VerifyHuman - Checkout ID.
- Configure when verification is required:
- All Checkouts: every checkout triggers verification.
- Product Tag: only products tagged with
vh_requires_idv(or your custom tag). - Product Metafield: products with
verifyhuman.requires_idvset totrue.
Test:
- Add a product with the required tag or metafield to your cart.
- Go to the cart page.
- The checkout button should be replaced or blocked with a verification prompt.
- Express checkout buttons (Shop Pay, Apple Pay, Google Pay) should be hidden if Hide Express Checkout Buttons is enabled.
- Complete identity verification and confirm checkout becomes available.
- If Show Verified Badge is enabled, a green checkmark should appear near the checkout button.
Step 4: Test Human Check (Bot Protection)
Enable Human Check
- In the VerifyHuman dashboard, go to Settings > Human Check tab.
- Toggle Human Verification on.
- Enable the form types you want to protect:
- Signup/Registration Forms
- Review Forms
- Contact Forms
- All Forms (site-wide)
Verify in Theme Editor
- Go to Online Store > Themes > Customize.
- Click App embeds.
- Confirm VerifyHuman - Human Check is toggled on.
- Review which form types are enabled and any custom selectors.
Test on Storefront
- Navigate to a page with a protected form (e.g., your contact page, registration page, or a product review form).
- Try to submit the form without verification.
- The form should be intercepted and a selfie verification prompt should appear.
- After passing verification, a Verified badge should appear (if
Show Badgeis enabled). - Submit the form again; it should go through successfully.
Debug Mode
If forms are not being detected:
- In the theme editor, enable Debug Mode in the Human Check settings.
- Open your browser developer console (F12 or Cmd+Opt+I).
- Look for
[VerifyHuman]log messages showing which forms were detected and which selectors matched. - If your theme uses non-standard form IDs, configure custom selectors in the Advanced: Custom Form Selectors section.
Step 5: Verify API Connectivity
- In the VerifyHuman dashboard, go to Settings.
- Check the Usage section to confirm the app can communicate with the VerifyHuman API.
- Expected statuses:
- PASS: API is reachable and your key is valid.
- NO_API_KEY: You need to add your API key in Settings.
- API_ERROR: The API returned an error; check your key or contact support.
Step 6: Check Logs
After running through the test flows above:
- Go to the Logs page in the VerifyHuman dashboard.
- Verify that events were recorded:
verification_startedfor each verification attempt.verification_completedorverification_failedfor the result.settings_updatedwhen you changed settings.
- Filter by severity to find any errors.
Step 7: Test Across Devices
- Test on desktop browsers (Chrome, Firefox, Safari).
- Test on mobile browsers (iOS Safari, Android Chrome).
- Ensure the camera prompt appears correctly for selfie-based verifications.
- Verify the age gate overlay is responsive and covers the full screen on mobile.
Quick Checklist
| Feature | What to Check | Expected Result |
|---|---|---|
| Diagnostics | All checks pass | Green status for each check |
| Age Gate overlay | Appears on correct pages | Blocks content until verified |
| Age Gate session | Remembered after verification | Overlay does not reappear within session duration |
| Underage redirect | Click "No" on age gate | Redirected to configured URL |
| Identity button | Click "Verify My Identity" | Modal opens for ID + selfie capture |
| Checkout guard | Add restricted product to cart | Checkout blocked until verified |
| Express buttons | Hidden when unverified | Shop Pay / Apple Pay / Google Pay not visible |
| Verified badge | After passing identity check | Green checkmark near checkout |
| Human check | Submit protected form | Selfie verification prompt appears |
| Form detection | Enable debug mode | Console shows detected forms |
| Logs | After any verification | Events recorded with correct types |