=== Report 1: Audit Sample: End-to-End Transaction Walkthrough, 2025 (written by Grace) === Engineer's note: Category A picks each sampled tenant's single largest 2025 payment (EUR-ranked) then takes the top 8 tenants, so results are spread by construction. Category B takes up to 4 fully-refunded and 4 partially-refunded payments, one per tenant (largest refund first). Category C uses NTILE(9) over payments.id as the deterministic pseudo-random split, preferring within each tile a payment with no payout_items match first (guarantees unmatched-payout rows are included whenever a tile contains one, though not a hard guarantee of >=2 overall). All money columns are left in native currency_code as requested; EUR conversion was used only internally for ranking in category A. REPORT: Audit Sample: End-to-End Transaction Walkthrough, 2025 QUESTION: For a representative sample of 2025 transactions, does the shopper payment amount, any refund, the resulting merchant payout (gross/fee/net), and the linked ledger entries all tie out consistently? order_number | merchant_name | currency_code | payment_amount | amount_refunded | net_amount | payout_item_amount | payout_item_fee_amount | payout_net_amount | ledger_debit_credit_diff | ledger_credit_total | reconciliation_flag -------------+-------------------------------+---------------+----------------+-----------------+-------------+--------------------+------------------------+-------------------+--------------------------+---------------------+-------------------- SO-100280 | OfficeHub Nordic | NOK | 340796.0000 | 0.0000 | 340796.0000 | 340796.0000 | 5112.1900 | 335683.8100 | 0.0000 | 340796.0000 | OK SO-100285 | Castell Fasteners | USD | 51558.1600 | 0.0000 | 51558.1600 | 51558.1600 | 1753.3300 | 49804.8300 | 0.0000 | 51558.1600 | OK SO-100090 | Deskline Supplies | GBP | 34463.1600 | 0.0000 | 34463.1600 | NULL | NULL | NULL | 0.0000 | 34463.1600 | PENDING PAYOUT SO-100380 | Kontor24 Bürobedarf | EUR | 31036.7400 | 0.0000 | 31036.7400 | NULL | NULL | NULL | 0.0000 | 31036.7400 | PENDING PAYOUT SO-100573 | Ballycorran Industrial Supply | EUR | 29905.1900 | 0.0000 | 29905.1900 | NULL | NULL | NULL | 0.0000 | 29905.1900 | PENDING PAYOUT SO-100355 | Midland Safety Wear | EUR | 24012.1900 | 0.0000 | 24012.1900 | 24012.1900 | 360.4300 | 23651.7600 | 0.0000 | 24012.1900 | OK #1664 | Ampfeld Elektronik | EUR | 22391.5900 | 0.0000 | 22391.5900 | 22391.5900 | 336.1200 | 22055.4700 | 0.0000 | 22391.5900 | OK SO-100118 | Hanse Industriebedarf | EUR | 14834.4900 | 0.0000 | 14834.4900 | NULL | NULL | NULL | 0.0000 | 14834.4900 | PENDING PAYOUT SO-100363 | OfficeHub Nordic | NOK | 265275.1500 | 265275.1500 | 0.0000 | 265275.1500 | 12998.4800 | 252276.6700 | 0.0000 | 530550.3000 | CHECK #1179 | Fell & Fjell | DKK | 34885.8500 | 34522.9000 | 362.9500 | 34885.8500 | 488.6500 | 34397.2000 | 0.0000 | 69408.7500 | CHECK CC-100015 | Courtside Collective | NOK | 17158.5000 | 17158.5000 | 0.0000 | 17158.5000 | 257.6300 | 16900.8700 | 0.0000 | 34317.0000 | CHECK #1727 | Ampfeld Elektronik | EUR | 16619.9900 | 16619.9900 | 0.0000 | 16619.9900 | 232.9300 | 16387.0600 | 0.0000 | 33239.9800 | CHECK SO-100835 | Ballycorran Industrial Supply | EUR | 15174.5200 | 15174.5200 | 0.0000 | 15174.5200 | 227.8700 | 14946.6500 | 0.0000 | 30349.0400 | CHECK SO-100608 | Ballycorran Industrial Supply | EUR | 9150.4400 | 8402.4600 | 747.9800 | 9150.4400 | 137.5100 | 9012.9300 | 0.0000 | 17552.9000 | CHECK SO-100307 | Midland Safety Wear | EUR | 7702.3700 | 4122.4400 | 3579.9300 | 7702.3700 | 115.7900 | 7586.5800 | 0.0000 | 11824.8100 | CHECK #1004 | Halden Boots | SEK | 6560.0000 | 4102.0000 | 2458.0000 | 6560.0000 | 98.6500 | 6461.3500 | 0.0000 | 10662.0000 | CHECK SO-100400 | OfficeHub Nordic | NOK | 17941.0500 | 0.0000 | 17941.0500 | NULL | NULL | NULL | 0.0000 | 17941.0500 | PENDING PAYOUT SO-100740 | Ballycorran Industrial Supply | EUR | 4957.5800 | 0.0000 | 4957.5800 | NULL | NULL | NULL | 0.0000 | 4957.5800 | PENDING PAYOUT SO-100233 | Castell Fasteners | USD | 752.9100 | 0.0000 | 752.9100 | NULL | NULL | NULL | 0.0000 | 805.5600 | PENDING PAYOUT SO-100519 | Ballycorran Industrial Supply | EUR | 704.9700 | 0.0000 | 704.9700 | NULL | NULL | NULL | 0.0000 | 704.9700 | PENDING PAYOUT SO-100273 | Midland Safety Wear | EUR | 240.4000 | 0.0000 | 240.4000 | NULL | NULL | NULL | 0.0000 | 240.4000 | PENDING PAYOUT SO-100357 | Castell Fasteners | USD | 92.4400 | 0.0000 | 92.4400 | NULL | NULL | NULL | 0.0000 | 92.4400 | PENDING PAYOUT SO-100084 | Polder Packaging | EUR | 88.8900 | 0.0000 | 88.8900 | NULL | NULL | NULL | 0.0000 | 88.8900 | PENDING PAYOUT SO-100266 | Castell Fasteners | USD | 57.3100 | 0.0000 | 57.3100 | NULL | NULL | NULL | 0.0000 | 57.3100 | PENDING PAYOUT #3307 | Marrowby & Vane | GBP | 20.0000 | 0.0000 | 20.0000 | NULL | NULL | NULL | 0.0000 | NULL | PENDING PAYOUT (25 rows) === Report 2: Refund Attribution Lag: Purchase Quarter vs Refund Quarter, 2025 (written by Bea) === Engineer's note: Matched each order_return to its order's earliest-captured payment to compute the quarter lag; a handful of returns before the matched payment's quarter (quarter_diff negative) are folded into 'same quarter as purchase' since no earlier bucket was specified. FX conversion uses EUR->currency_code daily rate (amount/rate), treating EUR rows as rate=1. REPORT: Refund Attribution Lag: Purchase Quarter vs Refund Quarter, 2025 QUESTION: Does the 16-40% quarterly gap between payments-based and order_returns-based refund totals come from refunds simply landing in a later quarter than the original purchase, rather than from missing or double-counted data? lag_category | return_count | refund_amount_eur | pct_of_total_2025_refund_amount | avg_lag_days ---------------------------+--------------+-------------------+---------------------------------+------------- same quarter as purchase | 2529 | 366023.32 | 78.55 | 21.1 purchase 1 quarter earlier | 786 | 93035.48 | 19.96 | 24.7 no matching payment found | 3 | 6937.12 | 1.49 | NULL (3 rows) === Report 3: Coupon Reuse Exposure: Redemptions Beyond First Use per Customer, 2025 (written by Omar) === Engineer's note: Grain is one row per coupon (coupon_id), shown by its code; since coupon codes are unique only per tenant, the same code text could in principle appear on two rows if two different merchants happen to reuse it. Rows with no repeat redemptions show 0 / null pct and sort to the bottom; the printed report footer will show the total distinct-coupon row count as usual. REPORT: Coupon Reuse Exposure: Redemptions Beyond First Use per Customer, 2025 QUESTION: Roughly how much discount euro value comes from the same customer reusing a coupon code multiple times, given no usage or per-customer limit is enforced? coupon_code | discount_kind | total_redemptions_2025 | distinct_customers_2025 | redemptions_beyond_first_use | total_discount_amount_eur | discount_amount_beyond_first_use_eur | pct_of_discount_from_repeat_use ------------+---------------+------------------------+-------------------------+------------------------------+---------------------------+--------------------------------------+-------------------------------- BF2530 | percentage | 23 | 22 | 1 | 3314.68 | 224.96 | 6.79 BF2525 | percentage | 23 | 19 | 4 | 964.81 | 195.82 | 20.3 BF2515 | percentage | 4 | 2 | 2 | 384.04 | 133.82 | 34.85 BF2530 | percentage | 16 | 14 | 2 | 651.53 | 113.29 | 17.39 BF2525 | percentage | 31 | 30 | 1 | 1135.09 | 85.97 | 7.57 BF2530 | percentage | 11 | 9 | 2 | 337.85 | 75.31 | 22.29 BF2520 | percentage | 45 | 41 | 4 | 682.36 | 57.81 | 8.47 BF2525 | percentage | 2 | 1 | 1 | 77.15 | 56.89 | 73.74 BF2530 | percentage | 8 | 6 | 2 | 105.36 | 31.93 | 30.3 BF2530 | percentage | 6 | 5 | 1 | 421.65 | 15.96 | 3.79 BF2515 | percentage | 13 | 12 | 1 | 189.91 | 13.98 | 7.36 BF2520 | percentage | 20 | 18 | 2 | 152.97 | 5.06 | 3.31 BF2530 | percentage | 4 | 3 | 1 | 38.66 | 3.36 | 8.7 BF2515 | percentage | 2 | 2 | 0 | 6.49 | NULL | NULL BF2515 | percentage | 1 | 1 | 0 | 23.66 | NULL | NULL BF2515 | percentage | 8 | 8 | 0 | 93.94 | NULL | NULL BF2515 | percentage | 1 | 1 | 0 | 23.73 | NULL | NULL BF2515 | percentage | 1 | 1 | 0 | 13.61 | NULL | NULL BF2520 | percentage | 6 | 6 | 0 | 212.02 | NULL | NULL BF2520 | percentage | 1 | 1 | 0 | 52.82 | NULL | NULL (20 rows)