Skip to content
Coritan Docs

Choose or change your account plan

Order the Pro or Business plan, move between them, or cancel and return to Free, and see what each choice costs and leaves over the limits first.

View as Markdown

In the dashboard

Order Pro or Business when your account needs more than the Free plan gives, move between them as your needs change, or cancel to return to Free. Each choice opens a dialog that says what you pay now, what the plan then renews at, and what the new plan would leave above its limits, before anything changes. You choose on the Plan tab of Plan and billing, or through the API (With the API).

  1. In the dashboard, select Plan and billing, then the Plan tab.
  2. Under Plans, choose the billing period with Monthly or Yearly. The prices change to match.
  3. Select the button under the plan you want, such as Choose Pro….
  4. Check the dialog. Due now is what you pay today, and Then gives the price the plan renews at and the date. During a trial, the dialog also says that the trial ends when the plan starts. When the plan would leave some of what you have above its limits, the dialog lists it under a title such as Over the Pro plan's limits.
  5. To use a promo code, type it in Promo code and select Apply. The field then says what the code gives, such as SPRING25 applied: 25% off the first 3 invoices., and the dialog adds a line such as Promo code SPRING25 with what it takes off this invoice. Due now is lower by that amount. A code the order cannot use shows the reason under the field (Use a promo code).
  6. Select the button at the bottom of the dialog, such as Order Pro.

When your credit covers the invoice, the dashboard says Your Pro plan starts in a moment. Otherwise the dialog to pay the invoice opens, as on the Invoices tab (Pay an invoice), and the plan starts once the invoice is paid. If you close that dialog, Waiting for payment stays at the top of the Plan tab, with Pay invoice, until you pay.

An order for another plan cancels the waiting order and its invoice, and places the new one.

With a paid plan, choose another one on the same tab.

  1. Under Plans, select the button under the plan you want, such as Choose Business…. The list starts on your plan's billing period. Your plan keeps that period, so choose on it.
  2. Check the dialog, titled such as Change to Business:
    • Moving up, Due now is the difference for the rest of this billing period, and Then gives the new price from your renewal date.
    • Moving down, Added to your account credit shows the unused difference, less the days Coritan keeps back.
    • The dialog lists anything the new plan would leave above its limits.
  3. Select the button at the bottom, such as Change to Business.

A move up raises an invoice for the difference. The new plan applies at once when your credit covers it, and otherwise once you pay the invoice, in the dialog that opens or with Pay invoice on the tab. A move down applies at once. When the move applies, the dashboard says Your plan is now Business., and a move down adds how much went to your credit. Your renewal date stays the same, and the plan renews at the new plan's price from then (How the switch is billed). Moving to another plan also withdraws a cancellation.

  1. On the Plan tab, select Cancel plan… on the Your plan card, or Move to Free… under Free in Plans.
  2. Check the dialog, Cancel your plan. Ends on gives the date the plan ends, and the dialog lists what the Free plan would leave above its limits.
  3. Select Cancel plan. To leave the plan as it is, select Keep my plan.

The plan stays until the end of the period you paid for, and then the account moves to Free. Until then, the Your plan card has the Cancelling badge and says when the plan ends, such as Ends on Oct 12, 2026. The account then moves to the Free plan.

To keep the plan, select its keep button on the Your plan card before it ends, such as Keep Pro…. The dialog gives the price the plan renews at and the date. Select Keep Pro, and the plan renews as before.

Warning

When a plan ends, the account gets the Free plan's limits, and your included services move to the Free plan's size. Coritan deletes nothing, but you cannot add more of what is above the limits. A trial you end cannot be restarted.

A trial ends from the same tab, with End trial… (When the trial ends). A plan suspended for an unpaid invoice and an order you have not paid for have no cancel button in the dashboard. Pay the invoice, or cancel through the API (Cancel your plan with the API).

The Your plan card and What your account uses show the new plan once it applies, and so does Home. A change that waits for payment shows Waiting for payment at the top of the Plan tab, such as Your Pro plan starts once you pay its invoice of $12.00. or Your move to Business happens once you pay its invoice of $27.00.

In the dashboard, the dialog shows the reason under Could not price this change, Could not change your plan or Could not cancel your plan. Over the API, it is the answer's detail, with the status in the first column.

Status detail Cause
403 {"code": "plans_not_open", ...} Account plans are not open on your account yet. Cancelling works anyway.
404 The Pro plan is not on sale with yearly billing right now. The plan has no price for that billing cycle.
409 This account already has the Pro plan with monthly billing. You chose the plan and billing cycle you have.
409 Your plan is billed monthly, and an active plan cannot change to yearly billing here. Contact support and we will change it for you. An active plan keeps its billing cycle. On the Plan tab, switch Plans back to your plan's period. To change the period, contact support.
409 Your plan is due to renew. Pay its renewal invoice first, then change your plan. Less than a day of the billing period is left. Pay the renewal invoice, then move up.
409 Your Pro plan is suspended for an unpaid invoice. Pay it from the Billing page to restore the plan, then change it. Pay the invoice, or cancel the plan through the API.
409 Your plan has terms set by our sales team. Contact sales to change it. An Enterprise plan, or terms our sales team set. Write to sales@coritan.com.
409 Your Pro plan is being set up. Change it once it is active. The order is paid and the plan is starting. Try again when it is active.
409 Your Pro plan already ends on October 12, 2026. You cancelled the plan before. Keep it to withdraw the cancellation.
409 This account is on the Free plan, so there is nothing to cancel. The account has no plan, trial or order to cancel.
422 To move to the Free plan, cancel your plan instead. POST /account/plan does not take free.
422 Enterprise is sold through our sales team. Contact sales to buy it. Enterprise cannot be ordered online.
422 Choose the Pro or Business plan. plan is not plan-pro or plan-business.
422 Choose monthly or yearly billing. billing_cycle is not monthly or annually.
422 {"errors": ["A promo code can only be used on a new plan order."], "promo": "not_new_order"} A plan change takes no promo code.
422 {"errors": [...], "promo": ...} The order cannot use the promo code. The sentence in errors says why (Use a promo code).

