Skip to content
MatrixRewards
API docs menu

retroactive_change

Status 422. The expiry change would reach back before shoppers were told.

What it means

Points only expire once shoppers have been warned, so an expiry change may never make points expire sooner than the rule shoppers were already told about, and expiry cannot be switched on from a date already past. problem says which; current_effective_from and current_period_months show the rule in force, when there is one. Nothing was changed.

What to do

Choose a later effective_from, or a longer period_months, and send it with a new Idempotency-Key.

Safe to send again?

Not as it is. Change what the answer points to, then send the request.

What else the answer carries

  • problem: With invalid_request or retroactive_change from a programme change: the platform's own reason, like campaign_starts_in_past or retroactive_start. With assistant_limit, which limit: point_value_locked, currency_locked, expiry_locked, more_than_double, raised_from_zero, earning_more_than_double, everyday_rate_moved, changes_how_it_pays, changes_who_it_pays, changes_what_it_gives, minimum_more_than_halved, new_offer_kind, new_reward_too_generous or new_reward_kind.
  • current_effective_from: When the expiry rule shoppers were told about took effect, or null when there is none.
  • current_period_months: That rule's period in months, or null when there is none.

Where you can meet it

  • POST /stores/{store_key}/programme: Change the earn rate, the bonuses, what a point is worth, referrals, spending any amount, the time zone, the ways to earn, or when points expire

Every code, and the shape of an error answer: Errors.

Last updated: 10 October 2026