0% found this document useful (0 votes)
151 views17 pages

Magento2 Procurement Guide

The document provides an overview of the Procurement for Magento2 extension which allows users to manage suppliers, purchase orders, supply needs, and more. Key features include managing suppliers and their associated products/prices, creating purchase orders from supply needs, and tracking orders from supplier notification to reception. The document also covers installation, supplier and product association, available columns in supply needs, and the purchase order workflow.

Uploaded by

Aung Phyo Thet
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
151 views17 pages

Magento2 Procurement Guide

The document provides an overview of the Procurement for Magento2 extension which allows users to manage suppliers, purchase orders, supply needs, and more. Key features include managing suppliers and their associated products/prices, creating purchase orders from supply needs, and tracking orders from supplier notification to reception. The document also covers installation, supplier and product association, available columns in supply needs, and the purchase order workflow.

Uploaded by

Aung Phyo Thet
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

procurement_magento2

version

BoostMyShop

septembre 29, 2020


Contents
Procurement for Magento2 1
1. Overview 1
2. Installation 1
First Installation 1
Upgrade 1
Disable extension 1
3. Supplier Management 1
Suppliers 1
Product / Supplier association 2
Description 2
Association grid 2
4. Supply Needs 4
Available columns 4
Qty for backorders 4
Qty for low stock 4
Qty to receive 4
Status 4
Qty to order 5
Suppliers 5
Columns added by ERP 5
Sales history 5
Average sales per week 5
Run out 5
Create a Purchase Order from Supply needs 5
5. Purchase Orders 6
Purchase order Workflow 6
Available actions 6
Print purchase order 6
Supplier notification 6
Update product costs 7
Available tabs 7
General 7
Miscellaneous 8
Costs 8
Shipping 8
Products 8
Reception 8
Buying price / Cost Management 9
6. Supplier Payments 10
Supplier Invoices 10
Create an invoice 10
Associate a purchase order 10
Add a payment 11
Supplier Payments 11
7. Products in transit 11
99. FAQ 12
1. Magento setup:upgrade command doesn’t complete 12
2. Discontinued attribute 12
Procurement for Magento2

Procurement for Magento2


1. Overview
Procurement for Magento2 provides every tools to manage suppliers and purchase orders :

• Manage suppliers
• Manage supplier products, with buying prices, supplier sku… (supports multiple supplier for one single sku)
• Supply needs support : list products to purchase (low stock or backorders)
• Purchase order management with supplier notification and receptions to update stock

2. Installation

First Installation
To install a boostmyshop magento2 extension on your platform, process the following steps :

• Download zip archive from your boostmyshop customer account


• Upload files on your server
• Connect on your server via ssh, and run the following commands :
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy

Once everything is done, go back in Magento, select menu system > web setup wizard, then click on the component
manager button : you should see the new extension here

Upgrade
The upgrade process is exactly the same as the installation process

Disable extension
To disable an extension, select menu system > web setup wizard, then click on the component manager button Find
the extension you want to disable and select “disable” in the “Actions” column

3. Supplier Management

Suppliers
The first step is to setup the suppliers from the “suppliers” menu.
To add a new supplier :
Suppliers > Suppliers > Add New Supplier button (at the top right corner)
Most of the supplier settings are obvious, however here are some details about import fields :

• Email : very important as the system will use this email address to notify the supplier for a purchase order
• Minimum of order : displays a warning message in the purchase order if the order total doesn’t reach the
minimum value
• Carriage Free Amount :displays a warning message in the purchase order if the order total doesn’t reach the
carriage free amount
• Currency : used to initialize the PO currency (can be changed then)

1
Procurement for Magento2

• Tax rate : used to initialize the PO tax rate (can be changed then)

Note
Note : you can import suppliers from a CSV file using the Import button from the main suppliers screen.

Product / Supplier association

Description
Once suppliers are created, you can associate them to products : our extension supports multiple suppliers for one
single product.
Association products and suppliers provide several advantages :

• Apply filter by supplier in most of the screens


• Automatically fill the supplier sku and buying price when you create a new PO
• Compare supplier prices from the supply needs screen, to optimize the purchase costs
For each product / supplier association, you can define :

• Supplier sku : Your supplier SKU, displayed for example in each purchase order PDF sent.
• Buying price : Product buying price (using supplier currency).
• MOQ : Minimum quantity to order for this product.
• Primary : This supplier is the favorite one (mainly used in the DropShipping extension).

