Practice
Stacks
Home
About
Features
Pricing
Contact
Resources
Log in
Start Free Trial
Toggle menu
Release v1.49.0 Changelog | PracticeStacks
All Releases
Release
v1.49.0
v1.49.0
13 March 2026
Bug Fixes
replace useEffect setState with derived state for GSTIN initialization
track auto-verify by subscription ID so plan switches trigger re-verify
add safe JSON parsing and network error handling to ApiClient
improve auth and server error messages with actionable guidance
force refetch after checkout and open checkout on plan change requiring re-auth
handle UPI subscriptions by cancel+recreate when plan update fails
Features
add billing history section, GSTIN input on pricing card, and pre-fill from business settings
add switch plan CTA with confirmation dialog in current plan card
auto-verify CREATED subscriptions on page load and add dev tools for trial/sync
redesign billing page with pricing cards, monthly/yearly toggle, and comprehensive feature list
add shared error categorization handler for tool responses
add Chrome extension and MCP server to premium plan features
add BillingPeriod enum and billingPeriod field to Subscription model
add migration for billing period field
accept billingPeriod param and select monthly/yearly Razorpay plan
add change-plan API to switch between monthly/yearly via Razorpay
add dev-only subscription reset endpoint for testing
add invoices API to fetch billing history from Razorpay
add PATCH endpoint to force-end trial and set subscription active
add useChangePlan hook for switching billing period
add useInvoices hook, GSTIN support in create mutation, and gstNumber in response type
add useVerifySubscription and useDevEndTrial hooks, return status from verify
create Razorpay customer with GSTIN and save to business on subscribe
include business gstNumber in subscription GET response
pass billingPeriod to create mutation and add dev-reset hook
pass GSTIN via Razorpay customer when recreating subscription on plan change
v1.48.0
v1.50.0