Overview
Our integration with Smile makes it easy to reward customers for linking accounts and making retail purchases. Subtotal awards points directly in Smile by posting points transactions against each customer’s Smile profile. No matching earning rule needs to exist on the Smile side — Subtotal calculates the points, then records the transaction with a description you choose.Get your Smile API key
Sign in to your Smile admin and navigate to Settings → Developer Tools → Manage API keys. Generate a new REST API key for Subtotal and copy the secret value — you’ll need it to connect the integration.
Smile shows the full secret only once, at creation time. After that only the last four characters are visible. Store the key somewhere safe, or generate a new one if you lose it.
Connect your Smile account
Sign in to the Subtotal Dashboard and connect your Smile account to enable the integration. Navigate to Integrations → Smile → Connect. Click theConnect Smile button.

Save Integration.

Active status on the Smile integration page.

How Subtotal awards points in Smile
For each qualifying event, Subtotal:- Looks up the Smile customer by email (
GET /v1/customers?email=…). - POSTs a points transaction (
POST /v1/points_transactions) with the computed point value and the Action name you set as the transaction description.
Retail purchase, Linked a retail account). Subtotal does not reference any Smile-side earning rule or custom activity token — the only required setup in Smile is the API key.
Configure actions
After connecting, configure the actions Subtotal should send to Smile. Each action maps a Subtotal event (an account being linked, a purchase being made) to a points award.
To add an action, click
Add action and choose an event:
See Rewarding linked accounts and Rewarding purchases for examples of each action type.
Customer identification
The Smile integration identifies customers by their email address. Subtotal calls Smile’sGET /v1/customers?email=… endpoint to resolve the Smile customer for each connection, then awards points against that customer’s profile.
How the email is captured depends on your setup:
- Shopify app — the customer’s email is captured automatically from their Shopify profile. No additional parameters needed.
- API integration — include the
emailfield when creating a connection viaPOST /connections. Without it, Subtotal won’t be able to identify the customer in Smile.
If no Smile customer exists for a connection’s email (e.g. the customer hasn’t been created in Smile yet), the action is skipped and logged. The customer must exist in Smile at the time the event is processed — points cannot be awarded retroactively.