Gateway Fee Exporter Documentation

    Release Readiness

    Documentation for WebMe Gateway Fee Exporter.

    Status

    Ready for controlled release review.

    Confirmed

    • Plugin boot path present.
    • WooCommerce dependency notice present.
    • Admin page and admin-post handlers are capability-gated.
    • Download and preset actions use nonce checks.
    • CSV cell escaping guards formula-style spreadsheet injection for string fields.
    • Resolver-status filtering applies to preview, analysis, CSV, and manifest paths.
    • Gateway Coverage Report is available in admin analysis and manifest JSON.
    • Invalid fee/net metadata is reported as invalid_amount instead of exported as raw accounting values.
    • Admin page no longer runs full analysis on initial render.
    • Syntax checks and standalone resolver/runtime tests passed on 2026-05-17.
    • Previous security audit showed no active blocker or high findings before the launch-upgrade code changes.

    Open checks before public release

    • Run full PHPUnit suite in environment with WordPress test library and phpunit available.
    • Smoke test in wp-admin with real WooCommerce orders from each supported gateway family.
    • Verify very large exports for execution time and memory behavior on production-like stores.
    • Rerun WebMe security audit after launch-upgrade code changes.

    Known product limits

    • No uninstall routine; preset option retention behavior is undefined on uninstall.
    • No built-in pagination controls on preview table.
    • Order query uses WooCommerce pagination loop and may be slow on very large datasets.
    • Resolver support is limited to current Stripe/PayPal meta key families.
    • Paid date is exported but not available as a launch filter.
    • Unsupported gateway diagnostics report candidate key names/counts only; they do not resolve fees.

    Assumptions

    • Stores already persist fee and transaction metadata on orders.
    • Finance users have manage_woocommerce.

    Unknowns

    • Real-world compatibility across alternative Stripe/PayPal extensions beyond current key lists.
    • Behavior under HPOS-specific edge cases was not exercised in runtime tests here.
    • Full WordPress/WooCommerce PHPUnit suite was not run in this environment.