add billing threshold + specific trial free credits (#11533)

In this PR : 
- set billing thresholds after subscription creation (not possible
during billing checkout)
- add specific free trial workflow credit quantities + set them in
subscription item + check them when receiving stripe alert event

closes : https://github.com/twentyhq/core-team-issues/issues/682
This commit is contained in:
Etienne
2025-04-14 18:25:07 +02:00
committed by GitHub
parent 704b18af30
commit 9a69cd0b61
17 changed files with 218 additions and 21 deletions

View File

@ -509,6 +509,33 @@ export class ConfigVariables {
@ValidateIf((env) => env.IS_BILLING_ENABLED === true)
BILLING_FREE_TRIAL_WITHOUT_CREDIT_CARD_DURATION_IN_DAYS = 7;
@ConfigVariablesMetadata({
group: ConfigVariablesGroup.BillingConfig,
description: 'Amount of money in cents to trigger a billing threshold',
})
@IsNumber()
@CastToPositiveNumber()
@ValidateIf((env) => env.IS_BILLING_ENABLED === true)
BILLING_SUBSCRIPTION_THRESHOLD_AMOUNT = 10000;
@ConfigVariablesMetadata({
group: ConfigVariablesGroup.BillingConfig,
description: 'Amount of credits for the free trial without credit card',
})
@IsNumber()
@CastToPositiveNumber()
@ValidateIf((env) => env.IS_BILLING_ENABLED === true)
BILLING_FREE_WORKFLOW_CREDITS_FOR_TRIAL_PERIOD_WITHOUT_CREDIT_CARD = 5000;
@ConfigVariablesMetadata({
group: ConfigVariablesGroup.BillingConfig,
description: 'Amount of credits for the free trial with credit card',
})
@IsNumber()
@CastToPositiveNumber()
@ValidateIf((env) => env.IS_BILLING_ENABLED === true)
BILLING_FREE_WORKFLOW_CREDITS_FOR_TRIAL_PERIOD_WITH_CREDIT_CARD = 10000;
@ConfigVariablesMetadata({
group: ConfigVariablesGroup.BillingConfig,
isSensitive: true,