Packages, programs and meal credits

Updated October 31, 2026

Sahen sells prepaid meal packs: the customer pays first, and the kitchen delivers day by day until the paid days are used up.

The four building blocks

You keep four short lists in the catalogue. Sahen combines them, so there is no price table to fill in.

Building block What it is Example
Meal type A course in your kitchen's vocabulary Breakfast, lunch, salad, drink
Program The diet the customer buys into High protein, vegetarian, chicken only
Package What one eating day contains, and its price per day 1 breakfast + 2 lunches
Duration How many eating days the pack lasts 7, 10, 20 or 40 days

Packages

A package is a list of meal types with a quantity for each, for one day, plus a price per day. A "Lunch and dinner" package might be one lunch and one dinner a day. Each package also lists which programs it can be bought with.

Programs

A program is a diet. Each meal is tagged with the programs it suits, and a customer only ever sees meals tagged with their own program (or meals of a type that has no diet, such as a bottle of water). A program carries a price modifier: a percentage added to or taken off the package price. A high-protein program might be +15%; a basic one might be 0%.

Durations

A duration counts eating days, not calendar days. A 20-day pack ends after the customer's 20th delivered eating day, however many weeks that takes. Skips, pauses and kitchen closures push the end date later. See skips, pauses and patterns.

How a pack is priced

The quote is worked out in a fixed order:

  1. Price per day from the package.
  2. Multiplied by the program modifier (for example, +15%).
  3. Multiplied by the number of days in the chosen duration.
  4. One discount: the better of your automatic discount rules (for example, a lower rate on longer durations) or the customer's promo code. The two never stack.
  5. One rounding step, using the rounding setting you chose for your kitchen (no rounding, or to the nearest quarter, half or whole unit).

The customer sees the full breakdown. Delivery is added per physical drop: free, the delivery zone rate, or a custom rate.

A sold pack keeps what it bought

When a pack is sold, Sahen saves a snapshot of the whole quote and of the plates it includes (which meal types, how many of each). Later catalogue changes affect only new purchases:

  • If you raise a package price, existing packs keep their old price and invoice.
  • If you remove dinner from a package, customers who already bought it still get dinner until their pack ends. Your weekly menu must keep covering it, and the menu builder names the gap when it does not.

Only your team can move a customer to a different program. The change reprices the days still to come from the pack's own saved price, not today's catalogue price. On an unpaid pack the invoice total changes; on a paid pack Sahen opens a separate charge or refund for the difference.

Meal credits: one credit is one eating day

When the pack's payment is confirmed, the customer receives one meal credit per eating day. A credit is a whole day of service, not one meal and not one delivery: a four-course day uses one credit. The customer sees this as "N days left".

At each daily cutoff, Sahen locks the day's picks and uses one credit for each eating day in that delivery. Skipping a whole day before cutoff uses nothing.

Why a balance can always be explained

Sahen never stores a balance as a number someone can overwrite. Every change is a new line in an append-only credit ledger: credits added when a payment is confirmed, one taken at each cutoff, credits returned when the kitchen cancels a delivery, credits zeroed when a pack is cancelled. Lines are never changed or deleted. The balance is the sum of all lines.

When a customer asks "why do I have 7 days left?", read the credit ledger on their profile. See customers and support.

One open pack at a time

A customer can hold only one open pack. They finish or cancel it before buying the next. A pack closes on its own, shown as Completed, once every eating day has been delivered and its invoice is paid. A zero balance on its own does not close a pack.

Active-pack caps by plan

Your Sahen plan can cap active subscriptions. At the cap, new packs are refused in the console, web and app, and customers see that the kitchen is full. The console and owner emails warn you as you get close. Plan limits are listed on the pricing page.

See also getting started, meals and macros and the FAQ.