PayInspector — Payment Diagnostics for WooCommerce

Description

A declined payment often leaves you with an unclear error message. PayInspector translates available gateway and processor evidence into useful explanations directly inside your WooCommerce orders.

See what happened, review the checks your gateway provided, and choose an informed next step. When the evidence is incomplete, PayInspector says so.

  • Understand declined payments with plain-language explanations and suggested next steps.
  • See billing street and ZIP/postal verification when provided by the payment gateway/processor.
  • See CVC/CVV verification results when provided by the payment gateway/processor.
  • Review payment-attempt history, including failed attempts and successful retries.
  • View a store-wide payment health overview, separated by currency and payment environment.
  • Support major Stripe and PayPal WooCommerce gateways through four included integrations.
  • Keep diagnostics in local storage, with configurable retention and no telemetry.

PayInspector does not process payments or change payment decisions. It does not detect fraud, prevent chargebacks, guarantee a decline reason, recover revenue or promise more approvals.

Supported gateways

All four integrations are included in Free:

  • Payment Plugins for Stripe WooCommerce: tested 4.0.13; compatible range >=4.0.13,<4.1.
  • Payment Plugins for PayPal WooCommerce: tested 2.0.26; compatible range >=2.0.26,<2.1.
  • WooCommerce Stripe Payment Gateway: tested 10.9.1; compatible range >=10.9.1,<10.10.
  • WooCommerce PayPal Payments: tested 4.1.2; compatible range >=4.1.2,<4.2.

The supported scope is ordinary new card payments with immediate full capture, native Classic checkout, Checkout Blocks, order-pay and same-order retries, single-site WooCommerce, HPOS and legacy storage. Normal synchronous and asynchronous completion is included where the gateway exposes a linked response. Qualification used WordPress 7.1, WooCommerce 11.1.0 and PHP 8.4.24. WooCommerce 10.8 is the minimum runtime guard; it is not a claim that every intervening combination was tested. Later compatible patches are not individually qualified; verify upgrades on staging.

Activate only one gateway plugin per processor. Competing official and Payment Plugins integrations can alter order gateway identities; PayInspector pauses affected recording when it detects this conflict. Out-of-range gateway versions also pause recording without disabling your gateway.

Wallets, saved payment methods, alternate payment methods, WooCommerce Subscriptions, multisite, custom checkout replacements, disputes and advanced authorization/capture/refund reporting are outside this release’s supported scope. Detailed 3DS diagnostics are conditional and may be unavailable.

Read evidence with confidence

Confirmed means explicit processor evidence supports the reason. Likely means supporting checks suggest a cause. Possible means evidence is limited or contradictory. Unavailable means there is not enough detail. An approved payment stays approved even if its address or security-code check disagrees. Risk signals are not proof of fraud; seller protection is an eligibility status, not a coverage guarantee.

Privacy and storage

Diagnostic records contain payment outcomes, amounts, currency, timestamps, gateway versions, transaction references, and verification results linked to local orders. No card number, actual CVC/CVV, payment credential or customer contact detail is copied into diagnostic records. Optional raw diagnostics contain only allowlisted, sanitized fields. Unknown fields and unrecognized free text are discarded.

Raw metadata and debug logging are off by default. Retention defaults to 90 days. Expired records are hidden immediately and deleted by scheduled cleanup; cron must run for deletion to complete. WooCommerce order deletion and approved order personal-data erasure remove linked diagnostics. The WordPress personal-data exporter includes matching diagnostic evidence without payment references or amounts. Backups and downloaded reports require their own retention policies.

PayInspector makes no remote processor lookups and sends no telemetry. Your separately installed payment gateway still communicates with its provider to process payments. WordPress itself may contact WordPress.org for normal plugin updates. Diagnostics do not import earlier transactions or responses that never reached this store.

Help and safe reports

Open WooCommerce PayInspector System Status & Help for definitions, supported scope, privacy guidance and a copyable system report. Order panels provide Export Diagnostic Report. Reports are allowlisted and exclude customer/order/payment identifiers, amounts, arbitrary text, raw metadata and credentials; the order report contains up to 100 recent retained attempts and indicates truncation. Review reports before sharing. Public support forums are visible to everyone.

Operational limits

Diagnostics fail open when storage is unavailable so they do not intentionally interrupt payment processing. Official gateways own their webhook acknowledgments; a diagnostic-only write failure may leave missing evidence unless another valid observation or provider resend arrives after recovery. Actual PayPal repeat delivery was not observed during sandbox qualification, although verified delivery and independent duplicate handling were tested. The overview counts attempts rather than unique orders; captured volume is not settled revenue or a recoverable-revenue estimate.

PayInspector is an independent extension. WooCommerce® and its associated designs are trademarks of Automattic Inc. Stripe and PayPal names identify compatible third-party integrations; no affiliation or endorsement is implied.

External services

This extension relies on an existing supported gateway plugin and its configured Stripe or PayPal service. It does not open a separate processor connection, send diagnostic records to either provider, charge a card, retry a payment, or fetch missing evidence. It observes responses already received by the store through gateway hooks and WordPress’s HTTP response hook. The Stripe API URL in the adapter is used only to match a response to the gateway’s existing request; it does not initiate that request. Loading an order panel, overview or support page does not contact a processor.

