---
title: "Trigger full sync of connected integrations and run reconciliation"
method: POST
path: "/sync"
---

# Trigger full sync of connected integrations and run reconciliation

`POST /sync`

## Request

- Base URL: `https://developer.usepopup.com/api/v0`
- URL: `https://developer.usepopup.com/api/v0/sync`
- Auth: HTTP bearer

Syncs all connected data sources (Stripe payouts, Shopify orders, Plaid transactions) and runs the reconciliation engine. Rate limited to 1 sync per 5 minutes per tenant.

## Response `200`

Sync completed

- object
  - `data` object
    - `synced` string[]: Integrations that were synced
    - `skipped` string[]: Integrations not connected (skipped)
    - `stripe` object
      - `payouts_synced` integer
    - `shopify` object
      - `orders_synced` integer
      - `refunds_detected` integer
    - `plaid` object
      - `added` integer
      - `modified` integer
      - `removed` integer
    - `reconciliation` object
      - `matched` integer
      - `issues_detected` integer

## Other responses

- `400`: No integrations connected
- `429`: Rate limited — only 1 sync per 5 minutes

---

[API](https://skmtc.dev/usepopup/apis/flowcheck-api.md) · [All operations](https://skmtc.dev/usepopup/apis/flowcheck-api/llms.txt) · [OpenAPI document](https://skmtc.dev/usepopup/apis/flowcheck-api/revisions/fb3e2d989d8e?raw)
