Yotpo automation
Fix a Yotpo customer's loyalty points balance
A customer writes in because points vanished after a failed coupon. Fixing it is a few clicks, but the wrong adjustment reason can quietly change the customer's VIP tier.
Cotlet does it in your own Yotpo account with get_loyalty_customer, list_customer_earnings and adjust_loyalty_points, called by your AI agent, an n8n workflow or a script.
Hosted · nothing to install or maintain
Can Yotpo do this on its own?
Yotpo's Loyalty API has an endpoint to adjust a customer's point balance, with its own API key and GUID (checked 23 Oct 2026). The official MCP does not cover Loyalty. In the admin, the choice of reason is the part people get wrong, because it decides whether total earned points, and with them the tier, change.
How you do it in Yotpo today
- In the Yotpo Loyalty admin, open Customers and search by email address, with no spaces before or after it, then click the email to open the profile.
- The profile has Earnings, Redemptions and Orders tables. Manual point adjustments are hidden from the customer by default in Earnings.
- The admin clicks Adjust Points in the top-right corner, picks add or deduct, types the amount and picks a reason.
- The admin writes an explanation, which appears in the customer's Rewards History.
- For a customer who used a discount and was never charged points, Yotpo points the admin to Give Reward instead, with a coupon from Rewards Program > Ways to redeem.
How to fix a Yotpo customer's loyalty points balance
Ana Lopez says a cancelled redemption cost her 150 points. Check her profile and earnings, then add the points back so her tier does not change. - 01
Read the profile first
get_loyalty_customer returns the current balance, total earned, tier and last loyalty activity for the email. A customer who is Not Enrolled stops the job, because there is no balance to fix.
- 02
Find what went wrong
list_customer_earnings shows the earnings with their dates, so the agent can match the missing points to a campaign or order and quote it back to you before touching anything.
- 03
Pick the reason that spares the tier
The agent chooses refund_points_deducted for points lost to a redemption, because it changes the balance only. reward_customer and remove_earned_points also change total earned, so the agent warns you about a possible tier change and asks first.
- 04
Adjust and confirm
adjust_loyalty_points runs with an explanation that mentions the ticket or order. It waits for your OK by default, because points are money to the customer.
- 05
Check the result
The agent reads the profile again and reports balance, total earned and tier before and after, so you can see that the tier did not move.
What you get back
Ana Lopez (ana.lopez@example.com), Silver, Member
Balance 90, total earned 1020
Added 150 points, reason Refund points deducted
Balance now 240, total earned 1020, tier unchanged Other ways to ask
- Remove the 200 points Tom Becker earned from the cancelled order 4810 and tell me if his tier drops.
- Expire the 500 points on this account that should have expired in September.
- List this customer's last earnings and tell me which campaign added the points twice.
What Yotpo allows, and what to know first
- Reward customer and Remove earned points change both the current balance and total earned points; Refund points deducted, Redeem points for a discount and Manually expire points change the balance only.
- Any adjustment that changes total earned points can move a customer's VIP or Loyalty tier, up when adding and down when removing.
- Points added by hand count the adjustment date as the earned date, so they expire after the validity period counted from that day.
- Adjusting a specific customer's points works on the Free, Pro, Premium and Enterprise plans.
- For changes across many customers, Yotpo points to a CSV import instead of adjusting one profile at a time.
adjust_loyalty_points asks for your OK by default. To run it on a schedule without you, switch confirmation off for that tool in your dashboard.
Sources: Yotpo Help Center: Adjusting a Specific Customer's Points Balance · Yotpo Help Center: Using the Customers Page in Loyalty & Referrals · Yotpo Help Center: Setting up Points Validation and Expiration · Yotpo Loyalty API: Adjust a customer's point balance
Call adjust_loyalty_points from a script
curl -X POST https://cotlet.dev/api/v1/yotpo/loyalty-points/adjust \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"email":"ana.lopez@example.com","direction":"add","points":150,"reason":"refund_points_deducted","note":"Points lost to a cancelled redemption, support ticket 4821"}' {
"email": "ana.lopez@example.com",
"direction": "add",
"points": 150,
"reason": "refund_points_deducted",
"points_balance": 240,
"points_earned_total": 1020,
"tier": "Silver"
} MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is yotpo_write → adjust_loyalty_points. Example data.
Schedule it in n8n, Make, Zapier or cronYotpo tools this automation uses
| Tool | Parameters |
|---|---|
| get_loyalty_customer | |
| list_customer_earnings | email, since |
| adjust_loyalty_points | email, direction, points, reason, note |
Frequently asked questions
Is it safe to connect Yotpo to Cotlet?
Yes. You sign in to Yotpo yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Yotpo once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.
Give your agent access to Yotpo.
Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with Yotpo.