Stripe

Stripe processes payments when a merchant configures and uses either supported Stripe gateway. During checkout, authentication, payment retries and gateway-managed payment operations, that gateway and Stripe’s checkout components may send payment details or tokens, billing/contact information, order amounts and currency, transaction references, and device/network information to Stripe. The exact fields and timing depend on the gateway configuration and payment flow. Stripe may return asynchronous payment events to the gateway’s webhook endpoint. This extension only observes the resulting evidence locally; it adds no request or data transmission.

Service: https://stripe.com/
Terms: https://stripe.com/legal/ssa
Privacy: https://stripe.com/privacy

PayPal

PayPal processes payments when a merchant configures and uses either supported PayPal gateway. During checkout, authentication, payment retries and gateway-managed payment operations, that gateway and PayPal’s checkout components may send payment details or tokens, billing/contact information, order amounts and currency, transaction references, and device/network information to PayPal. The exact fields and timing depend on the gateway configuration and payment flow. PayPal may return asynchronous payment events to the gateway’s webhook endpoint. This extension only observes the resulting evidence locally; it adds no request or data transmission.

Service: https://www.paypal.com/
Terms (US; select your country for local terms): https://www.paypal.com/us/legalhub/paypal/useragreement-full
Privacy (US; select your country for local policy): https://www.paypal.com/us/legalhub/paypal/privacy-full

Screenshots

Installation

  1. Back up your site and test on staging. Install WooCommerce and one supported gateway plugin per processor.
  2. Install PayInspector — Payment Diagnostics for WooCommerce in Plugins Add Plugin, then activate it.
  3. Open WooCommerce PayInspector Settings & gateways and verify recording status and gateway compatibility.
  4. Run a sandbox success, decline and retry for the payment flows you use. Review the order panel and payment history before live rollout.

For earlier manually installed builds using the payment-intelligence or payment-intelligence-for-woocommerce folder, this package uses a different directory slug. Back up, deactivate the old copy, remove its plugin files with default data retention (do not enable permanent deletion), then install the new package and activate. Do not keep both copies installed. This is a manual package migration, not an automatic directory update.

FAQ

Does PayInspector process payments?

No. It observes responses exposed by your existing gateway and explains available evidence. It never charges or retries a card.

Does it store card numbers or CVC/CVV?

No. It stores the security-code check result, such as Match or Not processed, never the code itself. Card numbers and payment credentials are excluded.

Why does a field sometimes say Unavailable?

The payment gateway/processor did not provide usable evidence in the response received by this store. Unavailable is neither a match nor a failure.

Can an approved payment still show an AVS mismatch?

Yes. Issuers and processors can approve a payment despite an address mismatch. PayInspector preserves the approved outcome and displays the separate verification signal.

Which gateways are supported?

Payment Plugins for Stripe, Payment Plugins for PayPal, WooCommerce Stripe Payment Gateway and WooCommerce PayPal Payments. See the tested versions, compatible ranges and ordinary-card scope above. Each integration is included in Free.

Does it support Apple Pay or Google Pay?

Wallets, including Apple Pay, Google Pay, Link and PayPal wallet, are outside the supported matrix. Recognizing a wallet label in a response does not mean its full lifecycle is qualified.

Does it support WooCommerce Subscriptions?

Subscription renewals and other subscription workflows are not supported in this release.

Does it make remote API calls?

PayInspector makes no remote processor API calls, performs no remote lookup while displaying diagnostics, and sends no telemetry. Your gateway’s payment requests and WordPress’s normal update checks operate separately.

What data is stored?

Local order-linked outcomes, amounts, currencies, timestamps, gateway/processor codes, payment references and available verification results. Optional raw metadata is allowlisted and redacted. See Privacy and storage above.

What happens if I uninstall it?

Deactivation stops recording and cleanup while retaining data. Default uninstall also retains diagnostic data and settings. For permanent deletion, set PAYMENT_INTELLIGENCE_DELETE_DATA to boolean true in wp-config.php before deleting the plugin, then remove the constant. This deletes this site’s diagnostic table and plugin options, not WooCommerce orders or gateway settings. Back up first; retained data no longer receives automatic cleanup while the plugin is absent.

Does it slow down checkout?

Recording adds local database work. It does not add a remote processor lookup or a store-wide analytics query to checkout. The Orders list reads only displayed orders’ diagnostics; overview queries run on the overview page. Cost depends on database performance and traffic, so verify your staging environment.

Can it change whether a payment is approved or declined?

No. The payment provider and gateway make that decision. PayInspector does not block customers, alter amounts or change order payment status.

Does it support HPOS?

Yes. It uses WooCommerce CRUD for orders and its own indexed diagnostic table. Both HPOS and legacy order storage are covered by integration tests.

Is it safe to use on a live store?

Use the documented gateway versions and ordinary-card scope, keep backups, and test success, decline and retry on staging first. Qualification does not guarantee every site, gateway setting or future version. Unsupported flows and missing processor fields remain outside the support promise. Deactivate PayInspector if you suspect interference; payment processing remains owned by your gateway.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“PayInspector — Payment Diagnostics for WooCommerce” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

0.1.0

  • Initial Free release as PayInspector, with gateway diagnostics, local reports, scoped operational notices and documented external services.