Activities
Point activities and transactions
Get point transactions with pagination
Retrieve paginated list of point transactions/activities
Filter by Shopify customer ID.
Note: At least one of shopifyCustomerId or customerId is required.
Filter by internal customer ID.
Note: At least one of shopifyCustomerId or customerId is required.
Cursor for pagination (before) - Firestore document ID of activity to paginate before
Cursor for pagination (after) - Firestore document ID of activity to paginate after
Number of transactions per page
Filter by activity type
Filter by specific event
Filter by activity source
Filter activities created after this date
Filter activities created before this date
Sort order for results
Include total count in response (may increase response time)
200Paginated list of transactions
trueShow properties
Activity ID
"act_abc123"Shop ID
"shop_xyz789"Internal customer ID
"cust_def456"Shopify customer ID
7801029525739Activity description/content
"Award points via REST API"Activity type
"earnPoint"Source of the activity
"rest_api"Program event that triggered this activity
"earn_point_rest_api"Previous point balance
50New point balance after this activity
150Associated program ID
"prog_abc123"Associated program title
"Manual Point Award"Shopify price rule ID for discounts
nullShopify discount ID
nullGenerated coupon code
nullAssociated Shopify order ID
nullShopify order name
nullShopify order number
nullOrder currency code
nullHow points were earned (price/order)
nullMoney to points conversion rate
nullPoints earned in this activity
100Points spent in this activity
nullEmail of referring customer
nullEmail of referred customer
nullMilestone order number
nullWhether points are pending for order
nullRefunded pending points
nullWhen pending points expire
nullAdmin note for this activity
nullUser note for this activity
nullReason for the activity
nullActivity creation timestamp
"2024-01-15T10:30:00.000Z"Last update timestamp
"2024-01-15T10:30:00.000Z"Pagination metadata container
Show properties
Show properties
True if more results exist after current page
True if results exist before current page
Total count of all matching results (when available)
Total number of pages calculated as ceil(total/limit) (when available)
"Operation completed successfully""2023-07-28T07:27:54.123Z"GET /rest_api/v2/transactions HTTP/1.1Host: dev-api.joy.soX-Joy-Loyalty-App-Key: YOUR_API_KEYX-Joy-Loyalty-Secret-Key: YOUR_API_KEYAccept: */*
{"success": true,"data": [{"id": "activity_123","customerId": "cust_abc","shopifyCustomerId": "7891234567890","type": "earn_point","event": "sign_up","oldPoint": 0,"newPoint": 100,"earnPoint": 100,"source": "rest_api","createdAt": "2025-08-12T08:30:00.000Z"},{"id": "activity_124","customerId": "cust_abc","shopifyCustomerId": "7891234567890","type": "redeem_point","event": "amount_discount","oldPoint": 100,"newPoint": 50,"spendPoint": 50,"source": "user","createdAt": "2025-08-12T07:15:00.000Z"}],"meta": {"pagination": {"hasNext": true,"hasPre": false,"total": 45,"totalPage": 3}},"timestamp": "2025-08-12T08:30:00.000Z"}
Get transaction by ID
Retrieve details of a specific point transaction
Transaction ID
200Transaction details
truePoint transaction/activity with all fields that may be returned by the API. Note: Actual responses may only include non-null fields due to automatic filtering.
Show properties
Activity ID
"act_abc123"Shop ID
"shop_xyz789"Internal customer ID
"cust_def456"Shopify customer ID
7801029525739Activity description/content
"Award points via REST API"Activity type
"earnPoint"Source of the activity
"rest_api"Program event that triggered this activity
"earn_point_rest_api"Previous point balance
50New point balance after this activity
150Associated program ID
"prog_abc123"Associated program title
"Manual Point Award"Shopify price rule ID for discounts
nullShopify discount ID
nullGenerated coupon code
nullAssociated Shopify order ID
nullShopify order name
nullShopify order number
nullOrder currency code
nullHow points were earned (price/order)
nullMoney to points conversion rate
nullPoints earned in this activity
100Points spent in this activity
nullEmail of referring customer
nullEmail of referred customer
nullMilestone order number
nullWhether points are pending for order
nullRefunded pending points
nullWhen pending points expire
nullAdmin note for this activity
nullUser note for this activity
nullReason for the activity
nullActivity creation timestamp
"2024-01-15T10:30:00.000Z"Last update timestamp
"2024-01-15T10:30:00.000Z"Additional metadata such as counts and pagination
"Operation completed successfully""2023-07-28T07:27:54.123Z"GET /rest_api/v2/transactions/{transactionId} HTTP/1.1Host: dev-api.joy.soX-Joy-Loyalty-App-Key: YOUR_API_KEYX-Joy-Loyalty-Secret-Key: YOUR_API_KEYAccept: */*
{"success": true,"data": {"id": "act_abc123","shopId": "shop_xyz789","customerId": "cust_def456","shopifyCustomerId": 7801029525739,"content": "Award points via REST API","type": "earnPoint","source": "rest_api","event": "earn_point_rest_api","oldPoint": 50,"newPoint": 150,"programId": "prog_abc123","programTitle": "Manual Point Award","priceRuleId": null,"discountId": null,"couponCode": null,"orderId": null,"orderName": null,"orderNumber": null,"orderCurrency": null,"earnBy": null,"rateMoney": null,"earnPoint": 100,"spendPoint": null,"referralCustomerEmail": null,"referredCustomerEmail": null,"milestoneOrder": null,"isPendingPointPlaceOrder": null,"refundPendingPoint": null,"pendingPointUntil": null,"adminNote": null,"userNote": null,"reason": null,"createdAt": "2024-01-15T10:30:00.000Z","updatedAt": "2024-01-15T10:30:00.000Z"},"meta": {},"message": "Operation completed successfully","timestamp": "2023-07-28T07:27:54.123Z"}
Award points to customer
Add points to a customer's account
Shopify customer ID
"8720295559390"Points to award
100Internal note for admin reference
"Bonus points for customer loyalty"Note visible to customer
"Loyalty bonus - thank you for being a valued customer!"Reason for awarding points
"manual_adjustment"200Points awarded successfully
trueAdditional metadata such as counts and pagination
"Operation completed successfully""2023-07-28T07:27:54.123Z"POST /rest_api/v2/transactions/points/award HTTP/1.1Host: dev-api.joy.soX-Joy-Loyalty-App-Key: YOUR_API_KEYX-Joy-Loyalty-Secret-Key: YOUR_API_KEYContent-Type: application/jsonAccept: */*Content-Length: 215{"shopifyCustomerId": "8720295559390","point": 100,"adminNote": "Bonus points for customer loyalty","userNote": "Loyalty bonus - thank you for being a valued customer!","reason": "manual_adjustment"}
{"success": true,"data": {},"meta": {},"message": "Operation completed successfully","timestamp": "2023-07-28T07:27:54.123Z"}
Deduct points from customer
Remove points from a customer's account
Shopify customer ID
"8720295559390"Points to deduct
50Internal note for admin reference
"Points deduction for policy violation"Note visible to customer
"Points adjusted due to return policy"Reason for deducting points
"policy_adjustment"200Points deducted successfully
trueAdditional metadata such as counts and pagination
"Operation completed successfully""2023-07-28T07:27:54.123Z"POST /rest_api/v2/transactions/points/deduct HTTP/1.1Host: dev-api.joy.soX-Joy-Loyalty-App-Key: YOUR_API_KEYX-Joy-Loyalty-Secret-Key: YOUR_API_KEYContent-Type: application/jsonAccept: */*Content-Length: 200{"shopifyCustomerId": "8720295559390","point": 50,"adminNote": "Points deduction for policy violation","userNote": "Points adjusted due to return policy","reason": "policy_adjustment"}
{"success": true,"data": {},"meta": {},"message": "Operation completed successfully","timestamp": "2023-07-28T07:27:54.123Z"}
Adjust customer points
Adjust customer points (positive or negative adjustment)
Shopify customer ID
"8720295559390"Points adjustment (positive or negative)
-25Internal note for admin reference
"Correcting points balance discrepancy"Note visible to customer
"Points balance correction"Reason for adjusting points
"balance_correction"200Points adjusted successfully
trueAdditional metadata such as counts and pagination
"Operation completed successfully""2023-07-28T07:27:54.123Z"POST /rest_api/v2/transactions/points/adjust HTTP/1.1Host: dev-api.joy.soX-Joy-Loyalty-App-Key: YOUR_API_KEYX-Joy-Loyalty-Secret-Key: YOUR_API_KEYContent-Type: application/jsonAccept: */*Content-Length: 191{"shopifyCustomerId": "8720295559390","point": -25,"adminNote": "Correcting points balance discrepancy","userNote": "Points balance correction","reason": "balance_correction"}
{"success": true,"data": {},"meta": {},"message": "Operation completed successfully","timestamp": "2023-07-28T07:27:54.123Z"}
Reset customer points
Set customer points to a specific value
Shopify customer ID
"8720295559390"New points balance to set
0Internal note for admin reference
"Resetting points balance for new program"Note visible to customer
"Points reset for new loyalty program launch"Reason for resetting points
"program_migration"200Points reset successfully
trueAdditional metadata such as counts and pagination
"Operation completed successfully""2023-07-28T07:27:54.123Z"POST /rest_api/v2/transactions/points/reset HTTP/1.1Host: dev-api.joy.soX-Joy-Loyalty-App-Key: YOUR_API_KEYX-Joy-Loyalty-Secret-Key: YOUR_API_KEYContent-Type: application/jsonAccept: */*Content-Length: 209{"shopifyCustomerId": "8720295559390","point": 0,"adminNote": "Resetting points balance for new program","userNote": "Points reset for new loyalty program launch","reason": "program_migration"}
{"success": true,"data": {},"meta": {},"message": "Operation completed successfully","timestamp": "2023-07-28T07:27:54.123Z"}