Request an export to start processing in the background.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Exports are available exclusively for Enterprise accounts. Non-enterprise accounts will receive a 401 Unauthorized response.
Upcoming: repeated export requestsRequesting the exact same export (same type and parameters) again within 24 hours will be rejected with an error message. Use the
export.completedandexport.failedwebhooks to know when an export is done instead of requesting it again.
Overview
Use this endpoint to request a new data export. The export runs in the background - you'll receive an email when your file is ready to download.
Conditional Requirements
The required fields depend on the export type you're requesting:
| Condition | Required Fields |
|---|---|
object = accounting | month, currency (must be lowercase, e.g., usd) |
object = any other value | date_from, date_to |
Important notes:
- Currency codes must always be lowercase (e.g.,
usd,eur,cad- NOTUSD) - Date range cannot exceed 6 months (except for accounting exports which are per-month)
- You cannot request multiple exports of the same type simultaneously
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
object | string | Yes | The type of data to export (see export types below) |
site_id | integer | No | Limit export to a specific site |
Each export type has additional filters. See the sections below for details.
Export Types
Subscriptions
Get a list of all subscriptions with their plan, status, billing details, and customer information.
Use case: Reconcile your subscriber list with your CRM, or analyze churn by exporting canceled subscriptions.
{
"object": "subscriptions",
"date_from": 1704067200,
"date_to": 1711929600,
"status": "active",
"collection_method": "charge_automatically"
}| Filter | Type | Required | Description |
|---|---|---|---|
date_from | timestamp | Yes | Start date (Unix timestamp) |
date_to | timestamp | Yes | End date (Unix timestamp) |
mode | string | No | full_data (created in range) or modified_data (updated in range) |
status | string | No | Filter by: all, active, canceled, past_due, trialing, unpaid, incomplete, incomplete_expired, deleted |
collection_method | string | No | charge_automatically or send_invoice |
plan_id | integer | No | Only subscriptions for this plan |
product_id | integer | No | Only subscriptions for this product |
Memberships
Get membership records. Uses the same filters as Subscriptions.
Use case: Export members in a specific plan to send targeted communications or verify access levels.
{
"object": "memberships",
"date_from": 1704067200,
"date_to": 1711929600,
"status": "active",
"plan_id": 456
}Invoices
Get invoice records with line items, totals, and payment status.
Use case: Export paid invoices for quarterly revenue reporting or reconcile with your accounting system.
{
"object": "invoices",
"date_from": 1704067200,
"date_to": 1711929600,
"status": "paid"
}| Filter | Type | Required | Description |
|---|---|---|---|
date_from | timestamp | Yes | Start date (Unix timestamp) |
date_to | timestamp | Yes | End date (Unix timestamp) |
mode | string | No | full_data (created in range) or modified_data (updated in range) |
status | string | No | Filter by: all, draft, open, paid, past_due, void, uncollectible |
Payments
Get payment transaction records.
Use case: Generate a payment report for your finance team, or export all card payments in USD for bank reconciliation.
{
"object": "payments",
"date_from": 1704067200,
"date_to": 1711929600,
"status": "succeeded",
"category": "Card",
"currency": "usd"
}| Filter | Type | Required | Description |
|---|---|---|---|
date_from | timestamp | Yes | Start date (Unix timestamp) |
date_to | timestamp | Yes | End date (Unix timestamp) |
mode | string | No | full_data (created in range) or modified_data (updated in range) |
status | string | No | Filter by: all, succeeded, pending, failed |
type | string | No | online or offline |
category | string | No | Filter by: all, Card, Check, Wire, Transfer, External, Cash |
currency | string | No | 3-letter currency code, lowercase (e.g., usd, eur) |
destination | string | No | Filter by payment destination |
Refunds
Get refund records.
Use case: Track refunds for a specific period to analyze return trends or prepare financial reports.
{
"object": "refunds",
"date_from": 1704067200,
"date_to": 1711929600,
"status": "succeeded",
"type": "online"
}| Filter | Type | Required | Description |
|---|---|---|---|
date_from | timestamp | Yes | Start date (Unix timestamp) |
date_to | timestamp | Yes | End date (Unix timestamp) |
mode | string | No | full_data (created in range) or modified_data (updated in range) |
status | string | No | Filter by: all, pending, succeeded, failed, canceled |
type | string | No | online or offline |
Customers
Get customer profile records.
Use case: Export new customers for the quarter to import into your marketing automation platform.
{
"object": "customers",
"date_from": 1704067200,
"date_to": 1711929600,
"mode": "full_data"
}| Filter | Type | Required | Description |
|---|---|---|---|
date_from | timestamp | Yes | Start date (Unix timestamp) |
date_to | timestamp | Yes | End date (Unix timestamp) |
mode | string | No | full_data (created in range) or modified_data (updated in range) |
Customers Metadata
Get custom metadata fields for customers. Uses the same filters as Customers.
Use case: Export custom fields like "company_size" or "industry" for customer segmentation analysis.
{
"object": "customers_metadata",
"date_from": 1704067200,
"date_to": 1711929600
}Newsletters
Get newsletter subscription records.
Use case: Export newsletter subscribers to sync with your email marketing service like Mailchimp or Klaviyo.
{
"object": "newsletters",
"date_from": 1704067200,
"date_to": 1711929600
}| Filter | Type | Required | Description |
|---|---|---|---|
date_from | timestamp | Yes | Start date (Unix timestamp) |
date_to | timestamp | Yes | End date (Unix timestamp) |
mode | string | No | full_data (created in range) or modified_data (updated in range) |
email | string | No | Filter by specific email address |
Addresses
Get customer address records.
Use case: Export shipping addresses for a specific country to analyze your geographic customer distribution.
{
"object": "addresses",
"date_from": 1704067200,
"date_to": 1711929600,
"country": "US",
"type": "shipping"
}| Filter | Type | Required | Description |
|---|---|---|---|
date_from | timestamp | Yes | Start date (Unix timestamp) |
date_to | timestamp | Yes | End date (Unix timestamp) |
mode | string | No | full_data (created in range) or modified_data (updated in range) |
country | string | No | 2-letter country code (e.g., US, CA) |
type | string | No | shipping or billing |
Balance Transactions
Get customer balance credits and debits.
Use case: Audit all credits applied to customer accounts during a billing period.
{
"object": "balance_transactions",
"date_from": 1704067200,
"date_to": 1711929600,
"type": "credit"
}| Filter | Type | Required | Description |
|---|---|---|---|
date_from | timestamp | Yes | Start date (Unix timestamp) |
date_to | timestamp | Yes | End date (Unix timestamp) |
mode | string | No | full_data (created in range) or modified_data (updated in range) |
type | string | No | credit or debit |
Credit Notes
Get credit note records.
Use case: Export credit notes in EUR to reconcile with your European accounting system.
{
"object": "credit_note",
"date_from": 1704067200,
"date_to": 1711929600,
"currency": "eur"
}| Filter | Type | Required | Description |
|---|---|---|---|
date_from | timestamp | Yes | Start date (Unix timestamp) |
date_to | timestamp | Yes | End date (Unix timestamp) |
mode | string | No | full_data (created in range) or modified_data (updated in range) |
currency | string | No | 3-letter currency code, lowercase (e.g., usd, eur) |
reason | string | No | Filter by credit note reason |
Orders
Get e-commerce order records.
Use case: Export fulfilled orders for a specific product to send to your fulfillment warehouse.
{
"object": "orders",
"date_from": 1704067200,
"date_to": 1711929600,
"status": "fulfilled",
"product_id": 789
}| Filter | Type | Required | Description |
|---|---|---|---|
date_from | timestamp | Yes | Start date (Unix timestamp) |
date_to | timestamp | Yes | End date (Unix timestamp) |
mode | string | No | full_data (created in range) or modified_data (updated in range) |
status | string | No | Filter by: all, paid, canceled, fulfilled, returned |
product_id | integer | No | Only orders for this product |
sku_id | integer | No | Only orders for this SKU |
Campaign Reports
Get marketing campaign performance data.
Use case: Export performance data for a specific campaign to analyze conversion rates and ROI.
{
"object": "campaign_reports",
"date_from": 1704067200,
"date_to": 1711929600,
"campaign_key": "summer-sale-2024"
}| Filter | Type | Required | Description |
|---|---|---|---|
date_from | timestamp | Yes | Start date (Unix timestamp) |
date_to | timestamp | Yes | End date (Unix timestamp) |
mode | string | No | full_data (created in range) or modified_data (updated in range) |
id | integer | No | Specific campaign ID |
campaign_key | string | No | Specific campaign key |
Accounting
Get a complete monthly accounting package. Unlike other exports, this produces a ZIP file with 11 CSV reports.
Use case: Close your monthly books by exporting all revenue, payments, and adjustments for January 2024 in USD.
{
"object": "accounting",
"month": "2024-01-01",
"currency": "usd"
}| Filter | Type | Required | Description |
|---|---|---|---|
month | date | Yes | Month to export (format: YYYY-MM-DD, e.g., 2024-01-01 for January 2024) |
currency | string | Yes | 3-letter currency code, lowercase (e.g., usd, eur) |
What's in the ZIP file:
subscription_revenue.csv- Revenue from subscription invoicesorder_revenue.csv- Revenue from e-commerce ordersrecognized_revenue.csv- Revenue recognized over timerecognized_revenue_issue_based.csv- Issue-based recognized revenuerecognized_revenue_order_based.csv- Order-based recognized revenuepayments_received.csv- All payments receivedapplied_balance.csv- Customer balance applicationsrefunds_made.csv- All refunds issueduncollectible.csv- Invoices marked as uncollectiblevoided.csv- Voided invoicescredit_notes.csv- Credit notes issued
Note: You can only export accounting data for past or current months, starting from the month of your first invoice.
Date Range Limits
- Maximum range: You can export up to 6 months of data at a time
- Accounting exports: One month at a time
Understanding the Mode Parameter
The mode parameter determines which records are included:
| Mode | What It Does |
|---|---|
full_data | Returns records created within the date range (default) |
modified_data | Returns records updated within the date range |
Use modified_data when you want to capture changes to existing records. For example, if a subscription was created in January but updated in March, using modified_data with a March date range will include that subscription.
Common Errors
| What Happened | Why |
|---|---|
| "Nothing to export" | No records match your filters. Try a wider date range or fewer filters. |
| "Invalid date range" | Date range exceeds 6 months. Request a smaller time period. |
| "Export in progress" | You already have an export of this type running. Wait for it to complete. |