Note
If a product is associated to multiple suppliers, here are the results of setting the “Primary” option to one of them :

• The products costs defined for this supplier will be used in the Warehouse “Total value” field calculation.
• The products costs defined for this supplier will be used to calculate “Lead time” values in the Stock Helper.

Warning
If you try to set the “Primary” setting for a product/supplier association when another supplier associated to the
same product already have it set to “Yes”, it will automatically remove the “Primary” setting from the other
product/supplier association.

Association grid
Associations between products and suppliers can be set from the Product / Supplier association grid, available from
menu Embedded ERP > Suppliers Management > Product / Supplier association.
Here is how the Product / Supplier association grid looks like :

2
Procurement for Magento2

In the Product / Supplier association grid, you’ll find 1 row per product per supplier.

Note
That means if you have 10 products created in your Magento and 2 suppliers created in ERP, that the grid will
contains 20 rows (10 products x 2 suppliers = 20 “association rows”).

Let’s take above picture as example. As we can see, 2 suppliers are set in the system : “Supplier A” and “Supplier B”.

• If we look at the red framed part, we can see the assocation row between product “24-MB01” and supplier
“Supplier A”.
As we can see, the Associated column contains Yes, meaning product “24-MB01” is already
associated to “Supplier A”. That’s why we are able to define a Supplier SKU, Buying price or even a
MOQ for this association.
• If we look at the green framed part, we can see the assocation row between product SKU “24-MB01” and
supplier “Supplier B”.
As we can see, the Associated column contains No, meaning product “24-MB01” is not yet
associated to “Supplier B”. That’s why Supplier SKU, Buying price or even MOQ cannot yet be set
for this association.

Note
You can so easily filter already made assocations filtering the “Associated” column on “Yes”.
This will display all already made product(s) / supplier(s) association(s).

• To create a new association between a product and a supplier, apply filter(s) in the grid to find required product
/ supplier association row(s), then check required row(s) from the first column and select mass action
“Associate to supplier”. Then, simply click on the Submit button that just appeared to create association(s).
• To remove an existing association, apply filter(s) in the grid to find required product / supplier association
row(s), then check required row(s) from the first column and select mass action “Remove”.
Then, simply click on the Submit button that just appeared to remove association(s).

3
4. Supply Needs

