Skip to content

Epic: Allow annual credit pre-commitments for usage-based #14561

@jankeromnes

Description

@jankeromnes

Summary

In the context of usage-based, we would like to allow customers to pre-commit to a certain number of usage credits over (e.g.) the next 12 months.

Context

Acceptance Criteria

This likely implies creating a new BillingStrategy (e.g. "stripe-prepaid") for our CostCenters, which should:

  • Grant an arbitrary number of prepaid credits that can be used over the next 12 months (after which they expire)
  • Be linked to a unique OrderID that represents the unique pre-commitment
  • Each month, create an invoice that:
    • Shows the CostCenter's actually-consumed credits during the month
    • Includes the unique OrderID of the pre-commitment
    • Does not require any payment or credit card (the actual payment happens outside of Stripe)
  • Each month, the UsageLimit should be set to the total remaining prepaid credits (such that a customer is allowed to consume their entire yearly pre-commitment if they wish to, but not more)
    • Optionally, we can make this UsageLimit customizable by the customer (but it shall always remain between 0 and the total remaining prepaid credits)
    • Optionally, we may allow the customer to set a higher limit, by providing a credit card, such that any over-consumption gets paid at the regular pay-as-you-go rate
  • Once all the prepaid credits are consumed, or at the end of the pre-commitment period:
    • Any remaining credits expire and are voided
    • A final invoice is created, which must also include the unique OrderID + recap all the previous invoice IDs

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions