Release 2.1 (Tech 1.114): Smarter Billing, Flexible Subscriptions, and Stronger Revenue Control
- merhan5
- 1 hour ago
- 7 min read

🟢 **Platform: Card Charging via Customer Balance
We’ve introduced support for charging an existing saved card and applying the funds directly to a customer’s balance, eliminating the need for external charging workflows and manual reconciliation.
✅ What’s New:
Admins can now charge an existing saved card on a customer’s account directly from Pelcro.
The charged amount is automatically applied to the customer’s balance.
The balance can then be used for:
Settling future invoices
Offsetting outstanding charges
🎯 Impact:
This enhancement simplifies high-volume billing operations—reducing errors, saving time, and improving operational efficiency.

🟢 Platform: Apply Customer Balance to Existing Invoices
We’ve introduced the ability to apply an existing customer balance to open or past-due invoices, eliminating manual workarounds and improving billing flexibility.
✅ What’s New:
Admins can now apply a customer’s available balance to an existing open or past-due invoice, even if the invoice was generated before the balance existed.
A new “Apply Customer Balance” action is available in the invoice actions dropdown on the customer's profile page.
Selecting the action opens a modal where admins can:
Enter the amount to apply
View validation feedback in real time
The applied amount:
Cannot exceed the invoice’s outstanding balance
Can be partial or full
💳 Settlement Scenarios:
Full coverage:
If the balance fully covers the invoice, the invoice is marked paid with no further action.
Partial coverage:
If the balance covers only part of the invoice, the remaining amount can be settled by:
Charging the customer’s default card (Charge Customer), or
Recording an offline payment (Mark as Paid).
🔒 Scope & Constraints:
Available only for accounts using Pelcro’s billing engine.
🎯 Impact:
This enhancement streamlines invoice settlement workflows, reduces operational overhead, and gives admins more control over how customer balances are used—without canceling subscriptions or recreating invoices.

🟢 Platform: Scheduled Subscription Start Dates with Flexible Billing Control
We’ve introduced support for scheduled subscription start dates, giving sales and operations teams the flexibility to create subscriptions in advance while controlling when access, billing, and renewals actually begin.
This enhancement removes the need for manual follow-ups and aligns subscription activation with customer-requested start dates.
✅ What’s New: Subscription Creation & Scheduling
A new “Scheduled start date” field is available when creating a subscription.
When set:
The subscription is created in a new scheduled status.
No access or entitlements are granted before the scheduled date.
The subscription phase does not begin until the scheduled start date.
Billing & Invoicing Options
A new Billing behavior option is available during subscription creation:
Bill immediately (advance invoicing)
Maintains current behavior.
Invoice is generated and paid at creation time.
Bill starting on the selected date
No invoice is generated at creation.
Billing, invoicing, and renewal cycles are anchored to the scheduled start date.
Subscriptions remain in scheduled status until the anchor date.
Enables consistent invoice timing (e.g., same weekday billing).
Fully compatible with AI plans.
Activation & Revenue Recognition
On the scheduled start date:
The subscription automatically transitions from scheduled → active.
The first subscription phase begins.
Revenue recognition starts on the scheduled date.
Renewal cycles are anchored to the scheduled start date.
🔒 Scope & Constraints:
Available only for accounts using Pelcro’s billing engine.
🎯 Impact
This update enables precise control over subscription timing, improves customer experience, and ensures billing, access, and revenue recognition all begin exactly when intended—without operational workarounds.

🟢 Platform: Introduce Restarting Expired Memberships
We’ve introduced support for restarting expired membership subscriptions, allowing admins to restore memberships without losing member associations or continuity.
✅ What’s New:
Admins can now restart expired membership subscriptions directly from the platform.
Restarting follows the standard membership creation flow while retaining all existing members:
Active members remain active
Pending members remain pending
Admins can choose to restart using the same membership plan or select a new plan.
Upon successful payment:
The membership subscription transitions to active
An invoice is generated on the restart date
Members retain access without logging out or being re-invited
🔒 Important Notes:
This feature does not impact past accounting periods or historical revenue.
Memberships that were canceled immediately are excluded, as their revenue has already been fully recognized.
🔒 Scope & Constraints:
Available only for accounts using Pelcro’s billing engine.
🎯 Impact:
This enhancement removes manual rework, reduces the risk of errors, and ensures a smooth, continuous membership experience for both administrators and members.

