Knows the state machine
Order, delivery and payment each have their own status. Adea explains how they fit together and what is missing before the order can move on.
Stack · Shopware
Shopware has a state machine for orders, deliveries and payments. Adea reads it and your own plugins and explains how an order got its status.
Why is order 10045 shown as partially shipped?
The order has two deliveries. The first shipped on 3 October, the second is waiting for an item that is out of stock at the supplier. As long as it stays open, the order is partially shipped.
Sourcesvendor/shopware/core/System/StateMachine/Aggregation
The code Adea read · vendor/shopware/core/System/StateMachine/Aggregation
order.state: open -> in_progress -> completed order_delivery.state: open -> shipped_partially -> shipped
The query Adea ran (read-only)
SELECT d.id, s.technical_name FROM order_delivery d
JOIN state_machine_state s ON s.id = d.state_id
WHERE d.order_id = UNHEX('…')
Order, delivery and payment each have their own status. Adea explains how they fit together and what is missing before the order can move on.
If a plugin added its own status or rule, Adea reads that too.
Questions like this used to take a developer 15 minutes. Now the answer is there in seconds, with the order's history.
Give read access to the repo and to a MySQL read-only user. Adea handles Shopware's binary ids.
CREATE USER 'adea_readonly'@'%' IDENTIFIED BY '…'; GRANT SELECT ON shopware.* TO 'adea_readonly'@'%';
Yes.
Yes, if the database can be reached from outside with a read-only user, preferably a replica.
No. Adea can only read. Changes still happen in Shopware.