Download the PHP package deployecommerce/module-order-status-audit-log without Composer

On this page you can find all versions of the php package deployecommerce/module-order-status-audit-log. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package module-order-status-audit-log

Order Status Audit Log

Records every order status change: what it was, what it became, who changed it, from where, when, and from which IP address.

"Why is this order marked complete?" is a question Magento cannot answer. The status history shows that a status changed, sometimes, and never says who did it or how. This module answers it.

What an entry looks like

In the order's Comments History:

One line, fixed field order, parseable with explode(' ') then explode('=', $part, 2). Values are stripped of whitespace, = and |, so nothing in a username or a header can forge an extra field.

Field
from / to The status either side. [new] when the order had just been placed
by admin:jbloggs#7, integration:Warehouse#3, customer:#42, guest, [cron:cron:run], [cli:sales:clean:quotes], [system]
area adminhtml, frontend, webapi_rest, crontab, …
ip The request address, or [system] under cron and the CLI
at ISO 8601, UTC
trigger The entry point: a controller action, POST:/V1/order/12/ship, or a console command
state Only when the order's state also moved
cause magento when Magento rewrote the status itself; placement for an order's first status

cause=magento

Magento moves orders between statuses on its own — processing becomes complete once nothing is left to ship, and either becomes closed once nothing is left to refund. No caller asks for it.

Without distinguishing those, an audit trail tells you an admin set the order to complete when in fact they created a shipment and Magento drew the conclusion. That is the difference between an audit trail and a list of events.

Where entries are written

Two places, independently switchable, both on by default.

Order comments. Where admins already look. They are written inside the order's own database transaction, so an entry exists if and only if the change it describes was committed — and rolls back with a failed save. They are not visible to customers.

A table of its own, deployecommerce_order_status_audit. This is the copy that lasts:

Turning the table off leaves you with a trail that lasts exactly as long as the orders do. That is a reasonable choice for operational debugging and a poor one for compliance.

Configuration

Stores → Configuration → Advanced → Order Status Audit Log

Setting Default
Enabled Yes
Write To Order Comments Yes
Write To Audit Table Yes The copy that survives order deletion
Record Order Placement Yes One extra entry per order. Without it the trail cannot show what an order started as
Statuses To Ignore — Changes into or out of these are skipped, for a status some integration flips constantly

Default scope only. Audit policy is a property of the installation; scoping it per store view would leave you unable to say which policy applied when an entry was written.

What is and is not recorded

Detection is handled by deployecommerce/module-order-status-transition, which covers everything that goes through a normal order save: the admin, mass actions, the API, shipments, invoices, refunds, payment webhooks, cron, the CLI, and the statuses Magento assigns itself.

It cannot see writes that bypass the model layer — raw SQL, and bulk import tools that write straight to the sales_order table. No event-based approach can. See that module's README.

Two related caveats worth knowing:

Record both, and treat them as a strong account of what happened rather than as evidence.

Adding your own destination

A sink is a destination. It can filter, so it does not have to care about every change — here, one that alerts a channel when a parcel comes back:

Sinks run inside the order's save transaction. They may attach data to the order, which Magento persists as part of the same save; they must never call save() on it. A sink that throws is logged and skipped — losing one destination must not cost you the others, and an audit log must never break a checkout.

Development

Tests are written with Pest and need no Magento installation. Magento's own packages come from the public Mage-OS mirror, so no Adobe credentials are required.

Licence

MIT. See LICENSE.md.


All versions of module-order-status-audit-log with dependencies

PHP Build Version
Package Version
Requires php Version ~8.2.0||~8.3.0||~8.4.0
deployecommerce/module-order-status-transition Version ~1.0.0
magento/framework Version >=103.0.0 <104
magento/module-backend Version >=102.0.0 <103
magento/module-config Version >=101.2.0 <102
magento/module-sales Version >=103.0.0 <104
magento/module-store Version >=101.1.0 <102
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package deployecommerce/module-order-status-audit-log contains the following files

Loading the files please wait ...