2018-07-03 16:42:53 +02:00
{% extends "zerver/portico.html" %}
2019-10-23 07:46:34 +02:00
{% set entrypoint = "upgrade" %}
2018-03-31 04:13:44 +02:00
2022-09-06 12:04:03 +02:00
{% block title %}
< title > {{ _("Upgrade") }} | Zulip< / title >
{% endblock %}
2018-03-31 04:13:44 +02:00
{% block customhead %}
2021-04-21 00:46:14 +02:00
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" / >
2018-03-31 04:13:44 +02:00
{% endblock %}
{% block content %}
2018-11-29 08:51:53 +01:00
2018-03-31 04:13:44 +02:00
< div class = "app portico-page" >
2023-05-10 21:11:45 +02:00
< div class = "billing-upgrade-page new-style" >
2018-07-03 16:42:53 +02:00
< div class = "hero small-hero" > < / div >
< div class = "page-content" >
< div class = "main" >
2023-11-10 10:59:28 +01:00
< h1 > Upgrade {{ realm.name }} to {{ plan }}< / h1 >
2020-05-14 18:21:23 +02:00
{% if free_trial_days %}
2020-05-22 15:30:39 +02:00
< div id = "free-trial-alert-message" class = "alert alert-info" >
2020-05-27 02:58:46 +02:00
Upgrade now to start your {{ free_trial_days }} day free trial
of Zulip Cloud Standard!
2020-04-23 20:10:15 +02:00
< / div >
{% endif %}
2021-12-27 21:25:38 +01:00
{% if is_demo_organization %}
< div class = "demo-organization-warning" >
Demo organizations cannot be directly upgraded to a paid plan. Please start by
< a href = "/help/demo-organizations#convert-a-demo-organization-to-a-permanent-organization" >
converting your demo organization
< / a >
to a permanent organization.
< / div >
{% endif %}
2018-07-13 13:33:05 +02:00
{% if error_message %}
2018-11-18 10:18:14 +01:00
< div class = "alert alert-danger" id = "upgrade-error-message-box" >
2018-07-13 13:33:05 +02:00
{{ error_message }}
< / div >
{% endif %}
2018-11-18 10:18:14 +01:00
2021-04-21 00:46:14 +02:00
< input type = "hidden" name = "csrfmiddlewaretoken" value = "{{ csrf_token }}" / >
2023-11-10 11:08:06 +01:00
< div >
< div id = "autopay" >
2018-12-07 18:43:22 +01:00
< div id = "autopay-input-section" >
2021-08-29 15:33:29 +02:00
< form id = "autopay-form" >
2021-04-21 00:46:14 +02:00
< input type = "hidden" name = "seat_count" value = "{{ seat_count }}" / >
< input type = "hidden" name = "signed_seat_count" value = "{{ signed_seat_count }}" / >
< input type = "hidden" name = "salt" value = "{{ salt }}" / >
< input type = "hidden" name = "billing_modality" value = "charge_automatically" / >
2021-08-29 15:33:29 +02:00
{% if onboarding %}
< input type = "hidden" name = "onboarding" value = "true" / >
{% endif %}
2020-05-27 02:58:46 +02:00
{% if onboarding and free_trial_days %}
2021-12-02 00:51:16 +01:00
< p > < b > Not ready to start your trial?< / b > < a href = "/" > Continue with the Zulip Cloud Free plan< / a > .< / p >
2021-04-21 00:46:14 +02:00
< hr / >
2022-02-05 08:29:54 +01:00
< h2 > Zulip Cloud Standard free trial< / h2 >
2020-04-23 20:10:15 +02:00
{% endif %}
2023-11-10 12:50:17 +01:00
< div class = "payment-schedule input-box" >
2018-12-21 18:44:24 +01:00
< div id = "autopay-error" class = "alert alert-danger" > < / div >
2020-05-27 02:58:46 +02:00
{% if free_trial_days %}
< p >
You won't be charged during the free trial. You can also downgrade to
Zulip Cloud Free, our forever free plan, at any time.
< / p >
{% endif %}
2023-11-10 12:50:17 +01:00
< select name = "payment-schedule" id = "payment-schedule-select" >
< option value = "monthly" id = "autopay_monthly_price" > < / option >
< option value = "annually" id = "autopay_annual_price_per_month" > < / option >
< / select >
< label for = "payment-schedule-select" > Payment schedule< / label >
2018-12-07 18:43:22 +01:00
< / div >
2018-12-21 18:44:24 +01:00
2023-11-10 10:59:28 +01:00
{% if not manual_license_management %}
2018-12-21 18:44:24 +01:00
< div id = "license-automatic-section" >
< p >
2020-05-14 18:21:23 +02:00
{% if free_trial_days %}
2020-04-23 20:10:15 +02:00
After the Free Trial, you’ ll be charged
< b > $< span id = "charged_amount" > < / span > < / b > for < b > {{ seat_count }}< / b >
2021-04-21 00:46:14 +02:00
users (or more if you later add more users).< br / >
2020-05-27 02:58:46 +02:00
2020-04-23 20:10:15 +02:00
We'll automatically charge you for additional licenses as users
are added, and remove licenses not in use at the end of each billing
period.
{% else %}
2023-11-10 10:59:28 +01:00
Your subscription will renew automatically. Your bill will vary based on the number
of active users in your organization. You can also
< a href = "/upgrade/?manual_license_management=true" > purchase a fixed number of licenses< / a > instead. See
< a target = "_blank" href = "https://zulip.com/help/zulip-cloud-billing" > here< / a > for details.
2020-04-23 20:10:15 +02:00
{% endif %}
2018-12-21 18:44:24 +01:00
< / p >
2021-04-21 00:46:14 +02:00
< input type = "hidden" name = "licenses" id = "automatic_license_count" value = "{{ seat_count }}" / >
2018-12-21 18:44:24 +01:00
< / div >
2023-11-10 10:59:28 +01:00
{% else %}
2018-12-21 18:44:24 +01:00
< div id = "license-manual-section" >
< p >
2020-05-14 18:21:23 +02:00
{% if free_trial_days %}
2021-04-21 00:46:14 +02:00
Enter the number of users you would like to pay for after the Free Trial.< br / >
2020-04-23 20:10:15 +02:00
You'll need to manually add licenses to add or invite
additional users.
{% else %}
2023-11-10 10:59:28 +01:00
Your subscription will renew automatically. You will be able to manage the number of licenses on
your organization's billing page. You can also
< a href = "/upgrade/" > choose automatic license management< / a > instead. See
< a href = "https://zulip.com/help/zulip-cloud-billing" > here< / a > for details.
2020-04-23 20:10:15 +02:00
{% endif %}
2018-12-21 18:44:24 +01:00
< / p >
2023-04-10 21:48:52 +02:00
< h4 > Number of licenses {% if not exempt_from_license_number_check %}(minimum {{ seat_count }}){% endif %}< / h4 >
< input type = "number" name = "licenses" { % if not exempt_from_license_number_check % } min = "{{ seat_count }}" { % endif % } autocomplete = "off" id = "manual_license_count" required / > < br / >
2018-12-21 18:44:24 +01:00
< / div >
2023-11-10 10:59:28 +01:00
{% endif %}
2021-12-27 21:25:38 +01:00
<!-- Disabled buttons do not fire any events, so we need a container div that isn't disabled for tippyjs to work -->
< div class = "upgrade-button-container" { % if is_demo_organization % } data-tippy-content = "{% trans %}Convert demo organization before upgrading.{% endtrans %}" { % endif % } >
< button id = "add-card-button" class = "stripe-button-el invoice-button" { % if is_demo_organization % } disabled { % endif % } >
< span id = "add-card-button-span" >
2023-10-04 20:38:39 +02:00
Pay now
2021-12-27 21:25:38 +01:00
< / span >
< / button >
< / div >
2018-12-07 18:43:22 +01:00
< / form >
< / div >
< div id = "autopay-loading" >
< div class = "zulip-loading-logo" >
2020-07-16 04:59:13 +02:00
< svg xmlns = "http://www.w3.org/2000/svg" viewBox = "0 0 773.12 773.12" >
< circle cx = "386.56" cy = "386.56" r = "386.56" / >
< path d = "M566.66 527.25c0 33.03-24.23 60.05-53.84 60.05H260.29c-29.61 0-53.84-27.02-53.84-60.05 0-20.22 9.09-38.2 22.93-49.09l134.37-120c2.5-2.14 5.74 1.31 3.94 4.19l-49.29 98.69c-1.38 2.76.41 6.16 3.25 6.16h191.18c29.61 0 53.83 27.03 53.83 60.05zm0-281.39c0 20.22-9.09 38.2-22.93 49.09l-134.37 120c-2.5 2.14-5.74-1.31-3.94-4.19l49.29-98.69c1.38-2.76-.41-6.16-3.25-6.16H260.29c-29.61 0-53.84-27.02-53.84-60.05s24.23-60.05 53.84-60.05h252.54c29.61 0 53.83 27.02 53.83 60.05z" / >
2018-12-07 18:43:22 +01:00
< / svg >
2018-07-03 16:42:53 +02:00
< / div >
2018-12-07 18:43:22 +01:00
< div id = "autopay_loading_indicator" > < / div >
< / div >
2021-08-29 15:33:29 +02:00
< div id = "autopay-success" class = "alert alert-info" >
Redirecting to Stripe Checkout...
2018-12-07 18:43:22 +01:00
< / div >
2018-11-18 10:18:14 +01:00
< / div >
2018-12-07 18:43:22 +01:00
2023-11-10 11:08:06 +01:00
< div id = "invoice" >
2018-12-07 18:43:22 +01:00
< div id = "invoice-error" class = "alert alert-danger" > < / div >
< div id = "invoice-input-section" >
< form id = "invoice-form" method = "post" >
2020-05-27 02:58:46 +02:00
{% if onboarding and free_trial_days %}
2021-12-02 00:51:16 +01:00
< p > < b > Not ready to start your trial?< / b > < a href = "/" > Continue with the Zulip Cloud Free plan< / a > .< / p >
2021-04-21 00:46:14 +02:00
< hr / >
2022-02-05 08:29:54 +01:00
< h2 > Zulip Cloud Standard free trial< / h2 >
2020-05-27 02:58:46 +02:00
{% endif %}
2021-04-21 00:46:14 +02:00
< input type = "hidden" name = "signed_seat_count" value = "{{ signed_seat_count }}" / >
< input type = "hidden" name = "salt" value = "{{ salt }}" / >
< input type = "hidden" name = "billing_modality" value = "send_invoice" / >
2018-12-07 18:43:22 +01:00
< div class = "payment-schedule" >
< h3 > {{ _("Payment schedule") }}< / h3 >
< label >
2018-12-12 23:23:15 +01:00
< input type = "radio" name = "schedule" value = "annual" checked / >
2018-12-07 18:43:22 +01:00
< div class = "box" >
< div class = "schedule-time annually" > {{ _("Pay annually") }}< / div >
< div class = "schedule-amount" >
$< span id = "invoice_annual_price_per_month" > < / span > /user/month
< div class = "schedule-amount-2" >
($< span id = "invoice_annual_price" > < / span > /user/year)
< / div >
2018-11-18 10:18:14 +01:00
< / div >
< / div >
2018-12-07 18:43:22 +01:00
< / label >
< / div >
< p >
2020-05-14 18:21:23 +02:00
{% if free_trial_days %}
2021-04-21 00:46:14 +02:00
Enter the number of users you would like to pay for.< br / >
2020-05-27 02:58:46 +02:00
We'll email you an invoice after the free trial.
2020-04-23 20:10:15 +02:00
Invoices can be paid by ACH transfer or credit card.
{% else %}
2021-04-21 00:46:14 +02:00
Enter the number of users you would like to pay for.< br / >
2018-12-15 09:33:25 +01:00
We'll email you an invoice in 1-2 hours. Invoices can be paid by
ACH transfer or credit card.
2020-04-23 20:10:15 +02:00
{% endif %}
2018-12-07 18:43:22 +01:00
< / p >
2019-01-29 15:30:19 +01:00
< h4 > Number of licenses (minimum {{ min_invoiced_licenses }})< / h4 >
2018-12-24 11:34:47 +01:00
< input type = "number" min = "{{ min_invoiced_licenses }}" autocomplete = "off"
2021-11-20 13:25:41 +01:00
id="invoiced_licenses" name="licenses" required/>< br / >
2021-12-27 21:25:38 +01:00
<!-- Disabled buttons do not fire any events, so we need a container div that isn't disabled for tippyjs to work -->
< div class = "upgrade-button-container" { % if is_demo_organization % } data-tippy-content = "{% trans %}Convert demo organization before upgrading.{% endtrans %}" { % endif % } >
< button type = "submit" id = "invoice-button" class = "stripe-button-el invoice-button" { % if is_demo_organization % } disabled { % endif % } >
Buy Standard
< / button >
< / div >
2018-12-07 18:43:22 +01:00
< / form >
< / div >
< div id = "invoice-loading" >
< div class = "zulip-loading-logo" >
2020-07-16 04:59:13 +02:00
< svg xmlns = "http://www.w3.org/2000/svg" viewBox = "0 0 773.12 773.12" >
< circle cx = "386.56" cy = "386.56" r = "386.56" / >
< path d = "M566.66 527.25c0 33.03-24.23 60.05-53.84 60.05H260.29c-29.61 0-53.84-27.02-53.84-60.05 0-20.22 9.09-38.2 22.93-49.09l134.37-120c2.5-2.14 5.74 1.31 3.94 4.19l-49.29 98.69c-1.38 2.76.41 6.16 3.25 6.16h191.18c29.61 0 53.83 27.03 53.83 60.05zm0-281.39c0 20.22-9.09 38.2-22.93 49.09l-134.37 120c-2.5 2.14-5.74-1.31-3.94-4.19l49.29-98.69c1.38-2.76-.41-6.16-3.25-6.16H260.29c-29.61 0-53.84-27.02-53.84-60.05s24.23-60.05 53.84-60.05h252.54c29.61 0 53.83 27.02 53.83 60.05z" / >
2018-12-07 18:43:22 +01:00
< / svg >
2018-07-03 16:42:53 +02:00
< / div >
2018-12-07 18:43:22 +01:00
< div id = "invoice_loading_indicator" > < / div >
< / div >
< div id = "invoice-success" class = "alert alert-success" >
Upgrade complete! The page will now reload.
< / div >
2018-07-03 16:42:53 +02:00
< / div >
2018-11-18 10:18:14 +01:00
< / div >
< div class = "support-link" >
2018-10-23 21:06:15 +02:00
< p >
2023-11-10 10:59:28 +01:00
To pay by invoice or for any other questions, contact < a href = "mailto:sales@zulip.com" > sales@zulip.com< / a > .
2018-10-23 21:06:15 +02:00
< / p >
2018-11-18 10:18:14 +01:00
< / div >
2018-03-31 04:13:44 +02:00
< / div >
2018-07-03 16:42:53 +02:00
< / div >
2018-03-31 04:13:44 +02:00
< / div >
< / div >
{% endblock %}