---
title: Plans
slug: partner_plans
summary: 'The packages you sell: what each one includes, what a customer must prove before using it, and what happens when they do not. Also covers the difference between deactivating a plan and deleting one.'
module: partner
section: features
order: 46
updated: '2026-10-08'
tags:
  - partner
  - plans
  - billing
related_forms:
  - partner_plans
---

> **Plans** are the packages you sell. A plan sets what a customer gets — how many users, how many numbers, which features — what they must prove before they can use it, and what happens if they never prove it.

## Overview

Every customer is on exactly one plan at a time, and the panel keeps a record of every plan they have been on and between which dates. That history is what answers "what were they on in August" months later, so it is kept even after a plan is renamed, withdrawn or deleted.

Open **Plans** in the partner portal to see them. You will see two kinds:

- **Your own plans**, which you can create, change and delete.
- **Shared plans**, offered by every partner. These are read-only here. Your customers can be on them and you can see exactly what they include, but only their owner can change them — and any edit would be overwritten the next time they sync.

> [!NOTE]
> Managers can read plans. Creating, changing and deleting them is limited to partner administrators.

## Syncing your plans from Odoo

If your Odoo is connected to the portal, the **Sync plans** button at the top of the Plans list reads your plans from it. The import runs in the background: the page answers straight away, and the result appears above the list once it finishes.

A sync only ever touches **your own** plans. A plan that is new in Odoo is added, a plan that changed is updated, and a plan that is no longer in Odoo is **deactivated, never deleted** — customers already on it keep it. A plan you deleted here is not brought back.

> [!NOTE]
> The button is shown only when your Odoo connection is active and complete, and only to people who can both create and change plans. If plan import has not been set up for your portal yet, the button tells you so instead of starting a sync.

## Deactivating a plan is not the same as deleting it

These two look similar and do very different things. Choosing the wrong one either strands your customers or leaves a plan on sale that you meant to withdraw.

**Deactivate** — clear the **Active** switch.

> The plan stops being offered. Nobody new can choose it, and it disappears from the plan picker. **Every customer already on it stays on it**, keeps everything it includes, and is billed exactly as before. Nothing about their service changes.

This is what you want when a package is no longer sold but the customers who bought it should keep it. It is the ordinary way to withdraw something.

**Delete** — the delete action.

> The plan is removed from the panel. It cannot be chosen, it cannot be used as a downgrade target, and it will not come back the next time your plans sync.

Deleting is refused while **any customer is currently on the plan**. Move them first, or deactivate instead. The history of customers who were *previously* on it still reads correctly, because each period keeps its own copy of the plan's name and price from the time it was in force.

> [!TIP]
> If you are unsure, deactivate. It is reversible, it never affects an existing customer, and you can still delete later once nobody is on it.

## What a customer has to prove

Two checks can be attached to a plan, independently.

**Identity documents (KYC).** Required by law before phone numbers can be issued. The customer uploads what the regulator asks for and we have them checked.

> [!WARNING]
> **If a plan includes phone numbers, identity documents are always required and the setting cannot be switched off.** This is a legal requirement, not a preference. To offer a plan without document checks, set its included numbers to zero first.

**Card check.** The customer proves they own a valid card. It is **not** a payment and nothing is charged — invoicing happens separately. Use it where you want more confidence in who is signing up.

## Deadlines, and what happens when they pass

Each check has a deadline and a reminder.

**How long they have.** If the plan comes with a free trial, the deadline is simply **the end of the trial** — the trial is the grace period. If it does not, the deadline is the number of days you set, counted from the day the plan started.

> [!IMPORTANT]
> Set the deadline days **even on a plan that offers a trial**. A customer only ever gets one free trial, across every plan. Somebody who used theirs on a different plan and then moves to this one starts with no trial at all, and it is the deadline days that apply to them. Leave the days at zero and they get no time at all.

**When reminders start.** Set how many days before the deadline the customer begins hearing about it, by email and in their panel. It cannot be longer than the shortest window the plan can produce, for the reason above — otherwise the reminder would be due before the plan began.

**What happens if the deadline passes** with the check still outstanding — one of three:

