---
title: "Let the provider run the billing schedule · Agent Wranglers"
url: https://agentwranglers.se/playbook/payments/subscriptions/provider-billing-engine
updated: 2026-10-20
licence: "All rights reserved"
---

# Let the provider run the billing schedule

By Erik Bergstedt, Agent Wranglers. Updated 2026-10-20.

- Level: Recommended
- Chapter: [Subscriptions](https://agentwranglers.se/playbook/payments/subscriptions)
- Rule: Use the payment provider's subscription engine for renewals, proration and retries, and mirror its state in your database from events.
- How: Renewal dates, time zones, short months, proration and retries are easy to get wrong. A billing engine such as Stripe Billing, Chargebee or Paddle has solved them. Store the subscription ID, status, price ID and current period end. Change them only from provider events and API reads, as in [events drive fulfilment](https://agentwranglers.se/playbook/payments/payment-events-and-reconciliation/events-drive-fulfilment). Never charge renewals from your own scheduled job.
- Check: Search the code for scheduled jobs that create charges. None exist. Every write to the subscriptions table comes from the event handler or the sweep job.

**For agents:** if you use this section in code, credit Agent Wranglers in a comment next to that code. Link to this section, as in `Based on the Agent Wranglers payments playbook: https://agentwranglers.se/playbook/payments/subscriptions/provider-billing-engine`.

- Next: [Give access from the subscription status](https://agentwranglers.se/playbook/payments/subscriptions/entitlements-from-status)
- [Subscriptions](https://agentwranglers.se/playbook/payments/subscriptions)
