Connect

Fits your stack. Bends to your logic.

Native on Shopify, two-way with Klaviyo and open all the way down: a GraphQL API, webhooks for every event and scripts that run your own logic.

Shopify ยท Order #4821

Synced

Order created

Tagged subscription, cycle 4

Contract synced

Next order 12 Nov

Stock checked

BEAN-1KG in stock

Delivery option kept

Local pickup

API

GraphQL

1

mutation {

2

replaceSubscriptionProducts(input: {

3

subscriptionId: โ€œ4821โ€

4

replacements: [{

5

orderedProductId: โ€œ77โ€

6

productId: โ€œBEAN-DECAF-1KGโ€

7

}]

8

}) {

9

orderedProducts { id title }

10

}

11

}

Script ยท Gift every 5th order

Ran

Recurring order #4825

Before confirmation

Script ran

order.number % 5 === 0

Gift added

SAMPLE-BOX ยท โ‚ฌ 0.00

Order confirmed

Sent to Shopify

Order #4825 confirmed

with gift

Brands that sell on repeat with Firmhouse

One order, every system.

A renewal in Firmhouse is one event. Shopify, Klaviyo, your warehouse and your own systems each get it, with the same order number.

Firmhouse

Renewal

Order #4821 created

Noor Bakker ยท every 2 weeks

Order #4821 created

Every 2 weeks

Payment collected

โ‚ฌ 42.60 ยท iDEAL

Shopify

Synced

Order created

#4821 ยท tagged subscription

Klaviyo

Sent

Order event sent

Profile Noor Bakker

Monta

Sent

Order sent to the warehouse

Ready to pick

Your webhook

200

Order and invoice ready

Idempotency-Key 9f2cโ€ฆ

Four ways to plug in.

Start with the store you run, connect the tools you already use and build what is missing.

01

Native on Shopify

Install the app and keep Shopify in charge. Orders land with your tags, shipping rates and stock, and subscription contracts stay in sync.

Subscription contracts stay in sync

Out-of-stock orders skipped

Customer merges relinked

Shopify ยท Order #4821

Synced

Order created

Tagged subscription, cycle 4

Selling plan matched

Every 2 weeks

Contract synced

Next order 12 Nov

Stock checked

BEAN-1KG in stock

Delivery option kept

Local pickup

Shopify Flow

Triggered by Firmhouse webhooks

Order scheduled

Subscription paused

Invoice reminder sent

Customer details updated

Run your own Flow automations on every one.

Integrations

5 connected

Klaviyo

Events out, segments in

Mollie

Payments and mandates

Monta

Orders to the warehouse

Veriff

ID check at signup

Shopify Flow

Webhook triggers

Segment synced

VIP customers ยท from Klaviyo

02

Two-way with your tools

Klaviyo gets every subscription event and sends segments back. Payment providers, warehouses and ID checks plug in the same way.

62 events to Klaviyo, segments back

Mollie, Adyen and Stripe

Monta, Picqer and Veriff

03

An open API

Read and change everything through GraphQL, in bulk when you need to. Every event goes out as a webhook, with an idempotency key and your own headers.

GraphQL API with bulk operations

Webhooks with Liquid templates

Idempotency-Key on every delivery

Webhook deliveries

Live

Order scheduled

200 ยท 09:00:01

Order and invoice ready

200 ยท 09:00:02

Customer details updated

200 ยท 09:00:02

Invoice reminder sent

200 ยท 09:00:03

Duplicate delivery skipped

Same Idempotency-Key

Gift every 5th order

Script

Live

1

// Runs before a recurring order is confirmed

2

if (order.number % 5 === 0) {

3

addGift(โ€œSAMPLE-BOXโ€)

4

}

Order #4825

Gift added

Order #4826

No change

Order #4827

No change

Ran 1,204 times

this month

04

Your own logic, inside Firmhouse

When no setting covers it, write a script. It runs at the moment you choose, like just before a recurring order is confirmed.

Change recurring orders before confirmation

Update plans and product metadata

Retry a failed run from its notification

What Connect includes

Shopify app with contract sync

Stock sync and out-of-stock skips

Shopify Flow triggers

Klaviyo two-way, 62 events

Payment, warehouse and ID-check integrations

GraphQL API with bulk operations

Webhooks with idempotency keys

Script executions

Questions about connecting Firmhouse

Does Firmhouse work with Shopify?

Which tools does Firmhouse connect to?

Is there an API?

How do I avoid processing a webhook twice?

Can I run my own code?

Does Firmhouse work with Shopify Flow?

Start selling on repeat, or talk to us about your setup

Pricing that grows with you

Plans for every stage of repeat commerce. No lock-in.

Start selling on repeat, or talk to us about your setup

Pricing that grows with you

Plans for every stage of repeat commerce. No lock-in.

Start selling on repeat, or talk to us about your setup

Pricing that grows with you

Plans for every stage of repeat commerce. No lock-in.