{% extends "ui/templates/base/layout.html" %} {% block content %}
{% set _uiux_partner_role_text = (current_user_roles or [])|join('|')|lower %} {% if 'partner' in _uiux_partner_role_text %} {% include "ui/templates/components/partner_navigation_v2.html" %} {% endif %}

Bulk Subscription Setup

Choose one enabled firm service, create the subscription for multiple clients, and optionally generate period-wise engagements.

Back
{% if error_message %}
{{ error_message }}
{% endif %} {% if subscriptions_created or subscriptions_reused or engagements_created or engagements_skipped %}
Subscriptions Created
{{ subscriptions_created }}
Existing Reused
{{ subscriptions_reused }}
Engagements Created
{{ engagements_created }}
Duplicates Skipped
{{ engagements_skipped }}
{% endif %}

Due-date rules, recurrence, assurance type, and task workflow are taken from the selected service setup.

Required only when generating one monthly or quarterly engagement.

The subscription branch is derived from the selected Partner and active branch scope.

Defaults to the Engagement Partner when left blank.

Optional for non-assurance services. The selected Review Partner becomes the subscription default.

Engagement Generation

0 clients selected
{% for client in clients %} {% set search_text = ((client.client_code or '') ~ ' ' ~ (client.client_name or '') ~ ' ' ~ (client.trade_name or '') ~ ' ' ~ (client.pan or '') ~ ' ' ~ (client.gstin or '') ~ ' ' ~ (client.client_type or ''))|lower %} {% else %} {% endfor %}
Code Client PAN / GSTIN Type Current Partner
{{ client.client_code }}
{{ client.client_name }}
{% if client.trade_name %}
{{ client.trade_name }}
{% endif %}
PAN: {{ client.pan or '-' }}
GSTIN: {{ client.gstin or '-' }}
{{ client.client_type or '-' }} {{ client_partner_names.get(client.partner_id, '-') if client.partner_id else '-' }}
No clients are available for subscription.

Existing client-service subscriptions are reused. Existing engagements for the same client, service, financial year and period are skipped automatically.

Cancel
{% endblock %}