Note
An “advanced” association pop-up is available for each product / supplier assocation, clicking on the pencil incon
(available from the “Action” column.
From this pop-up you can define additional informations for select association, such as Supply delay and
Shipping delay values.

Note
You can export grid data using the Export button located at the top-right corner.

4. Supply Needs
Supply needs is a key feature in the Procurement extension : it summarizes every products the system recommends
to purchase :

• Products for which you have orders to ship but no stock (backorders)
• Low stock products (stock below the notify level)
If a product fulfill one of these requirements, then it is displayed in the supply needs grid.

Available columns

Qty for backorders


This is the quantity you need to purchase to fulfill backorders.

• If you use only the procurement extension, the quantity for backorder applies for products with negative quantity
: if product stock level is -2, the quantity for backorders is 2
• If you also use Embedded ERP or the Inventory extension, the backorder quantity is equal to the quantity to
ship minus the quantity on hand for the product warehouses

Qty for low stock


This is the quantity you need to purchase to reach the “ideal” stock level

• If you use only the procurement extension, this is the difference between the current stock level and the “Notify
for quantity below” setting (available in the “advanced inventory” popup from the product view)
• If you also use Embedded ERP or the Inventory extension, the qty for low stock follow these rules :

• Applies only if the quantity available is below the warning stock level
• Then, calculate the quantity required to reach the ideal stock level

Qty to receive
This is the quantity expected from purchase with status “Expected” : orders with another status are not considered.
Suggested qty to order
This is the SUM of the quantity needed for backorder, plus the quantity needed for low stock, minus the quantity to
receive

Status
This is the status of the supply need :

4
4. Supply Needs

• Backorders : you must order this product because there are backorders (and maybe also low stock)
• Low stock : you must order this product to reach a certain level of stock
• Waiting for reception : there is one or several PO expected that cover the needs. Once the PO are
received, the product will be removed from the supply needs screen

Qty to order
Select here quantities to add to the purchase order :

• You can manually fill quantities needed


• Use the button located on the left side of the quantity textbox to automatically fill it with :
qty_for_backorders
• Use the button located on the right side of the quantity textbox to automatically fill it with :
qty_for_backorders + qty_for_low_stock

Suppliers
Use this column to filter the supply needs by supplier.
If a product is associated to one or several suppliers, associated suppliers are displayed with the buying price

Columns added by ERP


If use Embedded ERP, additionnal columns are available :

Sales history
Display the sales history (based on the 3 ranges set in the configuration)

Average sales per week


Calculate the average sales per week from sales history values.
More information there : Stock Helper.

Run out
Number of days before the out of stock (calculated using the current stock level and the averages sales per week).

Create a Purchase Order from Supply needs


The purpose of the supply needs screen is to help you to create a new Purchase Order easily.
First, you must apply the filters to identify products for the supplier you want to place a purchase order for :

• Using the “Supplier” column


• Using filters by product name
• Optionnaly, using the “Status” column (if you want to order only products required for backorders)
Once you have filtered the products, you must set for each product the quantity to purchase :

• You can fill this value manually in each textbox


• Use both button around the textbox (see above for more details)
• Use the “Fill with X qty” buttons at the top to mass fill the quantities (you can of course manually edit
quantities after)

5
5. Purchase Orders

Once product quantities are filled, you can create a new Purchase Order using the “Create a new Purchase order”
button : a list of suppliers drops, click on the wanted supplier and a new purchase order is create for the selected
supplier, with the selected products and quantites.

5. Purchase Orders

Purchase order Workflow


There are 2 dfferent ways to create a new Purchase Order :

• From scratch, from the “Purchase order” menu, using button “Create a new Purchase Order”
• From the “Supply needs” screen (more information : Create a purchase order from Supply needs)
At the beginning, a Purchase Order is created with status “Draft”, meaning that it’s NOT considered yet by ERP.
You can then edit the PO details, product details (quantity, prices) and add new products.
Once the Purchase Order is “ready” for you, you can notify your supplier using the “Notify” button : it sends an email
to the supplier with the PDF details.
You can use the different statuses to manage the communication between you and the supplier and check the
progress, but there is one very important status to consider : “Expected” : this is the ONLY status for which the
extension will consider your purchase order, and update the quantity expected for the products. If you do NOT switch
to this status, Supply needs are not updated and you may re-order the same products several times
You can track products to be received from the “Products in transit” menu.
When you receive the goods, you must create a reception for the Purchase Order : go within the PO and click on the
“Receive” button : you can then enter the quantities received (using a barcode scanner or simply filling the
quantities). Then, it will increase the product stock level according to the quantities enters and update received
quantity for the PO.

Available actions

Print purchase order


You can print the PDF for the PO with the “Print” button:

• The logo in the header is the one configured in stores > configuration > sales > sales > invoice and packing slip
designs
• The bill to and ship to sections are filled with settings in stores > configuration > procurement > PDF (if you use
Embedded ERP, the ship to address comes from the warehouse address)

Note
The purchase order reception PDF can be modified editing file :
app/code/BoostMyShop/Supplier/Model/Pdf/Reception.php

Supplier notification
You can notify the supplier using the “Notify” button : it sends an email to the supplier email address.
To modify the template for the email sent :

• Go in Marketing > Communications > Email template, and create a new template loading the default template
“Purchase Order” and save this template
• Configure this new template in stores > configuration > boostmyshop > procurement > Purchase Order > Email
template for supplier notification

6
5. Purchase Orders

Update product costs


This action will manually update the cost of all products already received in the purchase order, with the new cost
being the average value between the old value and the one of the current purchase order.

Note
The value will be stored in the product cost attribute, this action will not update the cost at
product/supplier association level.

Available tabs

General

Option Description
Suppli Supplier associated to the PO
er
Status PO status. You can manage the PO progress using every statuses before the “Expected” one, as they
will not be considered by the module. Only products associated to a PO with an “Expected” status will
be considered as products “to receive”. Once the PO is closed (no products are expected anymore) its
status becomes “Complete”
Type PO type. Use “Purchase order” there, others types are assigned automatically
Manag Backend user managing the PO. Automatically set to the user creating the PO, can then be changed
er manually
Refere PO reference. Automatically filled with “PO - CURRENT_DATE - INCREMENT_ID” when POs are
nce created, can then be changed manually
Suppli PO reference for your supplier. Will be displayed in the PO PDF headers
er refe
rence
Estim Date estimated for the PO reception. Will be used to calculate the availability message of all PO
ated products if they are out of stock. A date can also be defined at the product level from the “Products” tab
time if the associated option is enabled from
of Stores > Configuration > BoostMyShop > Procurement > Purchase Order Product
arrival
Store Store associated to the PO. Usefull if you have defined messages at store view level in
Stores > Configuration > BoostMyShop > Procurement > PDF to get the correct message
displayed on the PO PDF
Websi Website associated to the PO, not used anymore
te
Wareh Warehouse where stock levels will be increased when the PO is received
ouse
for rec
eiving
Privat Private comments about the PO, only visible from the PO edition screen
e Com
ments
Public Public comments about the PO, visible by the supplier in the PO PDF
Comm
ents

7
5. Purchase Orders

Miscellaneous

Costs

Option Description
Verified Manual option that can be used to add a verification step on POs, displayed in top figures in
purchase orders edition screen. Might be set to “Yes” once all PO data have been checked and
validated by the POs manager
Currency Currency assigned to the PO. Initialized with the currency of the supplier associated to the PO
Change rate Change rate between the PO currency and your base currency (used when updating the product
cost, converting its currency)
Shipping Used to calculate landing fees, they are then distributed at the product level to calculate their net
cost & cost
Additional
cost
Tax rate % Tax rate for the PO. Initialized with the tax rate of the supplier associated to the PO
Global Discount applied to PO, on subtotal before taxes
discount %

Shipping
This section will be used to generate a shipping label for the PO, that will then be available for download in the email
sent to the supplier when the “Notify” action is used.
Your supplier will then be able to print it and use it to send you the purchase order products.

Option Description
Add Button allowing you to manually upload a shipping label file if it is already generated
shipping
label
Shipping Shipping method associated to the shipping label.
method
Tracking # Tracking number associated to the shipping label

Products
You can add products in the PO using the “Add products” tab : check the products you want to add, fill the quantity
(or keep empty for 1) and click on the save button.
When you add a product to the PO, the supplier SKU and the buying price are automatically filled from the product /
supplier association tab (depending of the setting used in procurement > purchase order product > default buying
price)

Reception
When the supplier send you the PO products, you will have to create a new PO reception to increase their stock in
the receiving warehouse.
To create a new reception, here it the process to follow :

• Go in menu Suppliers management > Purchase order


• Click on the PO you want to receive. To find the PO, you can for example filter the “Status” column on
“Expected” to restrict the list to POs not yet received.
• Once in the PO edition screen, click on Receive in the top right corner to display the reception screen.
To fill the received products, you have 2 options :

8
5. Purchase Orders

• Use a barcode scanner to scan the products (it will increase by one the product at each scan). Note : to
use the barcode scanner feature, you must configure the barcode attribute in stores > configuration >
procurement > general).
• Manually fill the quantity received for each products (you can also use the “Fill all quantities” button to fill
the text boxes with the quantity expected, you can then update quantities manually if required)

