Order Workflow
Introduction
The "Order-Workflow" extension for the "CHILIConnector for Magento 2.x" supports simple order approval workflows. Workflows can be started for various reasons, e.g. based on customers of different customergroups or customer roles, based on different payment methods, based on a given order amount etc.
If a workflow is active, the order needs to be approved by the approver first, before a further processing of it is possible. The people involved are notified by email when a workflow is started or the status is updated later. In addition, the people involved can view the processing status at any time in the workflow list in their user account.
Module
extension-name: enobis/module-order-workflow
Latest stable version
version: 1.6.2Install & Update
First you need to add our private repo to your composer.json of your magento installation:
composer config repositories.enobis-your-reponame composer https://satis.enobis.de/customers/your-reponame/
Important: All repos are secured by an ip-protection or an user-authentication. Access Credentials are provided by us!
To install the CHILIconnector-extension use composer via ssh:
composer require enobis/extension-name
To update the CHILIconnector-extension use composer via ssh:
composer update enobis/extension-name
Afterwards you have to complete your Magento2.x installation by
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy
php bin/magento cache:clean
php bin/magento indexer:reindexChangelog
- v1.8.10 - support for customer-role module
- 1.6.3 - support for "customer-account-group-links"-extension
- 1.6.1 - 1.6.2 - small fixes
- 1.6.0 - improved selection of supervisor via separate grid (replacement of dropdown-component for faster loading experience in the customer backend)
- 1.5.0 - possibility to define a statusfilter for "My requested Orders" list
- 1.4.0 - reminder functionality for supervisor in backend and frontend
- 1.3.0 - add default supervisor system configuration
- 1.2.1 - 1.2.6 - several compatibility- and bugfixes
- 1.2.0 - compatibility with Magento 2.4.x
- 1.1.0 - 1.1.23 several bugfixes, compatibility with budget-extension, possibility to see order details for external supervisor (email-workflow) etc.
- 1.0.0 - inital release
Roadmap
- Support for multiple workflow supervisor
Prerequisites
Our extensions are not available via the magento-marketplace or packagist.org! The extensions are only available via a (private) repository!
In order to get access, a valid license-agreement is required!
If you have no access to our repositories, please contact us!
Addons
The following modules are available as addons:- "enobis/module-customerrole": Enables to start order workflow based on a certain customer-role, independently from the standard customer groups.
Support
If you need help using one of our extensions, please get in touch with us by sending us an email to support@enobis.de.
Features-Overview
Simple approval workflow functionalites
Simple workflow functionalities with two different modes. If a order workflow is started, the order will be set to a status "requested" (or any other status). This prevents the order from further processing. After the order is approved, it's status will be changed to "approved" (or any other status). If the order is rejected by the approver, the order will be canceled. The involved people are called "requestor" (end user) and "approver" / "supervisor".
If a workflow will be started or not can be configured in the workflow settings, which depend on the workflow mode.
Different workflow modes
One step workflow:
The name "one step workflow" indicates that the approval workflow is a simple approval workflow with just two steps:
- 1. step: request - the order will the set to status "requested" (or any other status you define)
- 2. step: decision - the order will be "approved or disapproved" by the supervisor. The order will be canceled and goes to the status "canceled".
The involved people will be notified about new request or status updates by the system (if activated). Otherwise the requestor and supervisor can check their workflow-list in the customer account if new requests or updates are available.
In this mode both user (requestor and supervisor) need to be customers entities (with login credentials) in Magento system.
Email workflow:
The "email workflow" is the second workflow option. It has also the steps of "requesting" and "approving" or "disapproving" an order. But the user requests his order to an email of his choice. That means, the approver doesn't need to be an existing customer entity of the Magento system - the supervisor can also be just an external email-address.
The supervisor will be notified about new requests by email. Links inside the email leads to separted (external) order information forms, which shows all necessary information to approve or disapprove the order request.
Fully integrated into the storefront of Magento
Requested orders can be managed in the order workflow list - both by the requestor and the supervisor/ supers.
Email notification of involved user
The involved persons are informed about requests and status changes by email. Supervisor emails have links to order views for reviewing the order.
Comment feature
The requestor and supervisor are able to give a comment to their request or decision.
Workflow activation configuration on different scopes
The activation of the workflows can be configured in relation to different "activation parameters". The following parameters are supported:
- payment method: The workflow will be activated, if the requestor selects a corresponding payment method.
- customer group: The workflow will be activated, if the requestor is member of a corresponding customer group.
- Release limit: The workflow is activated, if the requestors release limit is reached by the total amount of the shopping cart.
It's possible to mix the parameters!
Important: The workflow is only activated, regardless of the mode, as soon as a supervisor could be determined for the user.
Supervisor determination
- "one step workflow" - the supervisor must be an existing customer entitiy of the Magento system. It is possible to define either a default supervisor in the system configuration or a customer related supervisor. The customer supervisor has a higher priority than the system wide supervisor.
- "email workflow" - the enduser must enter a valid supervisor email in the checkout. the supervisor determination of the one step workflow is disabled!
Important: It's possible to define valid email endings for possible supervisors in the "email workflow" mode.
Features in Detail
Workflow Activation in Checkout
If an order workflow will be activated due to the activation configuration, the "workflow order comment"-field incl. the "order workflow.-activation"-message.
Bestpractices & Faq
Bestpractice "supervisor determination" of one step workflow
If an order worflow should always be activated, configure the default supervisor in the system configuration first. That ensures, that always a orderflow will be started if necessary. If you only want to start an order workflow for certain users, please ensure that the default supervisor configuration setting is configured to "NONE" and the supervisors are linked at the customer entities.
FAQ "What does an external supervisor see in the email workflow mode?"
The supervisor request notification email contains links to a special view of the order. This view ensures that the supervisor can access all necessary order information incl. the possibility to approve or reject the order. The supervisor does not need to be logged in to the magento system. Please note: The link to the order information has only a limited lifetime!
FAQ "Can i restrict valid email domains for the email workflow?"
The "email workflow"-mode supports the validation of email domains. The workflow will be started only if an email of a valid domain is entered.
Configuration-Parameter
Please note: These documentation referes to the latest module version only!
Stores->Configuration->Enobis->Order-Workflow->General
Option Type Description Scope Enabled Yes, No (Default) Enable the order workflow functionality System->Website
Active Workflow (mode) Dropdown Selection of workflow modes:
- One step workflow
- email workflow
System->Website General Enabled By Multiple Select Multiple select of possible workflow activation reasons:
- payment
- customer group
Hint: A mix (and-condition) of both is also possible!
System->Website
Multiple Select Multiple select of payment methods which should start a order workflow System->Website Multiple Select Multiple select of customer groups which should start a order workflow System->Website
Standard supervisor Dropdown List with all possible customers, which acts as the default supervisor, if there is no individual supervisor selection at customer level. System->Website
Status after Order Dropdown List of order status after the order is requested. Should be something like "requested at supervisor". Please do not use the status "canceled" and "processing". Leave empty to allow status change through payment methods. System->Website
Statusfilter for supervisor "My releaseable Orders" list Multiple Select Filters the superviosr list of my releasable orders in the customer account. Leave empty to disable filter functionality. System->Website
Statusfilter for customer "My requested Orders" list Multiple Select Filters the customer list of my requested orders in the customer account. Leave empty to disable filter functionality. System->Website
Impersonation Supervisor Order Workflow Enabled Yes, No (Default) Special Feature: Documentation is coming soon!
Important: Impersonation-Extension needed!
System->Website
Stores->Configuration->Enobis->Order-Workflow->General - Order Release Email
Option Type Description Scope Enabled Yes, No (Default) Sends a notification email the customer and supervisor.
System->Website
Order Release Email Sender Dropdown List of possible Email Sender. Sets the "from"-address of the workflow-emails
System->Storeview
Order Release Email Supervisor Info Template Dropdown Email-Template: for supervisor-approval-notification.
System->Storeview
Order Release Supervisor Direct Release Link Enabled Yes, No (Default) When enabled, provided release link can be used without login. Gives the possiblity to approve an order without login.
System->Website Order Release Supervisor Direct Release Link Expiration Period (days) String days how long the approval/release link is valid System->Website
Order Release Email Customer Template Dropdown List of templates for the customer notification emails System->Storeview
Stores->Configuration->Enobis->Order-Workflow->One Step Workflow (Deprecated - will be merged into the "General"-Tab)
Option Type Description Scope Approved Status Dropdown List of order status after the order is approved. Should be something like "approved by supervisor". Please do not use the status "canceled" since this reserved for "disapproved" orders. System->Website
Stores->Configuration->Enobis->Order-Workflow->Email Workflow
The Email-Workflow will be initiated, if the customer enters an email address of his supervisor. If the customer has an assigned user in the backend, the assigned user will be ignored.
Option Type Description Scope Activate Email Workflow Dropdown How the user can enter an email for the supervisor
- no (disables the input of a supervisor email - so the default behaviour the supervisor determination is used)
- required (user must enter a supervisor email)
- optional (user can enter a supervisor email)
System->Website
Email Ending Multiple Text Emails with endings are validated as Supervisor Emails.
E.g. @gmail.com or @enobis.de
System->Storeview
Stores->Configuration->Enobis->Order-Workflow->Reminder->Backend
Option Type Description Scope Enabled Yes, No (Default) Enables the possibility to send a reminder (manually) to the supervisor from the order view in the backend System->Storeview
Reminder Supervisor Email Sender Dropdown List of possible Email Sender. Sets the "from"-address of the workflow-emails System->Storeview
Reminder Supervisor Email Template Dropdown Email-Template: for supervisor-reminder-notification. System->Storeview
Reminder Supervisor Email Copy To String Comma-separated list of email-addresses System->Storeview
Dropdown BCC: Sends email as BCC
Separate Email: Sends email as separate Email
System->Storeview
Stores->Configuration->Enobis->Order-Workflow->Reminder->Frontend
Option Type Description Scope Enabled Yes, No (Default) Enables the possibility to send a reminder (manually) to the supervisor from the order view in the backend System->Storeview
Reminder Supervisor Email Sender Dropdown List of possible Email Sender. Sets the "from"-address of the workflow-emails System->Storeview
Reminder Supervisor Email Template Dropdown Email-Template: for supervisor-reminder-notification. System->Storeview
Reminder Supervisor Email Copy To String Comma-separated list of email-addresses System->Storeview
Dropdown BCC: Sends email as BCC
Separate Email: Sends email as separate Email
System->Storeview