Open tianrunhe opened 6 months ago
we'll probably need to change the name here because if draftEnterpriseInvoice
doesn't draft an invoice, we're gonna confuse people!
PPMI where the entire company is within an environment hence all the orgs within that environment should be on the enterprise tier but we only need 1 Stripe customer/subscription
i know this is a problem for legacy PPMIs where we don't have access to the DB to update all teams/orgs to enterprise. Moving forward, we set IS_ENTERPRISE=true
in the env & this problem is solved, right?
Free-trial use cases for companies that are window shopping
I see there's some logic for trialStartDate
, but I don't see anything for trialEndDate
? With the goal of not creating a bunch of spaghetti logic, could we lay out the business logic for trials for teams & enterprises? If we have a trialEndDate
we can store it on the stripe subscription object instead of in our system. That way, trials would roll over into paid subscriptions automatically & we wouldn't need as much human intervention.
we'll probably need to change the name here because if draftEnterpriseInvoice
I agree!
we set IS_ENTERPRISE=true in the env & this problem is solved, right?
I think so! Yeah moving forward this should be the preferred solution
That way, trials would roll over into paid subscriptions automatically & we wouldn't need as much human intervention.
I suggested this to sales before but it does not look like a popular option, especially for some gov users (e.g., this thread🔒). I guess people don't like having a deadline to pay/sign the contract.
talked to Rafa about legacy PPMIs & we can now just directly hit the DB to upgrade them, so the only use case we have to worry about is free trials.
The usecase in the chat is a good one! Seems like it's just for pubsec, but now that we're in Platform 1 I'm not sure if we'll ever have to support that since they can just use Parabol in P1. We'll need to confirm this to make sure.
Is there a usecase we have for private companies? Providing a way to upgrade that isn't tied to a payment method & doesn't have an expiration feels like a dangerous thing to add to the API.
Stale issue
We have a couple of use cases where we need to upgrade an org to enterprise but we do not create new Stripe subscriptions:
enterprise
tier but we only need 1 Stripe customer/subscriptionSuccess criteria:
draftEnterpriseInvoice
mutation with an optional boolean argument (default to true)createStripeSubscription
. When sets to false, the mutation upgrades the org toenterprise
without creating subscription in StripeEstimated effort: X points (see CONTRIBUTING.md)