Gantry Cloud
SETUP_GUIDES // PROVIDER_KEYS

Integration Setup Guides

Step-by-step setup for connecting Stripe, Shopify, WooCommerce, custom webhooks, shipping providers, and email providers to Gantry.

Overview

Gantry connects to the provider accounts your business already uses. Owners can add or remove integrations from Workspace Settings. Secrets are stored encrypted, and exports remain available so your data is not trapped inside Gantry.

Preferred connection

Use OAuth-style connection flows when available, starting with Stripe Connect.

Dedicated keys

When a provider uses API keys, create a key just for Gantry and rotate it if access changes.

Least access practical

Use only the permissions needed for order sync, shipping, tracking, and email delivery.

Stripe Connect

Stripe Connect is the preferred Stripe setup. It connects Stripe to Gantry without requiring merchants to paste a raw Stripe secret key into the workspace.

Access requested:
  • read_write OAuth scope.
  • Connected-account webhook event: checkout.session.completed.
  1. Open Workspace Settings in Gantry.
  2. Open Sales Channels, then Stripe.
  3. Select Stripe Connect.
  4. Choose the Stripe account that should send checkout orders into Gantry.
  5. Return to Gantry and press Test.

Gantry uses the connected Stripe account to import checkout session data and payment status. Gantry subscription billing uses FSR Labs' platform Stripe account, not the connected merchant account.

Stripe Manual Fallback

Manual Stripe setup remains available for teams that cannot use Stripe Connect yet.

Key type:
  • Stripe secret key from the merchant account, usually beginning with sk_live_ or sk_test_.
  • The key must be able to read checkout sessions and create or manage the Gantry webhook endpoint.
  1. In Stripe, open Developers, then API keys.
  2. Create or copy the secret key intended for Gantry.
  3. In Gantry Workspace Settings, open Sales Channels, then Stripe.
  4. Paste the Stripe API key.
  5. Leave the webhook secret blank unless you are reusing an existing endpoint.
  6. Save settings, then press Test.

When Gantry creates the webhook automatically, Stripe only reveals the signing secret once. If you already created the endpoint yourself, paste the existing whsec_ value into the manual override field.

Shopify Custom App

Shopify currently uses a custom app token. A full Shopify OAuth app is planned for a later release.

Admin API scopes:
  • read_orders is required for order import.
  • read_all_orders is recommended if you need orders older than Shopify's default recent order window.
  • Webhook event used by Gantry: orders/create.
  1. In Shopify Admin, open Settings, then Apps and sales channels.
  2. Open Develop apps and create a custom app for Gantry.
  3. Configure Admin API scopes with the order permissions listed above.
  4. Install the app and copy the Admin API access token.
  5. Copy your Shopify API secret.
  6. In Gantry, paste the shop domain, access token, and API secret.
  7. Save, then press Test.

WooCommerce

WooCommerce uses REST API keys. Gantry needs the key pair to read orders and configure the order-created webhook.

REST API permission:
  • Read/Write is recommended because Gantry reads orders and creates webhooks.
  • Webhook topic used by Gantry: Order created.
  1. In WordPress, open WooCommerce, Settings, Advanced, then REST API.
  2. Create a key for Gantry.
  3. Choose Read/Write permission.
  4. Copy the consumer key and consumer secret.
  5. In Gantry, paste your store URL, consumer key, and consumer secret.
  6. Save, then press Test.

Use the HTTPS storefront URL whenever possible. If the store is behind a reverse proxy, confirm WordPress is aware of its public HTTPS URL.

Custom Webhooks

Custom webhook channels let a storefront, ERP, script, or automation tool send strict Gantry-format order JSON directly into fulfillment.

For the full signing rules, example payload, and code sample, open the Custom Webhook Order Intake guide.

Required headers:
  • X-Gantry-Timestamp: current Unix timestamp in seconds.
  • X-Gantry-Signature: HMAC-SHA256 of timestamp.raw_body using the channel signing secret.
  • X-Gantry-Event-Id: optional stable event id for dedupe. If omitted, Gantry uses the order id.
  1. Open Workspace Settings, then Sales Channels.
  2. Create a Custom Webhook channel.
  3. Copy the webhook URL and signing secret from Advanced Settings.
  4. Send a signed POST request with Content-Type: application/json.
  5. Confirm the order appears in Fulfillment after the worker processes the event.
{
  "order_id": "ORDER-1001",
  "customer": {
    "name": "Nova Lane",
    "email": "nova@example.com",
    "phone": "+15555550123"
  },
  "shipping_address": {
    "line1": "17 Pixel Court",
    "city": "Demo City",
    "state": "CA",
    "postal_code": "90210",
    "country": "US"
  },
  "items": [
    {
      "id": "line-1",
      "sku": "DEMO-BLUE",
      "name": "Demo MK.I Blue",
      "quantity": 1,
      "price": "29.99"
    }
  ],
  "amount_total": "29.99",
  "currency": "USD",
  "payment_status": "paid",
  "status": "open",
  "created_at": "2026-07-06T12:00:00Z"
}

Shippo

Shippo uses API tokens. Gantry uses the token to quote labels, buy labels, register tracking, and subscribe to tracking updates.

Key type:
  • Shippo live API token for production labels and tracking.
  • Shippo test token only for testing label and tracking behavior.
  • Carrier accounts must be connected in Shippo before Gantry can use them.
  1. In Shippo, open API settings.
  2. Copy the live API token when you are ready for production.
  3. In Gantry Workspace Settings, open Shipping.
  4. Paste the Shippo API token and save.
  5. Select the carrier accounts Gantry should use.
  6. Press Test and confirm tracking webhooks are listening.

EasyPost

EasyPost can be used as an alternate shipping provider for rates, label purchase, tracking registration, and return labels.

Key type:
  • EasyPost production API key for live labels.
  • EasyPost test API key for test labels and setup checks.
  • Carrier accounts must be connected in EasyPost before live label use.
  1. In EasyPost, open API Keys.
  2. Copy the production key when you are ready for production.
  3. In Gantry Workspace Settings, open Shipping.
  4. Paste the EasyPost API key.
  5. Select EasyPost as the active shipping provider.
  6. Save, then press Test.

Resend

Resend sends customer tracking updates, delivery emails, team invites, verification emails, and password reset emails.

Access needed:
  • Send email access.
  • Verified domain access so Gantry can confirm sender addresses.
  • A sender address on a verified domain, such as tracking@example.com.
  1. In Resend, verify the sending domain you want Gantry to use.
  2. Create a dedicated API key for Gantry.
  3. In Gantry Workspace Settings, open Email.
  4. Paste the API key.
  5. Choose the local sender name and verified domain.
  6. Press Test.

If emails land in spam during early setup, review SPF, DKIM, DMARC, sender reputation, and whether the recipient has previously marked messages from the domain as unwanted.

Postmark

Postmark can send Gantry customer notifications and transactional workspace emails when selected as the workspace email provider.

Access needed:
  • Server API token with permission to send email.
  • A verified sender signature or verified domain.
  • A sender address that belongs to the verified sender or domain.
  1. In Postmark, open Servers and choose the server Gantry should use.
  2. Copy the Server API token.
  3. Verify the sender signature or domain you want Gantry to use.
  4. In Gantry Workspace Settings, open Email.
  5. Select Postmark, paste the token, and enter the sender address.
  6. Press Test.

Mailgun

Mailgun can send Gantry customer notifications and transactional workspace emails when selected as the workspace email provider.

Access needed:
  • Mailgun private API key with send permission.
  • A verified Mailgun sending domain.
  • A sender address on that verified domain.
  1. In Mailgun, verify the sending domain you want Gantry to use.
  2. Create or copy a private API key for Gantry.
  3. In Gantry Workspace Settings, open Email.
  4. Select Mailgun, paste the key, and enter the sender address.
  5. Press Test.

Test Each Connection

Sales channel

Create a small test order, then confirm it appears in Fulfillment or Reporting.

Shipping

Generate a test label or quote rates, then confirm carrier accounts are available.

Email

Send a test email and confirm the sender address matches your verified domain.

Tracking

Register a tracking number or dispatch a test order, then confirm tracking status updates.

Troubleshooting

Connection test fails

Confirm the key was copied completely, belongs to the correct account, and is live or test mode based on the workflow you are testing.

Webhook does not fire

Confirm the webhook URL is reachable over HTTPS, the event topic is enabled, and the signing secret or API secret was saved in Gantry.

Orders sync manually but not automatically

Manual sync proves the API key can read orders. Automatic sync also requires the provider webhook to be active and pointed at the Gantry URL.

Emails send but land in spam

Verify the sending domain records, use a consistent sender address, and avoid sending customer-facing emails from a brand-new domain until reputation has warmed up.