Brand GuideIntegrations

Integrations

Connect Pasera with your existing e-commerce and business tools.

Available integrations

Shopify

Sync products from your Shopify store and push DPP URLs back to product metafields. See Shopify Integration for full setup guide.

What it does:

  • Pull products from Shopify into Pasera (matched by SKU)
  • Push published DPP URLs to Shopify product metafields
  • Display “View Product Passport” links on your store

WooCommerce

Similar to Shopify — sync products from your WooCommerce store using the REST API.

Setup:

  1. Go to Integrations in the sidebar
  2. Find the WooCommerce card
  3. Enter your store URL, consumer key, and consumer secret
  4. Click Connect

WooCommerce API credentials:

  1. In WooCommerce, go to Settings > Advanced > REST API
  2. Click Add key
  3. Set permissions to Read/Write
  4. Copy the consumer key and consumer secret

Webhooks

Webhooks let you receive real-time notifications when events happen in Pasera.

Setting up webhooks

  1. Go to Integrations in the sidebar
  2. Scroll to the Webhooks section
  3. Click Add webhook
  4. Enter your endpoint URL and select which events to subscribe to

Available events

EventFires when
batch.createdA new batch is created
batch.submittedA factory submits DPP data
dpp.publishedA DPP is approved and published
request.sentA DPP request is sent to a factory
certificate.expiringA supplier certificate is expiring within 30 days

Webhook payload

{
  "event": "dpp.published",
  "timestamp": "2026-05-15T10:30:00Z",
  "data": {
    "dppId": "01KS...",
    "batchId": "01KS...",
    "productName": "Classic Crew T-Shirt",
    "qrUrl": "https://p.pasera.app/p/5701234567001/ABC123"
  }
}

Signature verification

Each webhook includes an X-Pasera-Signature header containing an HMAC-SHA256 signature of the request body, using your webhook secret as the key.

const crypto = require('crypto');
 
function verifyWebhook(body, signature, secret) {
  const expected = crypto
    .createHmac('sha256', secret)
    .update(body)
    .digest('hex');
  return crypto.timingSafeEqual(
    Buffer.from(signature),
    Buffer.from(expected)
  );
}

Custom integrations

Use the API Reference to build custom integrations. The API supports all operations available in the UI.