List Affiliate Sales
Retrieves paginated affiliate sales (conversions) for the organization. For website conversions, use store_platform=website. For Shopify, use store_platform=shopify_store with store_id.
store_platform=website (no store_id required). For Shopify conversions, use store_platform=shopify_store along with your store_id.
The response includes data (array of sales), meta (pagination info), and additional_data (aggregate totals like total GMV, commission breakdown, and order counts).
Request Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
page | Integer | Page number for pagination. Default is 1. | No |
per_page | Integer | Number of results per page. Default is 20. Maximum is 100. | No |
start_date | String | Filter sales from this date (MM/DD/YYYY format) | No |
end_date | String | Filter sales until this date (MM/DD/YYYY format) | No |
search | String | Search by customer name or email | No |
creator_id | Integer | Filter by Growi creator/user ID | No |
creator_email | String | Filter by creator’s email address | No |
campaign_id | Integer | Filter by campaign ID | No |
order_id | String | Filter by external order ID | No |
status | String | Filter by status: paid, due, unpaid, canceled, or refunded | No |
affiliate_tag | String | Filter by affiliate tag (campaign_affiliate_id tag) | No |
store_id | String | Store identifier (required for Shopify, not needed for website) | No |
store_platform | String | Platform type: website or shopify_store. Use website for website-sourced conversions. | No |
ambassador_program | Boolean | Filter to only ambassador program sales. Default is false. | No |
Request Example
Response Example
Response Fields
| Field | Type | Description |
|---|---|---|
data | Array | Array of affiliate sale objects |
data[].id | Integer | Unique Growi identifier for the sale |
data[].external_id | String | External order ID (your system’s order identifier) |
data[].platform | String | Source platform: website, shopify, etc. |
data[].status | String | Sale status: paid, due, unpaid, canceled, or refunded |
data[].occurred_at | String | ISO 8601 timestamp when the sale occurred |
data[].total | Integer | Total order amount in cents |
data[].commission | Integer | Commission amount in cents |
data[].currency | String | Currency code (e.g., usd, eur) |
meta | Object | Pagination metadata |
meta.row_count | Integer | Total number of sales matching the query |
meta.page_count | Integer | Total number of pages available |
meta.current_page | Integer | Current page number |
additional_data | Object | Aggregate totals for the query |
additional_data.total_gmv | Number | Total Gross Merchandise Value in dollars |
additional_data.total_commission | Number | Total commission amount in dollars |
additional_data.paid_commission | Number | Commission already paid out in dollars |
additional_data.unpaid_commission | Number | Commission not yet paid in dollars |
additional_data.total_vat | Number | Total VAT amount in dollars |
additional_data.total_orders | Integer | Total number of orders |
additional_data.total_refunded_amount | Number | Total refunded amount in dollars |
Use Cases
This endpoint is useful for:- Conversions Dashboard: Build a real-time dashboard showing all affiliate-attributed sales
- Data Warehouse Sync: Export conversion data to your analytics or data warehouse
- Payout Reconciliation: Verify commission amounts before processing creator payouts
- Creator Performance: Filter by
creator_idorcreator_emailto analyze individual creator performance - Campaign Analytics: Filter by
campaign_idto measure campaign-specific conversion metrics - Financial Reporting: Use
additional_datatotals for GMV and commission reporting
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Page number for pagination. Default is 1.
Number of results per page. Default is 20. Maximum is 100.
x <= 100Filter sales from this date (MM/DD/YYYY format)
Filter sales until this date (MM/DD/YYYY format)
Search by customer name or email
Filter by Growi creator/user ID
Filter by creator's email address
Filter by campaign ID
Filter by external order ID
Filter by sale status
paid, due, unpaid, canceled, refunded Filter by affiliate tag
Store identifier (required for Shopify, not needed for website)
Platform type: website or shopify_store
website, shopify_store Filter to only ambassador program sales