Unicommerce Integration

Unicommerce is an aggregator for many e-commerce platforms that allows you to sell items through many supported marketplaces and process orders via unified interface called Uniware. Learn more about Unicommerce at https://unicommerce.com/

TechoERP Integration with Unicommerce

TechoERP offers a full 2-way integration with Unicommerce using Uniware's REST APIs. This integration is provided using Frappe App officially supported by Frappe team. Broadly this integration covers:

  1. Item catalogue syncing with Unicommerce (2-way)
  2. Inventory Syncing (1-way from TechoERP to Unicommerce)
  3. New Sales Order syncing
  4. Sales Invoice syncing OR Sales Invoice generation (Any one option should be used)

App Installation

  1. If you are hosting your TechoERP site on Frappe Cloud, you can quickly install the app by going to your site Dashboard. The app is available in Frappe Cloud Marketplace
  2. If your site is hosted by Frappe, please raise a support ticket to get the app installed on your site.
  3. If you are self-hosting TechoERP you can install the app using Frappe bench. Refer bench documentation for installing Frappe Apps. bench get-app ecommerce_integrations --branch main

Authentication and basic setup

unicommerce auth setup

  1. Once the app is installed go to the "Unicommerce Settings" page.
  2. Click on the "Enable Unicommerce" checkbox.
  3. Enter your Unicommerce site, username, and password.
  4. Client ID is added by default, however if you've configured a separate client ID, you need to update it here. If you're unsure about your client ID, please get in touch with the Unicommerce support team.
  5. Click "Save" this will initiate the process of authenticating with Unicommerce and setting up custom fields for integration.
  6. Once this setup is finished you'll see access/refresh tokens in the "Authentication Details" section. This implies that authentication was successful and you can now start working on further setup.

If authentication fails:

  1. Please recheck entered details.
  2. Your server might be getting blocklisted by the firewall. Get in touch with the Unicommerce support team to get your server's IP whitelisted.

Item Sync

This integration checks for newly created items and uploads them to Unicommerce on hourly basis. To enable this feature you need to setup following:

  1. Go to "Unicommerce Settings" and enable "Upload new items to Unicommerce".
  2. Set a Default Item Group. This is only used as a fallback in case the item group is missing.
  3. While creating a new item check "Sync with Unicommerce" checkbox, to upload that item to Unicommerce.
  4. This checkbox can also be enabled on existing items.

Unicommerce SKU code is immutable, hence you should not change Item Code after creation.

In order to correctly sync item groups with product categories you need to map all item groups to their respective product categories on Unicommerce.

To map and item group to a product category:

  1. First find product category code on Unicommerce.
  2. Open related Item Group on TechoERP and update Unicommerce product category code there.

    Unicommerce product category ERPNext item group

Item sync field mapping is as follows:

TechoERP fieldUnicommerce FieldComments

Item Code

SKU

Unicommerce SKU restrictions apply

Item Name

Item Name

Description

Description

Weight per unit

Weight

Only if set in Grams.

Shelf life in days

Shelf life

HSN Code

HSN Code

Image

Image

Unicommerce item length

Length

Unicommerce item width

Width

Unicommerce item height

Height

Disabled

Enabled

(opposite is mapped)

EAN barcode

EAN

UPC Barcode

UPC-A

Item group

Product category

Inventory Sync

Once Item sync is set up Inventory Sync can be enabled. The integration checks for changes in TechoERP inventory and pushes them to Unicommerce on configured intervals. TechoERP inventory levels are considered source of truth by the integration and Unicommerce inventory levels are overwritten by TechoERP's inventory values.

  1. Go to "Unicommerce Settings" and scroll down to the "Inventory Sync" section.
  2. Check "Enable inventory Sync"
  3. Configure the sync frequency. Recommended frequency is 15 to 60 minutes.
  4. In Warehouse, the mapping table adds all the facility codes you have in Unicommerce and maps them with TechoERP warehouse.
  5. Check the "Enabled" checkbox for all facilities you want to enable.
  6. Save the settings.

Note: All inventory is pushed to the "DEFAULT" shelf. Unicommerce Shelves are not supported by this integration, make sure you only have one shelf on Unicommerce called "DEFAULT" to ensure the correctness of inventory sync.

Note: Unicommerce, like other e-commerce integrations, does not support fractional inventory.

Sales Order Processing - Workflow

