When receiving webhooks, don't forget to consider race conditions. Here's an example where subscription.updated was received BEFORE subscription.created. This resulted in the customer subscription status being "incomplete" in the app after a successful checkout.
Show more