summaryrefslogtreecommitdiffhomepage
path: root/packages/console/core
diff options
context:
space:
mode:
Diffstat (limited to 'packages/console/core')
-rw-r--r--packages/console/core/src/billing.ts2
-rw-r--r--packages/console/core/src/lite.ts7
-rw-r--r--packages/console/core/sst-env.d.ts5
3 files changed, 12 insertions, 2 deletions
diff --git a/packages/console/core/src/billing.ts b/packages/console/core/src/billing.ts
index 66b980698..9de413e60 100644
--- a/packages/console/core/src/billing.ts
+++ b/packages/console/core/src/billing.ts
@@ -254,7 +254,7 @@ export namespace Billing {
const createSession = () =>
Billing.stripe().checkout.sessions.create({
mode: "subscription",
- discounts: [{ coupon: LiteData.firstMonth50Coupon() }],
+ discounts: [{ coupon: LiteData.firstMonthCoupon(email!) }],
...(billing.customerID
? {
customer: billing.customerID,
diff --git a/packages/console/core/src/lite.ts b/packages/console/core/src/lite.ts
index 2c4a09f71..3343192c1 100644
--- a/packages/console/core/src/lite.ts
+++ b/packages/console/core/src/lite.ts
@@ -11,6 +11,11 @@ export namespace LiteData {
export const productID = fn(z.void(), () => Resource.ZEN_LITE_PRICE.product)
export const priceID = fn(z.void(), () => Resource.ZEN_LITE_PRICE.price)
export const priceInr = fn(z.void(), () => Resource.ZEN_LITE_PRICE.priceInr)
- export const firstMonth50Coupon = fn(z.void(), () => Resource.ZEN_LITE_PRICE.firstMonth50Coupon)
+ export const firstMonthCoupon = fn(z.string(), (email) => {
+ const invitees = Resource.ZEN_LITE_COUPON_FIRST_MONTH_100_INVITEES.value.split(",")
+ return invitees.includes(email)
+ ? Resource.ZEN_LITE_PRICE.firstMonth100Coupon
+ : Resource.ZEN_LITE_PRICE.firstMonth50Coupon
+ })
export const planName = fn(z.void(), () => "lite")
}
diff --git a/packages/console/core/sst-env.d.ts b/packages/console/core/sst-env.d.ts
index 6b842639a..b77ee3c5b 100644
--- a/packages/console/core/sst-env.d.ts
+++ b/packages/console/core/sst-env.d.ts
@@ -142,7 +142,12 @@ declare module "sst" {
"type": "sst.sst.Secret"
"value": string
}
+ "ZEN_LITE_COUPON_FIRST_MONTH_100_INVITEES": {
+ "type": "sst.sst.Secret"
+ "value": string
+ }
"ZEN_LITE_PRICE": {
+ "firstMonth100Coupon": string
"firstMonth50Coupon": string
"price": string
"priceInr": number