Note
Note : you can fill quantities received greater than the quantity ordered, or lower (partial reception)

Once the quantities are filled, click on the “Save” button to save the reception.
Saving a reception has several impacts :

• Creates a new reception for the PO (receptions history is visible in the “Receptions” tab for a PO)
• Creates the product/supplier association if the received products are not already associated with the PO’s
supplier
• Updates the PO delivery progress (can be higher than 100 if you received more than ordered)
• Updates products inventory (if you use Embedded ERP, it will also create stock movements)
• Updates supply needs (most of the time, it removes supply needs with status “Waiting for reception”)
• Updates product cost in the product view (if option “Stores > Configuration > Procurement > Purchase Order
Product > Update Product Cost” is enabled)
If the delivery progress reaches 100, the Purchase Order status is automatically toggled to “Complete”.
In case of partial reception for which the missing products will NOT be delivered, you must change the PO status to
“Complete” manually : this is important because if you miss this part, the extension will still expect the products and
will not warn you about new supply needs.

Buying price / Cost Management


The extension handles 2 different costs for a product in a purchase order:

• Buying price : this is the gross buying price which is filled into the “products” tab in a purchase order.
• Buying price with landing costs : this cost is calculated using the product buying price plus the landing costs.
Landing costs are calculated at the PO level, using the shipping cost and the additional cost fields available in
the “Miscellaneous tab”. To distribute these costs at the product level, you can choose between 2 distribution
modes, by quantity or by price (the mode can be configured in Stores > Configuration > Procurement >
Purchase order product > Landing cost distribution. Using the right method, the extension is able to calculate
the total cost for a product (buying price + landing costs).
There are also 2 other places where the extension stores cost information :

• In the product / supplier association : available in menu “Product / Supplier association”, the buying price
fields contains the gross cost, without the landing fees. This buying price is update with the PO information
when a purchase order status goes to complete.
• Cost attribute in the product view : depending of the configuration, this field can contain :

• The gross buying price (useful if you have only ONE supplier per product). In this case, apply
the following settings :

• Stores > Configuration > Procurement > Purchase order product > Default buying price :
Use product cost attribute
• Stores > Configuration > Procurement > Purchase order product > Update product cost : No
• The average cost : the cost attribute will contain the average of the buying prices + landing costs
from the purchase orders that lead to the current stock level. in this case, apply the following
settings :

9
6. Supplier Payments

• Stores > Configuration > Procurement > Purchase order product > Default buying price :
Leave empty OR Use product / supplier association
• Stores > Configuration > Procurement > Purchase order product > Update product cost :
yes

6. Supplier Payments

Supplier Invoices
The grid is available at Embedded ERP - Suppliers Management - Supplier Invoices and list all
supplier invoices.

Create an invoice
When you are on the “Supplier Invoices” grid, click on the “Add New Invoice” button.

Associate a purchase order


You can associate as many purchase orders as you want with a supplier invoice.

10
7. Products in transit

You just need to select the PO in the drop-down list, then fill the total to invoice and click on “Associate”
The PO is then associated with the “Related Orders” section, and the supplier invoice amount is updated.

Add a payment
When you receive a payment from your supplier, you can enter it in the “Payments” tab to update your invoice status.

Supplier Payments
The grid is available at Embedded ERP - Suppliers Management - Supplier Payments and list all
payments from the supplier invoices.

7. Products in transit
You can track every products expected from suppliers in menu “Products in transit”.
From this screen, you have every details about expected delivery(ies) per product and a quick link to the purchase
orders.
This list summarizes every products matching to these conditions :

11
99. FAQ

• Belong to a purchase order with status “Expected”


• Has a quantity received below the quantity ordered

99. FAQ

1. Magento setup:upgrade command doesn’t complete


During the update/installation of Embbeded ERP extension, it can happen that Magento setup:upgrade get stuck
during the Supplier module update.
You can resolve this situation modifying this file :
app/code/BoostMyShop/Supplier/Setup/UpgradeData.php
Then, comment this part of the code, located between line 88 and line 107 :

if (version_compare($context->getVersion(), '0.0.32') < 0)


{
try
{
$this->_state->setAreaCode('adminhtml');
}
catch(\Exception $ex)
{
//nothing, just mean that area code is already set
}

//init default value for supply_discontinued


$productIds = $this->_productCollectionFactory->create()->getAllIds();
$arrays = array_chunk($productIds, 200);
foreach($arrays as $array)
{
$this->_productAction->updateAttributes($array, ['supply_discontinued' => 0], 0);
}

}
This should resolve the issue and helps the setup:upgrade command to complete correctly.
Then, once the module has been correctly updated, installed, you’ll have to execute manually what this section of
code was supposed to do.
To do it, go into grid ERP > Products.
Then, select all your products, and use massaction “Set product as not discontinued” :

Note
If you get a timeout error doing this, that means you are trying to update the discontinued attribute on too many
products at the same time.
Simply select less products to process and try again.

2. Discontinued attribute
When the Supplier module is installed, you will find a new “Discontinued” attribute available from products pages.
If the full ERP suite is installed, this attribute will also be available from the “Attributes” tab in the ERP view of each
product :

12
99. FAQ

This attribute will be used in a few Supplier screens to filter products to display :

• Supply needs : Products having the discontinued attribute set to “Yes” will not be displayed at all.
• Purchase orders, “Add products” tab : This grid will be filtered by default to not display products having the
discontinued attribute set to “Yes”.

13

You might also like