Trial expired but I'm still in trial
Cron timing explained.
Your trial has expired according to the date but the system shows it as still active. Or vice versa.
Why this can happen
- The cron hasn't run yet today
- A timezone mismatch (your trial ends at midnight your time but the cron runs at 16:00 UTC)
- The subscription_status field is out of sync
Check the actual state
Settings → Billing → shows current status. If it says "Trialing", you're still in the trial.
Check the date
Settings → Billing → shows trial_ends_at. If it's in the past but status is still "Trialing", the cron hasn't fired yet.
Force expire (super_admin only)
Super-admin → Libraries → your library → Force expire trial. Sets the status immediately.
Force extend
Super-admin → Libraries → your library → Settings → Trial Ends → pick a future date. Status auto-reverts to "Trialing" if it was "Expired".
Cron runs daily
The trial-expiration cron runs at 16:00 UTC daily. If your trial ended at 10:00 AM in your timezone, it could take several hours for the status to flip.
Don't worry about it
The discrepancy is brief. Either the cron will run soon and update the status, or your subscription will pick up from Active when you add payment.