Skip to main content

Integrations

Connect PROIGN with your existing tools and platforms. Each integration enhances specific modules with external data and functionality.

Available Integrations

How Integrations Work

PROIGN integrations follow a consistent pattern:

  1. Connect — Authenticate with the external service via OAuth or API keys
  2. Configure — Set up sync preferences and mapping rules
  3. Sync — Data flows automatically based on events or schedules
  4. Monitor — Track sync status and handle errors in the dashboard

Authentication Methods

Each integration uses the authentication method required by its provider:

IntegrationAuth MethodCredential Storage
ShopifyHMAC webhook validation + Admin API tokenWrangler secrets
UPSOAuth 2.0 client credentialsWrangler secrets
TaxJarAPI key (Bearer token)Wrangler secrets
ResendAPI keyWrangler secrets
StripeAPI key + webhook signing secretWrangler secrets
TurnstileSite key (public) + secret keyWrangler secrets + env var

All credentials are stored as encrypted Cloudflare Worker secrets — they never appear in source code, environment files, or client-side bundles.

Webhook Signature Verification

Inbound webhooks from external services are always verified before processing. PROIGN validates signatures using the method required by each provider:

// Shopify — HMAC-SHA256 of request body
const hmac = crypto.subtle.sign("HMAC", key, body);
// Compare with X-Shopify-Hmac-Sha256 header

// Stripe — Stripe-Signature header with timestamp
const event = stripe.webhooks.constructEvent(
  body, signature, webhookSecret
);

// UPS — OAuth token validation on callback
// TaxJar — API key in Authorization header

Webhooks that fail signature verification are rejected with a 401 status and logged for monitoring.

Data Flow

Integration data flows through Cloudflare Queues for reliability. If an external API is temporarily unavailable, messages are retried automatically:

  • Inbound — Shopify webhooks arrive at the gateway, are validated, and queued for processing by the relevant module worker
  • Outbound — UPS label requests, Resend emails, and Stripe billing calls are dispatched from queue consumers with automatic retry on failure
  • Events — Cross-module events (e.g., order shipped, points awarded) are broadcast through the Events module for downstream consumers

API Access

All integrations can also be managed via the API. See the Endpoints Reference for integration-specific API calls.

Need a Custom Integration?

PROIGN supports webhooks and the Events module for custom integrations. You can also use our API to build your own connections.