Help CenterIntegrationsConnect QR Advanced to Zapier
Back to Integrations

Connect QR Advanced to Zapier

Automate workflows by connecting QR Advanced to Zapier. Trigger actions when QR codes are scanned, conversions complete, or alerts fire.

Pro+

Zapier lets you connect QR Advanced to 5,000+ other apps and automate workflows without writing code. When something happens in QR Advanced, Zapier can automatically perform actions in other apps.


What You Can Automate

Available Events

EventDescription
**QR Code Scanned**Triggers every time someone scans one of your QR codes
**Conversion Completed**Triggers when a visitor completes a conversion goal
**Form Submitted**Triggers when a form on your landing page is submitted
**Alert Triggered**Triggers when one of your configured alerts fires

Example Use Cases

  • Add leads to your CRM - When a form is submitted, create a new contact in HubSpot, Salesforce, or Pipedrive
  • Send notifications - Post to Microsoft Teams or Discord when a QR code gets scanned
  • Update spreadsheets - Log all scans or conversions to Google Sheets for custom reporting
  • Email notifications - Send yourself or your team an email when important events occur
  • Sync with marketing tools - Add contacts to Mailchimp or ActiveCampaign lists


Connecting Zapier

Step 1: Create a Zap in Zapier

  • Log in to Zapier
  • Click Create Zap
  • For the trigger, search for Webhooks by Zapier
  • Select Catch Hook as the trigger event
  • Click Continue
  • Copy the webhook URL that Zapier provides

Step 2: Connect in QR Advanced

  • Go to Settings > Integrations > Zapier
  • Paste your webhook URL
  • Select which events you want to send to Zapier
  • Click Connect Zapier

Step 3: Test the Connection

  • Click Send Test Event in QR Advanced
  • In Zapier, click Test trigger to receive the sample data
  • Continue building your Zap with actions from other apps


Event Payload Format

All events follow a consistent structure:

{
  "event": "qr.scanned",
  "timestamp": "2026-02-12T15:30:00.000Z",
  "team_id": "uuid",
  "data": {
    // Event-specific data
  }
}

QR Scanned Event

{
  "event": "qr.scanned",
  "timestamp": "2026-02-12T15:30:00.000Z",
  "team_id": "uuid",
  "data": {
    "qr_id": "uuid",
    "qr_name": "Summer Campaign",
    "scan_id": "abc123",
    "location_country": "US",
    "location_city": "New York",
    "device_type": "mobile",
    "os": "iOS",
    "browser": "Safari",
    "referrer": null,
    "ip_hash": "a1b2c3d4"
  }
}

Conversion Completed Event

{
  "event": "conversion.completed",
  "timestamp": "2026-02-12T15:30:00.000Z",
  "team_id": "uuid",
  "data": {
    "goal_id": "uuid",
    "goal_name": "Newsletter Signup",
    "qr_id": "uuid",
    "scan_id": "abc123",
    "value": 49.99,
    "event_type": "form_submit",
    "event_label": "Contact Form"
  }
}

Form Submitted Event

{
  "event": "form.submitted",
  "timestamp": "2026-02-12T15:30:00.000Z",
  "team_id": "uuid",
  "data": {
    "form_id": "uuid",
    "form_name": "Contact Form",
    "qr_id": "uuid",
    "landing_page_id": "uuid",
    "submission_id": "uuid",
    "fields": {
      "name": "John Doe",
      "email": "john@example.com"
    }
  }
}

Alert Triggered Event

{
  "event": "alert.triggered",
  "timestamp": "2026-02-12T15:30:00.000Z",
  "team_id": "uuid",
  "data": {
    "alert_id": "uuid",
    "alert_name": "High Traffic Alert",
    "alert_type": "scan_spike",
    "qr_id": "uuid",
    "qr_name": "Product Launch",
    "metrics": {
      "scan_count": 500,
      "threshold_value": 100,
      "timeframe": "1h"
    }
  }
}


Verifying Webhook Signatures

For security, all webhook requests include an HMAC signature in the X-QR-Signature header.

Signature Format

X-QR-Signature: sha256=<hmac_hex_digest>

Verification Example (JavaScript)

const crypto = require('crypto');

function verifySignature(body, signature, secret) {
  const expected = 'sha256=' + crypto
    .createHmac('sha256', secret)
    .update(JSON.stringify(body))
    .digest('hex');
  
  return signature === expected;
}

In Zapier

Use Zapier's Code by Zapier action to verify signatures:

  • Add a Code action after your webhook trigger
  • Pass the body, signature header, and your secret
  • Return whether the signature is valid
  • Add a Filter to only continue if valid


Managing Your Connection

Pause/Resume

Toggle the integration on/off without disconnecting. Paused connections won't receive events.

Update Events

Check or uncheck event types to control which events are sent to Zapier.

Regenerate Secret

If your secret is compromised, regenerate it. This invalidates the old secret immediately.

Disconnect

Remove the Zapier connection entirely. You'll need to reconfigure to use Zapier again.



Rate Limits

  • 10 events per second per team
  • Events that exceed the limit are queued and delivered with a short delay
  • For high-volume scenarios, consider filtering events in Zapier


Troubleshooting

Events Not Arriving

  • Check that the integration is Active (not paused)
  • Verify the webhook URL is correct
  • Check Recent Deliveries for errors
  • Ensure the event type is enabled

Delivery Failures

Check the Last Error field on the Zapier integration page. Common issues:

  • Invalid webhook URL - The URL may have changed in Zapier
  • Zapier account limits - You may have exceeded your Zapier plan's task limit
  • Timeout - The webhook didn't respond within 10 seconds

Signature Verification Fails

  • Ensure you're using the raw request body for verification
  • Don't modify or parse the body before hashing
  • Check that your secret matches exactly (no extra whitespace)

Need help? Contact support and we'll assist with your Zapier integration.

Was this article helpful? If you need more help, sign in to contact our support team.

Sign In