🟢 Platform: Payment-Based Revenue Recognition & Subscription Activation (Product-Level Control)
We’ve introduced a new product-level revenue recognition strategy that allows revenue, subscription access, and renewal periods to be anchored to successful payment, rather than invoice creation. This provides more accurate financial reporting and ensures subscriber access aligns with when payment actually succeeds.
✅ What’s New: Product-Level Configuration
A new dropdown is available on the Product creation page:
Revenue recognition strategy
Invoice-creation-based (default) — preserves existing behavior.
Invoice-payment-based — enables payment-anchored behavior.
All existing products default to Invoice-creation-based, ensuring no behavior change unless explicitly updated.
Invoice-Payment-Based Behavior
When enabled for a product:
Revenue Eligibility
Revenue is recognized only for invoices with status = paid.
Unpaid or failed invoices are automatically excluded from revenue reports.
No revenue is backdated to periods before payment.
Revenue Timing
Revenue recognition begins on the invoice payment date (paid_at).
invoice.current_period_start is set to invoice.paid_at.
invoice.current_period_end is set to invoice.paid_at + plan_interval.
Subscription Activation & Access
Subscriptions remain incomplete/pending until the first payment succeeds.
Subscription start and renewal dates are aligned to the payment date.
Subscription period dates mirror the invoice period.
Invoice-Creation-Based Behavior (Unchanged)
Revenue recognition, subscription activation, and access continue to behave exactly as before.
Unpaid or failed invoices follow existing logic.
No impact to current products or subscriptions.
🔒 Scope & Constraints:
Available only for accounts using Pelcro’s billing engine.
🎯 Impact
This enhancement gives finance teams precise control over revenue timing and eligibility while ensuring subscriber access and renewal periods accurately reflect when payment actually occurs—eliminating revenue overstatement and misaligned subscription terms.

🟢 Platform: Invoice Notes Support During Subscription Create & Renew
We’ve added support for adding invoice notes upfront during subscription creation and renewal, ensuring invoices are generated with the correct context from the start—without manual follow-up or post-generation edits.
✅ What’s New:
An Invoice Notes (Description) field is now available during:
Subscription Creation
Subscription Renewal
The field appears in the invoice section for manual renewal plans, similar to existing PO behavior.
When an invoice is generated:
The entered notes are automatically included on the invoice.
Notes display correctly on the invoice PDF.
Invoice notes remain editable after invoice generation.
The invoice footer now supports up to 5,000 characters for notes.
🔒 Scope & Constraints:
Available only for accounts using Pelcro’s billing engine.
The Invoice Notes field is shown only for manual renewal plans.
🎯 Impact:
This enhancement improves invoice accuracy, reduces manual adjustments, and ensures critical billing context is captured at the point of subscription creation or renewal.

🟢 Platform: Hash-Based URL Triggers
We’ve improved Pelcro’s compatibility with CMS-driven sites by adding support for hash-based URL triggers (#view=) alongside existing query-parameter triggers.
✅ What’s New:
Pelcro authentication and modal views can now be triggered using:
Query parameters (existing): ?view=...
Hash fragments (new): #view=...
All existing URL trigger parameters are supported via hash fragments, including:
view, token, gift_code, email, plan_id, and more.
URL parsing logic has been enhanced to read from both:
window.location.hash
🖥️ Scope & Availability:
Available in the latest Pelcro Default UI (React Elements).
Both query-based and hash-based URLs work interchangeably.
This change does not introduce breaking behavior for existing integrations.
🎯 Impact:
This update reduces routing conflicts on CMS platforms, improves reliability of Pelcro modal triggers, and simplifies integrations for sites where query parameters are restricted or intercepted.
🟢 Platform: Plan Entitlement Added to Recognized Revenue Export
We’ve enhanced the Recognized Revenue Accounting Export to improve clarity and reduce manual reconciliation for finance and operations teams.
✅ What’s New:
A new plan.entitlement column has been added to the recognized revenue export.
The field is populated for all recognized revenue lines across reporting periods.
The new column is appended to the end of the export, ensuring backward compatibility.
🎯 Impact:
This update makes it easier to distinguish revenue tied to different subscription offerings directly from the export, eliminating the need for manual analysis and improving accuracy in financial reporting and reconciliation workflows.
🟢 Platform: Seat Usage & Last Active Added to Exports and Lists
We’ve improved visibility into seat-based subscriptions and member activity by extending exports and list views with key utilization and engagement data.
✅ What’s New:
Seat usage fields are now included in:
Subscription exports
Membership exports
Newly added columns:
seat_capacity
seats_used
seats_available
All seat-related columns are appended to the end of exports for backward compatibility.
Last Active enhancements:
Added as a toggleable column in:
Customers list
Subscriptions list
Memberships list
Included in the Membership export.
🎯 Impact:
These updates make it easier to audit seat usage, monitor utilization, and understand customer and member activity—reducing manual work and improving reporting accuracy across seat-based subscriptions.
🟢 Platform: New Subscription-Driven Member Update Webhook
We’ve introduced a new webhook event to ensure member data stays accurate and in sync when subscription lifecycle changes occur—eliminating gaps that can lead to stale records or missed marketing automations.
✅ What’s New:
A new webhook event: member.subscription_updated
This event is emitted whenever a member is affected by a subscription lifecycle change, including:
Subscription renewals or updates (plan changes, phase updates)
Subscription cancellations (immediate or at period end)
Subscription expirations
The webhook is triggered only after the subscription state is fully persisted, ensuring data accuracy.
📦 Webhook Payload Includes:
Member ID
Member first name and last name
Subscription details (e.g., Subscription ID, status, relevant metadata)
Event type
Timestamp
🎯 Impact:
This enhancement ensures downstream systems—such as marketing and engagement platforms—receive reliable, subscription-driven member updates, enabling accurate renewals, expirations, and lifecycle-based automation without manual intervention.