You need an access token for the account (Access and refresh tokens). Each request names a plan: plan-pro or plan-business, or free in a preview. billing_cycle is monthly or annually. Left out, an active plan keeps its own, and a new plan is monthly.

POST /account/plan/preview changes nothing. This account is on Pro and asks what moving to Free would mean:

Shell
curl -X POST https://api.coritan.com/api/v1/account/plan/preview \
  -H "Authorization: Bearer $CORITAN_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"plan": "free"}'
JSON
{
  "plan": "free",
  "name": "Free",
  "billing_cycle": null,
  "change": "cancel",
  "due_now": 0.0,
  "discount": 0.0,
  "credit": 0.0,
  "currency": "USD",
  "renews_at": null,
  "renewal_amount": null,
  "ends_at": "2026-10-12T00:00:00+00:00",
  "over_limit": [
    {"entitlement": "websites_max", "limit": 3, "used": 5},
    {"entitlement": "mailboxes", "limit": 5, "used": 7}
  ],
  "renew_at_own_price": [
    {"entitlement": "included_floating_ips", "limit": 0, "used": 1}
  ],
  "trial": null,
  "promo": null,
  "message": "Your Pro plan stays until October 12, 2026. After that the account moves to the Free plan."
}

To see what a promo code would take off a new plan order, add promo_code to the body. A plan change and Free take no code.

change
new (an order, paid up front), upgrade (you pay the difference for the rest of this billing period now), downgrade (the plan changes now, and the unused difference goes to your credit), cancel (the account moves to Free at ends_at), renew (a plan you cancelled keeps renewing) or none.
due_now, credit
What you pay now, and what goes to your credit, in currency.
renews_at, renewal_amount
When the plan next renews, and the price it renews at.
over_limit
Each count the new plan would leave above its limit, as {entitlement, limit, used}. Coritan deletes none of it (Moving to a smaller plan).
renew_at_own_price
The floating IPs and DDoS Shield profiles your plan pays for now beyond what the new plan pays for, as {entitlement, limit, used} with entitlement included_floating_ips or included_ddos_profiles. The new plan keeps paying for the oldest. The others keep working and renew at their own price from their next renewal.
discount, promo
What the promo code takes off the first invoice, and what the code gives as {valid, code, message, reason, summary, duration, cycles}. due_now is what is left to pay, and renewal_amount is the plan's price before the code. Without a code, discount is 0 and promo is null.
trial
converts or ends when you have a trial running, and null otherwise. Either way, the trial ends when the paid plan starts.
message
All of it in a sentence or two.

Send the plan to POST /account/plan. Add promo_code to take a code's discount off the first invoice (Use a promo code):

Shell
curl -X POST https://api.coritan.com/api/v1/account/plan \
  -H "Authorization: Bearer $CORITAN_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"plan": "plan-pro", "billing_cycle": "annually"}'

Your credit did not cover this order, so it waits for payment:

JSON
{
  "service_id": 5310,
  "invoice_id": 20412,
  "status": "payment_required",
  "change": "new",
  "amount_due": 120.0,
  "message": "Pay the invoice to start your Pro plan."
}

Pay the invoice, and the plan starts once it is paid. Sending the same request again while the order waits answers with the same order. An order for another plan cancels the waiting order and its invoice, and places the new one.

With an active plan, send the other plan to the same route:

Shell
curl -X POST https://api.coritan.com/api/v1/account/plan \
  -H "Authorization: Bearer $CORITAN_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"plan": "plan-business"}'
  • Moving up raises an invoice for the difference over the rest of this billing period. The new plan applies once the invoice is paid, at once when your credit covers it.
  • Moving down applies now. The unused difference goes to your credit, less the days Coritan keeps back.
  • Your renewal date stays the same, and the plan renews at the new plan's price from then.

Sending the plan you have while it is set to end withdraws the cancellation, and the answer's status is renewing.

POST /account/plan/cancel takes an optional reason:

Shell
curl -X POST https://api.coritan.com/api/v1/account/plan/cancel \
  -H "Authorization: Bearer $CORITAN_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"reason": "Moving to another provider"}'
  • A paid plan stays until the end of the period you paid for, and then the account moves to Free. To keep the plan, choose it again with POST /account/plan before then.
  • A plan suspended for an unpaid invoice ends now, and Coritan cancels the invoice.
  • A trial ends now.
  • A plan order you have not paid for is cancelled with its invoice.

Each answer has a status and a message that says what happened.

status What happened
payment_required Pay the invoice in invoice_id. amount_due is what is left to pay. The plan starts or changes once it is paid.
provisioning Your credit paid for the order, and Coritan is starting the plan.
changed The plan changed now. The message says how much went to your credit.
renewing A plan you cancelled keeps renewing.
cancelling The plan ends at ends_at, and the account moves to Free then.
ended A suspended plan ended now, and Coritan cancelled its unpaid invoice.
trial_ended Your trial ended now.
order_cancelled An order you had not paid for is cancelled, with its invoice.

GET /account/plan shows an order or change that waits for payment under pending (Read your plan).

API operations on this page

MethodPathWhat it does
POST/api/v1/account/plan/previewWhat choosing a plan would cost now, and what it would leave over the new plan's limits
POST/api/v1/account/planOrder Pro or Business, or change your plan to it
POST/api/v1/account/plan/cancelCancel your plan