This is a toolkit build on the integration to support the use-cases like e-invoicing , logistics booking , processing B2C/Web orders through manual uploading.
Use-case
There have been requirements from some Increff Omni clients that they want to create their B2C/Web/B2B/wholesale orders through CSV upload and process them in WMS and also want to use our Retail Micro Services (RMS) functionalities like e-invoicing or shipping labels through logistics integration. Currently it is not possible because orders uploaded in OMS Increff Omni cannot talk to RMS for e-invoicing or shipping labels. In order to use the RMS functionalities, the orders must come via Integration Layer. The integration layer is connected to RMS to get the e-invoice or shipping labels.
ChannelApp as a solution
Channel App provides similar functionality of uploading orders via CSV like we do through Increff Omni OMS UI. The orders created through Channel App will be first pushed to Integration Layer and then Integration Layer will push the orders to Increff Omni (Refer Figure 1.0)
With this approach, from Increff Omni’s perspective the order is not created internally, but has come from the external world. So for e-invoice/shipping labels, Increff Omni will ask the integration layer and integration layer will ask RMS.
So this application is useful for those clients who want to process their B2B and B2C orders manually and want to use RMS for e-invoicing/logistics/Invoicing.
Architecture Diagram
Figure 1.0
Description
Users can process the orders by manually uploading B2B / B2C orders with all the information.
The orders uploaded from the Channel App will be pushed to the integration layer, which will further push to Assure. So during the shipment call, the integration layer can connect to RMS for invoicing.
It will directly sync the order to CIMS. In case CIMS throws an error , it will synchronously throw that error to the user.
B2B/Wholesale Order Upload
The following information is required for uploading a B2B order.
Parameter Name | Data Type | Description | Mandatory |
| String | Represents code of parent order of the order | no |
| String | Unique code used by channel to identify the order | yes |
| String | Location code of warehouse from where this order will get fulfilled | yes |
| String | This represents the B2B Customer Code. | yes |
| String | This represents the customer’s location to which order should go. | yes |
| String | This is either PASS/FAIL. The Qc Status must be the same for all items of a single order. | yes |
| COD/NCOD | If the order payment is Cash on Delivery, use COD. NCOD for all other types. The Payment Type must be the same for all items of a single order. | yes |
| Integer | The number of hours under which the order has to be processed | yes |
| String | SKU code of order item | yes |
| Integer | Quantity of the sku | yes |
| Double | This is the selling price of the sku per unit. | yes |
We can upload multiple orders at the same time as well using CSV upload.
Figure 1.1
B2B Order Upload Screen
B2C/Web Order Upload Parameters
For Uploading B2C/Web order, following information is required.
Parameter Name | Data Type | Description | Mandatory |
| String | Represents code of parent order of the order | no |
| String | Unique code used by channel to identify the order | yes |
| String | Location code of warehouse from where this order will get fulfilled | yes |
| PASS / FAIL | If the item delivered should be Qc Pass or Fail | yes |
| COD/NCOD | If the order payment is Cash on Delivery, use COD. NCOD for all other types | yes |
| Integer | The number of hours under which the order has to be processed | yes |
| String | SKU code of order item | yes |
| Integer | Quantity of the sku | yes |
| Double | This is the selling price of the sku per unit. | yes |
| String | Name of customer | no |
| String | 1st line of customer’s address | no |
| String | 2nd line of customer’s address | no |
| String | 3rd line of customer’s address | no |
| String | City of customer | no |
| String | State of customer | no |
| String | ZIP/Pin code of customer | no |
| String | Country of customer | no |
| String | Email of customer | no |
| String | Phone Number of customer | no |
We can upload multiple orders at the same time as well using CSV upload.
Figure 1.2
B2C Order Upload Screen
Constraints
This app will not do routing for the orders uploaded. The user uploading the orders will have to give the warehouse location code.
There won’t be any functionality of uploading AWB numbers / Shipping label / Invoice in case it’s generated outside of the RMS system.
This app will not have any inventory knowledge and will not maintain inventory on its own side which implies that the app will not check the inventory , it will directly take the order.
Integration layer will have the configuration of creating the E-Invoicing / Invoicing / E-way bill / Shipping label.