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, shipping information, and post-purchase access.

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 (using SalePublicResource), whilst the single sale endpoint returns the full detailed object (using SaleResource). See the Listing Sales and Getting a Single Sale sections for the differences.

Sale Statuses

Sales can have the following statuses throughout their lifecycle:

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:

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:

Post-Purchase Fulfillment

Completed sales can include fulfillment data containing deliverables based on the product type. The fulfillment field is present in the list endpoint response when populated:

File Downloads

For products with downloadable files, the files array contains:
  • id - Unique file identifier
  • name - Original filename
  • size - File size in bytes
  • type - MIME type
  • download_url - Temporary signed download URL
  • expires_at - When the download link expires

Licences

For products with licence keys, the licences array contains:
  • id - Unique licence identifier
  • licence_key - The licence key string
  • status - Licence status (active, inactive, expired)
  • activations - Current number of activations
  • max_activations - Maximum allowed activations
  • expires_at - Expiry date (null for lifetime licences)

Custom Instructions

The instructions field contains custom post-purchase instructions configured for the product.

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