What actually breaks when you sync web purchases into revenuecat or adapty and how i fixed it?

Syncing via server side calls to RevenueCat removed the timing and receipt issues.

I recommend issuing a stable external id at web checkout and pushing that id plus purchase metadata to the subscription service. The app then validates on open. This made our retention reporting trustworthy and let us analyze web vs app buyers quickly.