Consultation package redemption ledger calculator

Calculate package credits [ID,remaining,usable,expiry] and usable credits expiring within window with your own figures.

Your numbers

Use the units shown. Results update as you change valid inputs.

Use package credits [ID,remaining,usable,expiry] and usable credits expiring within window to compare changes to your inputs. The method and limits below explain the scope.

Examples

Examples

Try the starting example

Packages [ID,purchased credits,completed,charged cancellations,expiry ISO date]; enter JSON
[["A",10,4,1,"2026-11-01"],["B",5,2,0,"2026-12-01"]]
Report date (ISO date)
2026-10-22
Upcoming expiry lookahead (days)
14
Package credits [ID,remaining,usable,expiry] (JSON)
[["A",5,5,"2026-11-01"],["B",3,3,"2026-12-01"]]
Usable credits expiring within window (count)
5

Try another scenario

Packages [ID,purchased credits,completed,charged cancellations,expiry ISO date]; enter JSON
[["A",12,6,2,"2026-11-05"],["B",6,3,1,"2026-12-01"]]
Report date (ISO date)
2026-11-06
Upcoming expiry lookahead (days)
30
Package credits [ID,remaining,usable,expiry] (JSON)
[["A",4,0,"2026-11-05"],["B",2,2,"2026-12-01"]]
Usable credits expiring within window (count)
2
Calculation method

Calculation method

Package credits [ID,remaining,usable,expiry] (JSON)

Remaining=purchased−completed−charged cancellations; usable=remaining if expiry>=report date else zero.

Usable credits expiring within window (count)

Sum remaining credits whose expiry is between report and report+lookahead inclusive.

Symbols and units
a
Packages [ID,purchased credits,completed,charged cancellations,expiry ISO date]; enter JSON
b
Report date (ISO date)
c
Upcoming expiry lookahead (days)

Use the units shown. A list keeps the order in which you enter its values. The symbol ^ means “raised to the power of”.

Assumptions & limits

Assumptions & limits

  • Session credits ledger with explicit charged cancellation counts and expiry dates; package policy supplied by user. Supported limits: All numeric inputs and computed intermediates must remain finite. Supported numeric input magnitude is zero or 1e-12 through 1e12 in absolute value; reject values outside this bounded range. All lists/JSON record tables are limited to 100 records unless a stricter bound is stated; reject malformed record arity and wrong member types. Valid dates; purchased/completed/cancellations nonnegative integers; completed+charged cancellations<=purchased.
Are these inputs private?

These calculations run in your browser. A shared link contains the values you choose to share. Only questions submitted to the separate AI finder are sent to OpenAI.

Share this page
Share this calculator

Leave unchecked to share the page without your entered values.