The following is the workflow for processing orders on TechoERP. You can alternatively also process orders on Unicommerce and only sync finished orders.

Unicommerce workflow

Sales Order Sync - Channel(s) Setup

Unicommerce Integration supports receiving and processing from multiple channel. To allow this, setup for Sales Order sync also has to be done in multiple stages.

Defaults for Sales Order Sync

default sales order sync

  1. Go to "Unicommerce Settings".
  2. Scroll to "Sales Order Sync" setting section.
  3. Setup order sync frequency. 30 to 60 minutes is recommended frequency.
  4. Setup default customer group and naming series for documents.

Channel specific Sales Order sync configurations

channel specific sales order sync

To allow for flexible configuration for each channel you need to create "Unicommerce Channel" document for each channel you want to enable for Sales Order sync.

  1. Go to "Unicommerce Channel" from searchbar or from Unicommerce settings page.
  2. Click "Add Unicommerce Channel"
  3. Fill in required details like channel ID, default warehouse, company, accounts and naming series.
  4. If Shipping for this channel is handled by marketplace then click "Shipping Handled by marketplace" or uncheck it.
  5. After fully configuring the channel click on "Enabled" checkbox.

New Sales Order created in Unicommerce will now start syncing with TechoERP. During this process, if the new item is encountered then it's created in TechoERP using information from Unicommerce. Relevant information about Unicommerce TechoERP is mapped to TechoERP fields, additional information can be found in the "Unicommerce Details" section on Sales Order.

Sales Invoice Sync

Sales Invoice syncing can be handled in one of two ways. Please select the appropriate option as per your needs.

If you want to process orders and invoices on Unicommerce and only sync fully processed orders in TechoERP then enable "Only Sync Completed Orders" in Unicommerce settings.

2. Processing invoice on TechoERP

If you want to process orders from TechoERP only then you need to generate an invoice from TechoERP's Sales Order.

In order to generate an invoice, go to synced Unicommerce Sales Order, click on "Unicommerce > generate invoice". This will create a Sales Invoice and deduc the stock too.

generate invoice button

Shipment Manifest

If you're processing orders on TechoERP using method #2 described above then you need to create and submit a shipping manifest to let Unicommerce know you've shipped the orders.

Pre-requisites are to setup the following doctypes, you can find code on Unicommerce manifest creation page: 1. Create Unicommerce Shipping Provider 2. Create Unicommerce Shipping Method

Unicommerce shipment manifest

Process of creating manifest:

  1. Once you're ready to dispatch the packages to the shipping provider, you should create "Unicommerce Shipment Manifest" document. Go to search bar > "Unicommerce Shipping Manifest" > + Add
  2. Select Channel ID, Shipping Method, and Shipping provider code.
  3. Now you can either use "Get Package" button to fetch open orders based on selected filters or use "Scan AWB Code" field to scan AWB of packages. Both will auto-populate the remaining details after saving.
  4. Once you're sure that all details look correct, save and submit the document.
  5. Upon submitting the manifest, same manifest is created and closed on Unicommerce and shipments are marked as "Dispatched". Unicommerce Manifest PDF is also fetched and attached to TechoERP manifest document.

Status Updates

Unicommerce details section

Status of Unicommerce is periodically updated inTechoERP, you can see the current status in the "Unicommerce details" section.

Order Cancellations

When an order gets canceled on Unicommerce, the integration syncs this action and cancels the order on TechoERP as well. Partially canceled orders are also synced and canceled items are removed from the TechoERP Sales Order. Both full and partial cancellations are synced on an hourly basis and right before generating invoices.

Order returns

When the return is created on Unicommerce, the integration syncs this action and creates a Draft Credit Note in TechoERP.

Both return cases are handled by integration:

  1. RTO (return to origin) When a shipment is returned to origin, shipment status changes, and a Credit Note (with Update Stock) is created in TechoERP. Credit Note will be full return.
  2. CIR (Customer Initiated Return) When a customer returns a shipment, it is reflected on Unicommerce's Sales Order section. A full or Partial Credit note is created depending upon the nature of customer initiated return.

You can view all returns by going to "Sales Invoice" and filtering by "Is Return" set to Yes. Return tracking code is also captured on Credit Note.

While creating returns, the return warehouse is picked based on configured Return Warehouse in Unicommerce settings. If it's not set, original warehouse will be used.

Unicommerce return warehouse