{% extends "controlpanel/base.html" %} {% load lucide ui %} {% block heading %}Billing{% endblock heading %} {% block actions %} {% endblock actions %} {% block panel %} {% url 'controlpanel:tier_create' as tier_create_url %} {% include "controlpanel/_modal_form.html" with modal_id="tier_create_modal" title="New plan" form=tier_form action_url=tier_create_url submit_label="Create plan" submit_icon="plus" %}
A rate change only takes effect as of a certain date. Periods already billed keep the amount they were issued at.
| Plan | Clubs | Prices | |
|---|---|---|---|
|
{{ tier.name }}
{% if not tier.is_active %}Retired{% endif %}
{% if tier.description %}
{{ tier.description }} {% endif %}
|
{{ tier.club_count }} |
{% for price in tier.prices.all %}
€{{ price.amount|floatformat:2 }}
from {{ price.active_from|date:"j M Y" }}
{% if price.active_from > today %}Scheduled{% endif %}
{% empty %}
No price — cannot be billed
{% endfor %}
|
|
| No plans yet. | |||
| Club | Period | Owed | Status | |
|---|---|---|---|---|
|
{{ due.club.name }}
{{ due.tier.name }}
|
{{ due.period_start|date:"j M Y" }} — {{ due.period_end|date:"j M Y" }}
Grace to {{ due.grace_until|date:"j M Y" }}
|
€{{ due.balance|floatformat:2 }} | {% if due.grace_until < today %} {% lucide "triangle-alert" size=12 %} Overdue {% elif due.period_end < today %} {% lucide "hourglass" size=12 %} In grace {% else %} {{ due.get_status_display }} {% endif %} | {% lucide "file-down" size=14 %} Download invoice |
| Nothing outstanding. | ||||