| 开发者 | archimidism |
|---|---|
| 更新时间 | 2026年11月4日 01:30 |
| PHP版本: | 8.1 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
Stock: 12 → 14. REST API request PUT /wc/v3/products/batch. Application password "SoftOne ERP". 14 minutes after order #23, which had changed the stock from 14 to 12. Regular price: 54 → 49. Changed directly in the database, sometime between 3:15 pm and 3:30 pm. Refund #1085 of order #1083 returned the items to stock.A source for every change, not only for orders Most logs get orders right and file everything else under "purchase" or "third-party system". Stock Alibi names each one:
update_post_meta) instead of using WooCommerce.stock_alibi_resolve_source filter, so its changes show as "SoftOne" instead of "REST API".stock_alibi_events_recorded action.stock-alibi folder to /wp-content/plugins/, and activate it.No. Stock Alibi only reads. It never changes products, orders or stock.
No noticeable difference. At checkout Stock Alibi reads the current stock of each order line before WooCommerce changes it (one small indexed query per line) and writes all the changes of the request in one query at the end. In our tests a checkout of four lines took the same time with and without the plugin; the plugin's own queries took about 2 ms.
Yes. The background check reads products in batches of 500 directly from the database: in our tests, a catalog of 60,000 products and variations was checked in about 9 seconds, in Action Scheduler. The screens were tested with a history of one million changes.
Some ERP connectors and scripts write stock and prices with SQL, which WordPress and WooCommerce never see. Every 15 minutes (adjustable, or off) Stock Alibi compares the stored values with what its history explains. A value that nothing explains, and that is still there five minutes later, is recorded as a "Direct database change", with the time window in which it happened.
Yes, with the stock_alibi_resolve_source filter:
add_filter( 'stock_alibi_resolve_source', function ( $result, $product_id, $parent_id ) { if ( 'rest' === $result['source'] && str_contains( $result['ref'], '/erp/' ) ) { $result['source'] = 'softone'; $result['ref'] = 'nightly sync'; } return $result; }, 10, 3 );
Order sources (order, cancellation, refund) are always kept, and direct database changes cannot be renamed, because nobody can know who made them.
Users who can manage WooCommerce (shop managers and administrators). The same applies to the abilities.
Yes. Stock and prices are recorded on each variation. When a variation's stock changes the stock status of its parent, the parent's change gets the same source.
The history stores the user ID with changes made by logged-in users (for example a customer whose order reduced the stock), and order numbers. It stores no names, email addresses, postal addresses or payment details. Stock Alibi adds a suggested text to Settings › Privacy, and works with Tools › Export Personal Data and Erase Personal Data: an erasure removes the user ID from the changes and keeps the stock history itself.
No. Stock Alibi makes no external requests and has no telemetry. If the site owner has set up an AI provider in WordPress (Settings › Connectors, WordPress 7.0 or newer), the product screen shows an "Explain with AI" button; only when it is clicked, WordPress sends that product's recorded changes of the last 90 days (fields, values, sources, order numbers; no user names or customer details) to that provider. Stock Alibi stores no API key.
Yes, optionally. On WordPress 6.9 or newer, the history is available as five read-only abilities for users who can manage WooCommerce. With the WordPress MCP Adapter plugin, MCP clients can use them. Nothing of this is needed to use the plugin.
It stays, unless you enable "Delete the change log and all plugin settings when the plugin is deleted" under WooCommerce › Stock Alibi › Settings. Deactivating the plugin stops recording and the background jobs, and keeps the data.