-
Notifications
You must be signed in to change notification settings - Fork 126
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix: billing email and deploy paywall copy (#6132)
* Update some billing email copy * Update quota error to match plan * Fix trial org usage percent * PR comments
- Loading branch information
1 parent
dd912e8
commit 3f7e202
Showing
14 changed files
with
76 additions
and
53 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -400,7 +400,7 @@ func (c *Client) SendInvoicePaymentFailed(opts *InvoicePaymentFailed) error { | |
ToName: opts.ToName, | ||
Subject: fmt.Sprintf("Payment failed for %s. Please update your payment method", opts.OrgName), | ||
PreButton: template.HTML(fmt.Sprintf(` | ||
We couldn’t process your payment for %s. You have until %s to update your payment details before your org is <a href="https://docs.rilldata.com/home/FAQ#what-is-project-hibernation">hibernating</a>. | ||
We couldn’t process your payment for <b>%s</b>. You have until <b>%s</b> to update your payment details before your org is <a href="https://docs.rilldata.com/home/FAQ#what-is-project-hibernation">hibernating</a>. | ||
`, opts.OrgName, opts.GracePeriodEndDate.Format(dateFormat))), | ||
ButtonText: "Update Payment Info", | ||
ButtonLink: opts.PaymentURL, | ||
|
@@ -424,7 +424,7 @@ func (c *Client) SendInvoicePaymentSuccess(opts *InvoicePaymentSuccess) error { | |
Body: template.HTML(fmt.Sprintf(` | ||
Thank you for your payment! | ||
<br /><br /> | ||
Your payment for %s has been successfully processed. | ||
Your payment for <b>%s</b> has been successfully processed. | ||
<br /><br /> | ||
If you believe this charge to be in error or have any questions, please email [email protected]. | ||
<br /><br /> | ||
|
@@ -447,7 +447,7 @@ func (c *Client) SendInvoiceUnpaid(opts *InvoiceUnpaid) error { | |
ToName: opts.ToName, | ||
Subject: fmt.Sprintf("Invoice for %s is now past due. Org is now hibernated", opts.OrgName), | ||
PreButton: template.HTML(fmt.Sprintf(` | ||
%s and its projects have been hibernated due to an overdue payment. | ||
<b>%s</b> and its projects have been hibernated due to an overdue payment. | ||
<br /><br /> | ||
Restore access by updating your payment information today! | ||
`, opts.ToName)), | ||
|
@@ -473,11 +473,9 @@ func (c *Client) SendSubscriptionCancelled(opts *SubscriptionCancelled) error { | |
PreButton: template.HTML(fmt.Sprintf(` | ||
We’re sorry to see you go! | ||
<br /><br /> | ||
You’ve successfully canceled the %s for %s. You’ll still have access to Rill Cloud until %s. After this date, your subscription will expire, and you will no longer have access. | ||
You’ve successfully canceled the %s plan for <b>%s</b>. You’ll still have access to Rill Cloud until <b>%s</b>. After this date, your subscription will expire, and you will no longer have access. | ||
<br /><br /> | ||
If you change your mind, you can always reactivate your subscription! | ||
<br /><br /> | ||
If you found that our service did not meet your needs, please reply to this email and we’ll do our best to address your feedback and concerns. | ||
`, opts.PlanName, opts.ToName, opts.EndDate.Format(dateFormat))), | ||
ButtonText: "Billing Settings", | ||
ButtonLink: opts.BillingURL, | ||
|
@@ -498,7 +496,7 @@ func (c *Client) SendSubscriptionEnded(opts *SubscriptionEnded) error { | |
ToName: opts.ToName, | ||
Subject: fmt.Sprintf("Subscription for %s has now ended. Org is hibernated", opts.OrgName), | ||
PreButton: template.HTML(fmt.Sprintf(` | ||
Your cancelled subscription for %s has and its projects are now <a href="https://docs.rilldata.com/home/FAQ#what-is-project-hibernation">hibernating</a>. We hope you enjoyed using Rill Cloud during your time with us. | ||
Your cancelled subscription for <b>%s</b> has and its projects are now <a href="https://docs.rilldata.com/home/FAQ#what-is-project-hibernation">hibernating</a>. We hope you enjoyed using Rill Cloud during your time with us. | ||
<br /><br /> | ||
If you’d like to reactive your subscription and regain access, you can easily do so at any time by renewing your subscription from here: | ||
`, opts.OrgName)), | ||
|
@@ -527,7 +525,7 @@ func (c *Client) SendTrialStarted(opts *TrialStarted) error { | |
Subject: fmt.Sprintf("A 30-day free trial for %s has started", opts.OrgName), | ||
FrontendURL: opts.FrontendURL, | ||
WelcomeText: template.HTML(fmt.Sprintf(` | ||
You now have access to Rill Cloud until %s to explore all features. Let us know if you need any help along the way! | ||
You now have access to Rill Cloud until <b>%s</b> to explore all features. Let us know if you need any help along the way! | ||
`, opts.TrialEndDate.Format(dateFormat))), | ||
}) | ||
} | ||
|
@@ -548,7 +546,7 @@ func (c *Client) SendTrialEndingSoon(opts *TrialEndingSoon) error { | |
ToName: opts.ToName, | ||
Subject: fmt.Sprintf("Your Rill Cloud trial for %s is expiring in %d days", opts.OrgName, days), | ||
PreButton: template.HTML(fmt.Sprintf(` | ||
Your trial for %s ends on %s. | ||
Your trial for <b>%s</b> ends on <b>%s</b>. | ||
<br /><br /> | ||
How's Rill working out for you? Have you checked out our newest features highlighted in our <a href="https://docs.rilldata.com/notes">Release Notes</a>? | ||
<br /><br /> | ||
|
@@ -577,7 +575,7 @@ func (c *Client) SendTrialEnded(opts *TrialEnded) error { | |
PreButton: template.HTML(fmt.Sprintf(` | ||
Hi %s, | ||
<br /><br /> | ||
Your Rill Cloud trial has now expired. %s will be hibernated on %s. We hope you’ve enjoyed using our software. If you’d like to keep using Rill Cloud, upgrade to our Team Plan! | ||
Your Rill Cloud trial has now expired. <b>%s</b> will be hibernated on <b>%s</b>. We hope you’ve enjoyed using our software. If you’d like to keep using Rill Cloud, upgrade to our Team Plan! | ||
`, opts.ToName, opts.OrgName, opts.GracePeriodEndDate.Format(dateFormat))), | ||
ButtonText: "Upgrade to Team Plan", | ||
ButtonLink: opts.UpgradeURL, | ||
|
@@ -598,7 +596,7 @@ func (c *Client) SendTrialGracePeriodEnded(opts *TrialGracePeriodEnded) error { | |
ToName: opts.ToName, | ||
Subject: fmt.Sprintf("Trial plan grace period for %s has ended. Org is now hibernated", opts.OrgName), | ||
PreButton: template.HTML(fmt.Sprintf(` | ||
%s and its projects are now <a href="https://docs.rilldata.com/home/FAQ#what-is-project-hibernation">hibernating</a>. | ||
<b>%s</b> and its projects are now <a href="https://docs.rilldata.com/home/FAQ#what-is-project-hibernation">hibernating</a>. | ||
<br /><br /> | ||
Reactivate your org by upgrading to the Team Plan today! | ||
`, opts.OrgName)), | ||
|
@@ -624,7 +622,7 @@ func (c *Client) SendTrialExtended(opts *TrialExtended) error { | |
ToEmail: opts.ToEmail, | ||
ToName: opts.ToName, | ||
Subject: fmt.Sprintf("Your trial for %s has been extended", opts.OrgName), | ||
Body: template.HTML(fmt.Sprintf("Your trial for %q has been extended until %s.", opts.OrgName, opts.TrialEndDate.Format(dateFormat))), | ||
Body: template.HTML(fmt.Sprintf("Your trial for <b>%q</b> has been extended until %s.", opts.OrgName, opts.TrialEndDate.Format(dateFormat))), | ||
}) | ||
} | ||
|
||
|
@@ -639,8 +637,8 @@ func (c *Client) SendPlanUpdate(opts *PlanUpdate) error { | |
return c.SendInformational(&Informational{ | ||
ToEmail: opts.ToEmail, | ||
ToName: opts.ToName, | ||
Subject: fmt.Sprintf("Your plan for %s has been updated to %s", opts.OrgName, opts.PlanName), | ||
Body: template.HTML(fmt.Sprintf("%q has been updated to %q.", opts.OrgName, opts.PlanName)), | ||
Subject: fmt.Sprintf("Your plan for %s has been updated to %s plan", opts.OrgName, opts.PlanName), | ||
Body: template.HTML(fmt.Sprintf("<b>%q</b> has been updated to %q plan.", opts.OrgName, opts.PlanName)), | ||
}) | ||
} | ||
|
||
|
@@ -655,8 +653,8 @@ func (c *Client) SendSubscriptionRenewed(opts *SubscriptionRenewed) error { | |
return c.SendInformational(&Informational{ | ||
ToEmail: opts.ToEmail, | ||
ToName: opts.ToName, | ||
Subject: fmt.Sprintf("Your %s subscription for %s has been renewed", opts.PlanName, opts.OrgName), | ||
Body: template.HTML(fmt.Sprintf("Your subscription for %q has been renewed for %q.", opts.OrgName, opts.PlanName)), | ||
Subject: fmt.Sprintf("Your %s subscription for %s plan has been renewed", opts.PlanName, opts.OrgName), | ||
Body: template.HTML(fmt.Sprintf("Your subscription for <b>%q</b> has been renewed for %q plan.", opts.OrgName, opts.PlanName)), | ||
}) | ||
} | ||
|
||
|
@@ -674,12 +672,12 @@ func (c *Client) SendTeamPlanStarted(opts *TeamPlan) error { | |
return c.SendWelcomeToTeam(&Welcome{ | ||
ToEmail: opts.ToEmail, | ||
ToName: opts.ToName, | ||
Subject: fmt.Sprintf("Welcome to the %s", opts.PlanName), | ||
Subject: fmt.Sprintf("Welcome to the %s plan", opts.PlanName), | ||
FrontendURL: opts.FrontendURL, | ||
WelcomeText: template.HTML(fmt.Sprintf(` | ||
Thank you! You’ve successfully upgraded %s to the %s. | ||
Thank you! You’ve successfully upgraded %s to the %s plan. | ||
<br /><br /> | ||
Your next billing cycle starts on %s. | ||
Your next billing cycle starts on <b>%s</b>. | ||
`, opts.OrgName, opts.PlanName, opts.BillingStartDate.Format(dateFormat))), | ||
}) | ||
} | ||
|
@@ -689,10 +687,10 @@ func (c *Client) SendTeamPlanRenewal(opts *TeamPlan) error { | |
return c.SendWelcomeToTeam(&Welcome{ | ||
ToEmail: opts.ToEmail, | ||
ToName: opts.ToName, | ||
Subject: fmt.Sprintf("Your %s subscription for %s has been renewed", opts.PlanName, opts.OrgName), | ||
Subject: fmt.Sprintf("Your %s plan subscription for %s has been renewed", opts.PlanName, opts.OrgName), | ||
FrontendURL: opts.FrontendURL, | ||
WelcomeText: template.HTML(fmt.Sprintf(` | ||
Thank you! You’ve successfully renewed to the %s for %s. | ||
Thank you! You’ve successfully renewed to the <b>%s</b> for %s plan. | ||
<br /><br /> | ||
Your next billing cycle starts on %s. | ||
`, opts.OrgName, opts.PlanName, opts.BillingStartDate.Format(dateFormat))), | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
3f7e202
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎉 Published on https://ui.rilldata.in as production
🚀 Deployed on https://674568e3bae46dc728a0175a--rill-ui-dev.netlify.app