WooCommerce stores often already push GA4 purchase events to the dataLayer. BrainyMetrics reads those in the browser for the visitor, and receives WooCommerce webhooks for the authoritative order.
Orders with status processing or completed become sales, with line items, tax, shipping, discount, coupon and billing details. Refunded and cancelled orders are marked fully refunded, and partial refunds are read from the order. The order id is the WooCommerce order number, which is also the transaction_id most GA4 plugins push, so the browser and webhook copies merge into one order.