| Choice | What happens |
|---|---|
| **Stay on this plan** | Nothing changes. Use it when the checks are not essential, or where you would rather handle it yourself. |
| **Move to another plan** | The customer is moved to a plan you nominate. Pick one that needs nothing they have not already provided, or they will simply miss its deadline too. |
| **Block services** | The customer's numbers stop receiving calls. They can still sign in, see why, and fix it themselves by completing the check. |

A customer who has done everything asked and is **waiting on a review** is never penalised. The clock measures time they are responsible for, and it stops while somebody on our side holds the decision.

## Changing a plan's price

Editing the price affects **new** periods only. A customer already on the plan keeps the price recorded when their current period began, so past months keep reading correctly on their history and on any invoice already raised.

## See also

- [Customers](partner_customers.md) — where you can see which plan each customer is on.
- [Customer onboarding](partner_customer_onboarding.md) — how a customer arrives on their first plan.

```yaml fields
price_per_user:
  tab: Plan
  label: 'Price per user'
  hint: "Charged per user, per month. Zero makes this a free plan. Editing it affects new periods only, never a customer's current one."
max_users:
  tab: Included
  label: 'Maximum users'
  hint: 'How many users can be active at once. Everyone is imported either way; beyond this number they are created but cannot take calls.'
max_numbers:
  tab: Included
  label: 'Included numbers'
  hint: 'Phone numbers the plan includes. Setting this above zero makes identity documents compulsory and locks that setting on.'
numbers_are_fixed:
  tab: Included
  label: 'Fixed number count'
  hint: 'On, the customer gets exactly the included count. Off, they may choose up to it.'
is_free_trial_allowed:
  tab: 'Trial and checks'
  label: 'Offers a free trial'
  hint: 'Whether this plan comes with a trial. A customer only ever gets one trial across all plans, so somebody who has used theirs starts here with none.'
free_trial_days:
  tab: 'Trial and checks'
  label: 'Free trial days'
  hint: 'How long the trial lasts. The trial end is also the deadline for any checks this plan requires.'
kyc_required:
  tab: 'Trial and checks'
  label: 'Identity documents required'
  hint: 'The customer must provide the documents the regulator asks for. Compulsory, and locked on, whenever the plan includes phone numbers.'
kyc_deadline_days:
  tab: 'Trial and checks'
  label: 'Days to provide documents'
  hint: 'How long a customer without a trial has, counted from the day the plan starts. Set this even on a plan with a trial - somebody who already used their one trial gets no trial here.'
kyc_reminder_days_before:
  tab: 'Trial and checks'
  label: 'Start document reminders'
  hint: 'Days before the deadline that reminders begin, by email and in the panel. Cannot exceed the shortest window this plan can produce.'
card_verification_required:
  tab: 'Trial and checks'
  label: 'Card check required'
  hint: 'The customer proves they own a valid card. Nothing is charged - this is a check, not a payment.'
card_deadline_days:
  tab: 'Trial and checks'
  label: 'Days to verify a card'
  hint: 'How long a customer without a trial has, counted from the day the plan starts.'
card_reminder_days_before:
  tab: 'Trial and checks'
  label: 'Start card reminders'
  hint: 'Days before the deadline that reminders begin, by email and in the panel.'
after_deadline_action:
  tab: 'When a deadline passes'
  label: 'If a deadline passes'
  hint: 'What happens when a check is still outstanding after its deadline - stay on the plan, move to another plan, or block services. This is the KYC and card-verification deadline, counted from when the customer''s current plan period started, or from the end of their trial if they have one running. It is a separate thing from the trial itself ending. "Stay on this plan" takes no action at all when it passes: the customer keeps full service even if KYC or card verification was never completed.'
downgrade_to_plan_id:
  tab: 'When a deadline passes'
  label: 'Move to this plan'
  hint: 'Where the customer goes when the deadline passes. Required when the action is to move them. Choose a plan that needs nothing they have not already provided.'
downgrade_ceremony_days:
  tab: 'When a deadline passes'
  label: 'Notice before moving'
  hint: 'Days between telling the customer they are being moved and it happening. Zero moves them immediately.'
is_active:
  tab: Plan
  label: Active
  hint: 'Off withdraws the plan from sale. Customers already on it keep it unchanged - see the guide for how this differs from deleting.'
```
