The plugin is filter-driven end to end. Everything below is verified in source — all 76 filters the plugin fires are listed here, plus every action; file references point into includes/. Return values must match the type of the default — filters are applied with (int), (string), (bool) or (float) casts as noted.

The ship payload chain — fshipping_ship_payload

The centerpiece. Applied to the instant-mode ship request (array $payload, WC_Order $order, array $shipping) at HTTP/Shipment.php:808; return the modified payload array.

Guards & checkout flow

Quota

Rates

Units

Ship payload weight floors (freight services)

FedEx Express Freight package services reject line weights below a service minimum; the plugin clamps each package line before sending (HTTP/Shipment.php:918-984).

International / trade

Open Ship (advanced mode)

Session start (HTTP/OpenShip.php:2366-2404, :671-720, :847, :1054, :246-286): Create error handling (HTTP/OpenShip.php:623-631, :1054): Packages (HTTP/OpenShip.php:1376-1406, :1458, :2145-2333; OpenShip/Draft.php:219, :797-829): Validation & special services (OpenShip/OpenShipPushValidator.php:29-209, HTTP/OpenShip.php:1828-1905; OpenShip/PackageLineExtras.php:130; Admin/OpenShipPackageExtrasMarkup.php:179): Confirm & tracking (HTTP/OpenShip.php:2062-2086; OpenShip/Draft.php:501): Diagnostics (HTTP/OpenShip.php:435-436, :1988, :2023-2030, :2096, :2160). Note: the underlying debug-log writers are no-ops in this build — see Logging.

Other FedEx clients

Actions

WooCommerce core hooks the plugin uses

Not extension points, but relevant when debugging: woocommerce_shipping_methods (registers fshipping_custom), woocommerce_cart_shipping_packages at priority 99 (tags every package with fshipping_config_ver so a settings save forces one recalculation), update_option_fshipping_options (bumps fshipping_rates_config_version), wc_order_statuses (adds the two advanced-mode statuses), map_meta_cap (shipment deletion guard).

Logging

Where each hook’s output lands, and the WP_DEBUG gates.

Architecture

The classes behind these hooks and when they load.