Channel Based Complete Packaging without Shipment Command
Actors
- Akinon Order Management System (OMS)
- Omnitron
Domain Objects
- Packaging Order
- OMS Command (Packaging Order Command)
- Informing Omnitron
- Barcode Validation
Process
- The OMS application copies orders from the Akinon Omnitron Application to itself to prepare delivery/distribution plans, generate packaging orders and transfer them to operation points. If there is shipping information available for the order, the order is recorded in the OMS with this shipping information.
- The products in the order are distributed to the Packaging Orders by running the rules in the distribution scenarios designated by the brand.
- Packaging Orders are transferred to the Akinon Instore App or the brand"s integrated software. (Packaging Orders Webhooks)
- Packaging orders assigned to the Store/Warehouse commence in the Waiting status.
- Orders placed on Marketplaces are transferred to the OMS with shipping information. While the OMS runs the packaging process, it receives the shipping information of the package from the order. No new shipping record is created.
- For the completion of the packaging process, the ChannelBasedCompletePackagingCommand is run, and:
- Entered barcode numbers are validated.
- Packages and package items are moved to the Packed status.
- Reservations of the packaged products at the current location are deleted.
- If the Update Invoice Information (remote_bill_fulfillment_call) setting was entered for this command, an invoice update request is sent to the address specified with this setting.
- The states of the order items in this package are updated and moved to the Preparing status.
Command Parameters and Prerequisites
For each packaging order:
- Packaging Order ID (integer – dynamic for each order)
- Command Transition ID (integer – constant – prepared and reported during OMS installation)
- slug (string - unique for each state transition - Either slug or Command Transition ID is required)
- Barcode (dict – product barcode information)
- User (string – ID of the user running the command)
- Token (string – requests sent to Omnitron are used for authentication)
If this command is run before a packaging order is moved to the Waiting, Preparing or Ready for Packaging status, a validation error will be triggered.
Regardless of scenarios, the process of lowering and raising quotas continues, the quota amount continues to increase and decrease on a location basis. However, for these alterations to impact planning, the scenario rules must have the SELECT_BY_QUOTA value.
The maximum quota value specifies how many packages can be created from the respective location. The quota value is a user-unspecified parameter used for monitoring the maximum quota value and performing increase or decrease operations.
max_quota - quota = available_quota
If the available_quota value is 0, no packages can be created. (To encounter this scenario, the SELECT_BY_QUOTA value must be chosen in the scenario rules.)
For packages with a status below 400 and in the cancellation_waiting state, the quota value increases by 1. (During this stage, when the package is in the waiting state, the quota amount is considered to increase by 1.)
Upon packaging a package, the quota value decreases by 1. Consequently, the available_quota increases, enhancing the likelihood of packaging from the respective location.
In the event of a package cancellation, the quota amount decreases by 1 in a similar way.
POST
Channel Based Complete Packaging without Shipment
Path: https://{customer_api_url}-oms.akinon.net/api/v1/oms/packages/{package_id}/command/
- Package ID: XXX
- ID of the order Item in the package: ZZ
- ID of the requesting user: YYY
- Transition ID: NNN (set after OMS installation)
- Slug: SSS (Unique Slug Value)
Request Body
{
"transition": NNN,
"slug": SSS,
"package": XXX,
"barcode": {
"order_item": ZZ,
"barcode": "86813XXX56286"
},
"token": "8bda3f25093XXXXXXXXXX52d34343059012131",
"user": YYY
}
Successful Response
Status Code: 204 No Content