Rename env var
This commit is contained in:
parent
1a0d77857e
commit
4d22e987de
7 changed files with 10 additions and 12 deletions
|
|
@ -12,7 +12,7 @@ EMAIL_USER="baptiste@xtablo.com"
|
||||||
EMAIL_CLIENT_ID="904332563417-e2n7pchtgnkrkp360baaebfeig55maig.apps.googleusercontent.com"
|
EMAIL_CLIENT_ID="904332563417-e2n7pchtgnkrkp360baaebfeig55maig.apps.googleusercontent.com"
|
||||||
|
|
||||||
STRIPE_SOLO_PRICE_ID=price_solo_placeholder
|
STRIPE_SOLO_PRICE_ID=price_solo_placeholder
|
||||||
STRIPE_TEAM_MONTHLY_PRICE_ID=price_team_placeholder
|
STRIPE_TEAM_PRICE_ID=price_team_placeholder
|
||||||
STRIPE_FOUNDER_PRICE_ID=price_founder_placeholder
|
STRIPE_FOUNDER_PRICE_ID=price_founder_placeholder
|
||||||
|
|
||||||
BILLING_TRIAL_DAYS=14
|
BILLING_TRIAL_DAYS=14
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ export interface AppConfig {
|
||||||
STRIPE_SECRET_KEY: string;
|
STRIPE_SECRET_KEY: string;
|
||||||
STRIPE_WEBHOOK_SECRET: string;
|
STRIPE_WEBHOOK_SECRET: string;
|
||||||
STRIPE_SOLO_PRICE_ID: string;
|
STRIPE_SOLO_PRICE_ID: string;
|
||||||
STRIPE_TEAM_MONTHLY_PRICE_ID: string;
|
STRIPE_TEAM_PRICE_ID: string;
|
||||||
STRIPE_FOUNDER_PRICE_ID: string;
|
STRIPE_FOUNDER_PRICE_ID: string;
|
||||||
EMAIL_USER: string;
|
EMAIL_USER: string;
|
||||||
EMAIL_CLIENT_ID: string;
|
EMAIL_CLIENT_ID: string;
|
||||||
|
|
@ -94,9 +94,9 @@ export function createConfig(secrets?: Secrets): AppConfig {
|
||||||
? validateEnvVar("STRIPE_WEBHOOK_SECRET", process.env.STRIPE_WEBHOOK_SECRET)
|
? validateEnvVar("STRIPE_WEBHOOK_SECRET", process.env.STRIPE_WEBHOOK_SECRET)
|
||||||
: getStripeWebhookSecretFromEnv() || getStripeWebhookSecret(isStagingMode),
|
: getStripeWebhookSecretFromEnv() || getStripeWebhookSecret(isStagingMode),
|
||||||
STRIPE_SOLO_PRICE_ID: validateEnvVar("STRIPE_SOLO_PRICE_ID", process.env.STRIPE_SOLO_PRICE_ID),
|
STRIPE_SOLO_PRICE_ID: validateEnvVar("STRIPE_SOLO_PRICE_ID", process.env.STRIPE_SOLO_PRICE_ID),
|
||||||
STRIPE_TEAM_MONTHLY_PRICE_ID: validateEnvVar(
|
STRIPE_TEAM_PRICE_ID: validateEnvVar(
|
||||||
"STRIPE_TEAM_MONTHLY_PRICE_ID",
|
"STRIPE_TEAM_PRICE_ID",
|
||||||
process.env.STRIPE_TEAM_MONTHLY_PRICE_ID
|
process.env.STRIPE_TEAM_PRICE_ID
|
||||||
),
|
),
|
||||||
STRIPE_FOUNDER_PRICE_ID: validateEnvVar(
|
STRIPE_FOUNDER_PRICE_ID: validateEnvVar(
|
||||||
"STRIPE_FOUNDER_PRICE_ID",
|
"STRIPE_FOUNDER_PRICE_ID",
|
||||||
|
|
|
||||||
|
|
@ -83,7 +83,7 @@ const getPlanPriceId = (config: AppConfig, plan: CheckoutPlan): string | null =>
|
||||||
}
|
}
|
||||||
|
|
||||||
if (plan === "team") {
|
if (plan === "team") {
|
||||||
return config.STRIPE_TEAM_MONTHLY_PRICE_ID ?? null;
|
return config.STRIPE_TEAM_PRICE_ID ?? null;
|
||||||
}
|
}
|
||||||
|
|
||||||
return config.STRIPE_FOUNDER_PRICE_ID ?? null;
|
return config.STRIPE_FOUNDER_PRICE_ID ?? null;
|
||||||
|
|
|
||||||
|
|
@ -11,8 +11,6 @@ VITE_STRIPE_STANDARD_MONTHLY_PRICE_ID=price_1SO0HAAmcXPHW4mTkFIh3CvF
|
||||||
VITE_STRIPE_INFINITE_PRICE_ID=price_1SXHp8AmcXPHW4mTbus6j4Za
|
VITE_STRIPE_INFINITE_PRICE_ID=price_1SXHp8AmcXPHW4mTbus6j4Za
|
||||||
|
|
||||||
VITE_API_URL=https://xablo-api-636270553187.europe-west1.run.app
|
VITE_API_URL=https://xablo-api-636270553187.europe-west1.run.app
|
||||||
VITE_STRIPE_TEAM_MONTHLY_PRICE_ID=price_team_placeholder
|
VITE_STRIPE_TEAM_PRICE_ID=price_team_placeholder
|
||||||
|
|
||||||
VITE_STRIPE_FOUNDER_PRICE_ID=price_annual_placeholder
|
VITE_STRIPE_FOUNDER_PRICE_ID=price_annual_placeholder
|
||||||
|
|
||||||
VITE_STRIPE_SOLO_PRICE_ID=price_solo_placeholder
|
VITE_STRIPE_SOLO_PRICE_ID=price_solo_placeholder
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@ VITE_STRIPE_STANDARD_MONTHLY_PRICE_ID=price_1SPr3qAto3YQ7YhIALNeFBva
|
||||||
VITE_API_URL=https://xablo-api-staging-636270553187.europe-west1.run.app
|
VITE_API_URL=https://xablo-api-staging-636270553187.europe-west1.run.app
|
||||||
|
|
||||||
VITE_STRIPE_SOLO_PRICE_ID=price_1T8iT4Ato3YQ7YhIYCIIk0RA
|
VITE_STRIPE_SOLO_PRICE_ID=price_1T8iT4Ato3YQ7YhIYCIIk0RA
|
||||||
VITE_STRIPE_TEAM_MONTHLY_PRICE_ID=price_1T8hZfAto3YQ7YhIRK9YUSub
|
VITE_STRIPE_TEAM_PRICE_ID=price_1T8hZfAto3YQ7YhIRK9YUSub
|
||||||
VITE_STRIPE_FOUNDER_PRICE_ID=price_1T8hawAto3YQ7YhIrVyKHggH
|
VITE_STRIPE_FOUNDER_PRICE_ID=price_1T8hawAto3YQ7YhIrVyKHggH
|
||||||
|
|
||||||
VITE_STRIPE_INFINITE_PRICE_ID=price_infinite_placeholder
|
VITE_STRIPE_INFINITE_PRICE_ID=price_infinite_placeholder
|
||||||
|
|
|
||||||
|
|
@ -288,7 +288,7 @@ git commit -m "feat(main): bootstrap signup checkout for solo team founder"
|
||||||
|
|
||||||
- [ ] **Step 1: Confirm plan price IDs exist in API env**
|
- [ ] **Step 1: Confirm plan price IDs exist in API env**
|
||||||
|
|
||||||
Run: `rg -n "STRIPE_SOLO_PRICE_ID|STRIPE_TEAM_MONTHLY_PRICE_ID|STRIPE_FOUNDER_PRICE_ID" apps/api/src/routers/stripe.ts`
|
Run: `rg -n "STRIPE_SOLO_PRICE_ID|STRIPE_TEAM_PRICE_ID|STRIPE_FOUNDER_PRICE_ID" apps/api/src/routers/stripe.ts`
|
||||||
Expected: all three env-backed plan mappings present.
|
Expected: all three env-backed plan mappings present.
|
||||||
|
|
||||||
- [ ] **Step 2: Start webhook forwarding in Stripe test mode**
|
- [ ] **Step 2: Start webhook forwarding in Stripe test mode**
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ Date: 2026-03-15
|
||||||
|
|
||||||
## Preflight
|
## Preflight
|
||||||
|
|
||||||
- `STRIPE_SOLO_PRICE_ID`, `STRIPE_TEAM_MONTHLY_PRICE_ID`, and `STRIPE_FOUNDER_PRICE_ID` are mapped in `apps/api/src/routers/stripe.ts`.
|
- `STRIPE_SOLO_PRICE_ID`, `STRIPE_TEAM_PRICE_ID`, and `STRIPE_FOUNDER_PRICE_ID` are mapped in `apps/api/src/routers/stripe.ts`.
|
||||||
- `stripe` CLI is available (`stripe version 1.37.3`) and authenticated.
|
- `stripe` CLI is available (`stripe version 1.37.3`) and authenticated.
|
||||||
- Local frontend is running on `5173`; API process is already listening on `8080`.
|
- Local frontend is running on `5173`; API process is already listening on `8080`.
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue