Linking Clover as a source
This source is currently in alpha. The interface and available tables may change.
Let AI connect your sources for you
Skip the manual setup — run this in your project and the wizard auto-detects your databases and APIs and connects them to PostHog.

The Clover connector syncs your Clover (Fiserv) point-of-sale and payment data into PostHog, including orders, payments, customers, inventory items, employees, and more.
Note: This source is currently in Alpha. It uses full refresh syncing only and has not yet been verified against a live Clover account.
Prerequisites
- A Clover merchant account
- A merchant API token (generated in your Clover developer dashboard)
- Your alphanumeric Merchant ID from the Clover dashboard
- Your merchant's region: North America, Europe, Latin America, or Sandbox
Each source imports data from one merchant. To import data from multiple merchants, create a separate source for each.
Sync modes
All Clover tables use full refresh syncing. Each sync re-downloads every row for the selected tables. Incremental and webhook sync modes are not supported.
Full refresh ensures that updates to existing records (such as a modified order or updated customer) are always captured, since Clover's API does not expose verified incremental filters.
Adding a data source
- In PostHog, go to the Data pipeline page and click the Sources tab.
- Click + New source and select Clover by clicking Link.
- Select your Region: North America, Europe, Latin America, or Sandbox.
- Enter your Merchant ID (the alphanumeric identifier from your Clover dashboard).
- Enter your API token (a merchant API token with the required permissions — see below).
- Optional: Add a prefix to your table names.
- Click Next.
The data warehouse then starts syncing your Clover data. You can see details and progress in the data pipeline sources tab.
Required permissions
Your API token must have the correct permissions for the tables you want to sync. Grant these in the Clover developer dashboard:
| Tables | Required permission |
|---|---|
orders, line_items | Read orders |
payments, refunds, credit_refunds | Read payments |
items, categories, modifier_groups, modifiers, discounts, tax_rates | Read inventory |
customers | Read customers |
employees, shifts | Read employees |
tenders | Read merchant |
If your token is missing a permission, PostHog shows an error when you try to sync that table. Grant the permission in the Clover dashboard and try again.
Configuration
| Option | Type | Required |
|---|---|---|
Region | select | Yes |
Merchant ID | text | Yes |
API token | password | Yes |
Supported tables
| Table | Description | Sync method | Incremental field | Primary key |
|---|---|---|---|---|
orders | Orders rung up on the merchant's Clover devices, with amounts and payment states. | Full refresh | — | id |
line_items | Individual items on each order. | Full refresh | — | order_id, id |
payments | Payments taken against orders, one row per tender attempt. | Full refresh | — | id |
refunds | Refunds issued against payments. | Full refresh | — | id |
credit_refunds | Credit refunds recorded by the merchant. | Full refresh | — | id |
items | Inventory items the merchant sells. | Full refresh | — | id |
categories | Categories used to group inventory items on the register. | Full refresh | — | id |
modifier_groups | Groups of modifiers (such as toppings or sizes) that can be applied to items. | Full refresh | — | id |
modifiers | Options that change an inventory item's price or preparation. | Full refresh | — | id |
customers | Customer records saved on the merchant account. | Full refresh | — | id |
employees | Employees who can sign in to the merchant's Clover devices. | Full refresh | — | id |
shifts | Clock-in and clock-out shifts recorded by employees. | Full refresh | — | id |
tenders | Tender types the merchant accepts, such as cash, credit or a custom tender. | Full refresh | — | id |
discounts | Discounts configured on the merchant account and available at the register. | Full refresh | — | id |
tax_rates | Tax rates the merchant applies to items and orders. | Full refresh | — | id |
The Clover source supports 15 tables:
- Commerce:
orders,line_items,payments,refunds,credit_refunds - Inventory:
items,categories,modifier_groups,modifiers - People:
customers,employees,shifts - Settings:
tenders,discounts,tax_rates
A few things to note:
- All Clover timestamps are epoch milliseconds. Tables with a creation timestamp also include a
created_atcolumn converted to UTC. - Money amounts are integers in the merchant's smallest currency unit (for example, cents for USD).
line_itemsare fetched per order. Theorder_idandorder_created_timecolumns link each line item back to its parent order.
Troubleshooting
"Clover rejected your credentials"
Your API token is invalid or expired. Generate a new merchant API token in the Clover developer dashboard and update the source in PostHog.
403 Forbidden error
Your API token is missing the required permission for the table you're trying to sync. Check the required permissions table above, grant the missing permission in the Clover dashboard, and sync again.
"Clover could not find this merchant"
The merchant ID or region is incorrect. Double-check both values in your Clover dashboard and update the source configuration.
"Clover supports full refresh only"
You've set a table to incremental sync mode. Clover only supports full refresh. Change the sync mode to full refresh in the table settings.
For more help, see the Data Warehouse troubleshooting guide.