Yes, it is common to see a discrepancy between the ecommerce purchase data in GA4 and the actual database record, but the usual range is around 10%.
Adblockers are a major reason for this. Depending on your audience, the percentage of users who use adblockers can significantly vary, hence blocking your tracking. For example, technical or savvy users are more likely to use adblockers, which could cause up to 50% difference in some extreme instances.
Another possible reason is issues with tracking implementation. If not done correctly, tracking can either over-report or under-report conversions.
Lastly, the GA4 interface itself is not always 100% reliable when it comes to data access. So, it’s always good to cross-check using other tools if you’re comfortable with them, like BigQuery SQL. This way, you can confirm that what you’re seeing in GA4 is truly reflective of the data. This isn’t necessarily super difficult, but like everything, it requires a bit of practice.