Settings

Theme

Robust Usage Reporting with Stripe

4 points by hekike 2 years ago · 2 comments · 1 min read

Reader

I recently looked into how to build out robust usage reporting with Stripe. This comes basically from the set of challenges around:

- Workaround Stripe API Rate Limits

- Handle billing cycles and minimize usage drift into the next billing cycle

- Deliver usage exactly once to avoid under and over-billing

- Stripe requires to report usage on Subscription Items

You can read the full blog post here:

https://openmeter.io/blog/how-to-report-usage-to-stripe

I'm curious about what people do to build our usage reporting. Do you use message queues? Workflow management software like Temporal? Simple CRON job?

hbcondo714 2 years ago

I ran into Stripe's API rate limits while developing a revenue forecasting app[1]. The metrics calculated requires retrieving two months of charges using Stripe's API, which can result in long loading times because only 100 records can be retrieved at a time[1] and because:

...listing charges (or most resources) can be quite slow as you need to render many objects. The Charge API especially is quite a large object to render and paginate through.[3]

Overall, getting 100 records from Stripe's charges endpoint takes 3 to 4 seconds

[1] https://github.com/hbcondo/revenut-app

[2] https://stripe.com/docs/api/pagination#pagination-limit

[3] https://github.com/stripe/stripe-dotnet/issues/2284#issuecom...

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection