Release 2.1 (Tech Release 1.114)
🟢 **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).
- If the balance covers only part of the invoice, the remaining amount can be settled by:
🔒 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.
- Revenue recognition strategy
- 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_startis set toinvoice.paid_at.invoice.current_period_endis set toinvoice.paid_at + plan_interval.
- Revenue recognition begins on the invoice payment date (
-
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=...
- Query parameters (existing):
- 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.searchwindow.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.entitlementcolumn 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_capacityseats_usedseats_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.
- Added as a toggleable column in:
🎯 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.

