Skip to main content
Sales represent purchase transactions in your store, whether completed, pending, abandoned, failed, or settled. Each sale contains comprehensive information about the product, customer, payment details, applied discounts and shipping information.

Understanding Sales

The Chariow Sales API provides programmatic access to all transaction data in your store. You can:
  • Retrieve a list of all sales with filtering options
  • Get detailed information about specific sales
  • Track payment status and settlement details
  • Access customer purchase history
  • Monitor download statistics
  • View applied discounts and marketing campaigns

Sale Object

The detailed sale object (returned by the single sale endpoint) contains comprehensive purchase information with the following structure:
The list endpoint returns a simplified version of the sale object, whilst the single sale endpoint returns the full detailed object shown above. See the Listing Sales and Getting a Single Sale sections for the differences. buyer keeps the name entered at purchase time, whereas customer reflects the customer’s current profile. A gift object (recipient, message) is added for gift purchases.

Sale Statuses

Sales can have the following statuses throughout their lifecycle:
failed and abandoned are not always final. When the payment gateway later reports that the buyer did pay (for example, a payment finished after the checkout timed out), the sale is reopened as awaiting_payment, its failed_at or abandoned_at is cleared, and it then moves to completed. Listen for sale events through Pulses rather than treating these statuses as definitive.

Payment Statuses

The payment status tracks the payment gateway transaction separately from the sale status:

Sales Channels

Sales can originate from different channels:

Listing Sales

Retrieve all sales for your store:

Query Parameters

You can filter and paginate sales using the following parameters:
start_date and end_date are not supported and are silently ignored, which returns sales of every date. Use from and to.

Filtering by Status

Filtering by Customer

Filtering by Date Range

Searching Sales

Pagination

The API uses cursor-based pagination. Use the next_cursor from the response to fetch the next page:

Example Response

The list endpoint returns a simplified sale object per item:

Getting a Single Sale

Retrieve a specific sale by its public ID:

Common Use Cases

Calculate total revenue for a specific period:
Process orders that require physical shipping:
View a customer’s complete purchase history:
This returns all sales for the specified customer, including:
  • Purchase dates and amounts
  • Products purchased
  • Applied discounts
  • Current access status
Identify and process failed payments:
Analyse discount code usage and effectiveness:

Settlement Information

For completed sales, the settlement object provides details about merchant payouts:
  • amount - Net amount to be paid to merchant (after fees)
  • due_at - When settlement is scheduled
  • done_at - When settlement was completed (null if pending)
  • service_fee - Chariow platform service fee

Download Tracking

Monitor customer download activity:
This helps you:
  • Track product engagement
  • Identify customers who haven’t accessed their purchase
  • Monitor for unusual download patterns

Checkout Guide

Learn how to create sales

Pulses

Get notified of new sales

Sales API

View the complete Sales API reference