Prerequisites
- A Shopify store on the Basic plan or above
- Shopify admin access to create custom apps
- Verilock Business or Enterprise plan
Setup
Create a Custom App
In your Shopify admin, go to Settings > Apps and sales channels > Develop apps. Click Create an app and name it
Verilock Identity.Configure API Scopes
Under Configuration, add the following Admin API scopes:
Click Save and then Install app.
| Scope | Purpose |
|---|---|
read_customers | Access customer data for verification |
write_customers | Update customer metafields with verification status |
read_orders | Access order data for checkout verification |
write_orders | Tag orders with verification status |
Copy Access Token
After installation, copy the Admin API access token. This token is shown only once, so store it securely.
Configure in Verilock
Go to Dashboard > Settings > Integrations > Shopify and enter:
- Shop Domain:
your-store.myshopify.com - Access Token: The Admin API access token
- Webhook Secret: Auto-generated, copy this for your Shopify webhook configuration
Configure Shopify Webhooks
In Shopify admin, go to Settings > Notifications > Webhooks. Create webhooks for:
customers/createpointing tohttps://verilock.io/api/v1/integrations/shopify/webhookorders/createpointing to the same URL
Verification Triggers
- Account Creation
- Checkout
When a new customer registers, Verilock sends them an email with a verification link. The customer’s account is tagged as
verilock:pending until verification completes.| Setting | Description | Default |
|---|---|---|
verify_on_register | Require verification for new accounts | false |
verification_profile | Profile to use | basic |
block_until_verified | Prevent orders until verified | false |
Customer Metafields
Verilock stores verification results as Shopify customer metafields:| Metafield Key | Type | Description |
|---|---|---|
verilock.verification_status | String | approved, declined, pending, expired |
verilock.session_id | String | Verilock session ID |
verilock.verified_at | String | ISO 8601 timestamp |
verilock.risk_score | Number | Risk score (0-100) |
Order Tags
Orders associated with verified customers are automatically tagged:| Tag | Meaning |
|---|---|
verilock:verified | Customer was verified before or during checkout |
verilock:pending | Verification is in progress |
verilock:declined | Customer verification was declined |
Shopify Flow Integration
If you use Shopify Flow, Verilock triggers are available as custom events:- Verilock - Customer Verified: Fires when a customer completes verification
- Verilock - Customer Declined: Fires when a customer fails verification
- Verilock - High Risk Detected: Fires when risk score exceeds your threshold
Shopify Flow is available on Shopify Plus or through the Shopify Flow app on Advanced plans.
Troubleshooting
Verification email not sent
Verification email not sent
Check that the customer has a valid email address. Verify the Shopify
customers/create webhook is active and pointing to the correct URL.Order not held at checkout
Order not held at checkout
Ensure the product tags or order threshold match your configuration. Review the Verilock integration logs in Dashboard > Logs > Integrations.
Metafields not updating
Metafields not updating
Verify the access token has
write_customers scope. Check that the token has not been revoked in Shopify admin.
