Proposal Summary
This proposal is to display a popup when a Drop Ship Purchase Order is edited. Upon clicking the button within the popup, the system should automatically apply the discount to the Purchase Order.
Requirement
To apply the discount on the line item of Drop Ship PO. A popup needs to display and presenting details of available discounts and two button “Apply Discount” and “Cancel”.
If the decision is to apply the discount, users can click the “Apply Discount” button. Subsequently, upon clicking the Apply Discount button, the Purchase price should automatically adjust based on the applied discount. In case the discount is applied, the Discount code must be displayed as a Note in the Drop Ship PO record.
Upon clicking the Cancel button, there will no update occur.
Deliverables
As the Dropship Purchase Order is generated automatically by the system, it is not possible to incorporate a pop-up when adding the item on PO sublist.
So, a button Apply Discount will be added on the Dropship PO record on view mode. The button will be visible exclusively to designated roles/users when necessary; otherwise, it will be visible to all roles/users.
Upon clicking the Apply Discount button, a popup window will appear, showcasing the list of items eligible for a discount from the corresponding Dropship Purchase Order based on MPN or HP MPN Number. If the Drop Ship PO includes multiple line items, all eligible items will be listed. Additionally, on the same row, another button/link will be added, upon clicking that button/link another popup will display the list of all the eligible discount for that item from the custom record in a tabular view. So, the user can be able to view all the discounts together.
If there are multiple discounts for the item, they will be listed in the second popup as a radio button. The user can only select one discount from that list. The list will be arranged in descending order based on the highest to lowest discounts.
After selecting the discounts for all items, the user can click the Apply Discount button.
When the button Apply Discount is clicked, the associated Dropship PO will be updated by applying the specified discount values to the line items.
The user has the choice to cancel the application of a discount by clicking the Cancel button.
Three additional fields will be created in the PO item Sublist for reference purposes.
Old Purchase Price – This field is designated for storing the original purchase price.
Discount Record Link – Link to the custom record of the discount applied to the line item.
Discount Memo – This field will populate the memo associated with the discount custom record.
The criterion for determining the discount is the following.
Search for the MPN or HP MPN value in the custom record corresponding to the dropship PO line item.
Search for the customer specific and item-specific discount from the custom record.
Checks the discount’s Effective Date and Expiration Date in relation to the current date when the user is applying the discount.
If the Drop Ship PO customer is child, then checks whether its Parent customer is eligible for any discounts. The discount applicable to the parent customer will also be displayed in the popup table view corresponding to the child customer.
If the customer in the Drop Ship purchase order is categorized under the Public Sector field, and the Public Sector checkbox in the discount record is selected, the associated discount will be visible in the table view.
Upon applying the discount, the memo associated with the discount custom record will be populated into the memo field of the drop ship purchase order line item.
Discount Custom Record setup
A new record will be created to store information related to discounts file from the manufacturer.
If the discount file related to a parent customer, a single discount custom record will be generated, and it will be applicable to both the parent and child customers. If the discount file is specific to a child customer, the discount will be applicable only to that customer.
When generating the Discount custom record for the primary customer, no custom record will be generated for the associated parent-child customers. Instead, we will examine whether the child customer has any available discounts and check for discounts for the parent customer. This approach aims to minimize the need for creating additional custom records. By doing so, the discount records can be utilized for both parent and child customers.
A field will be created to store the customer, designated as the parent field. Additionally, a new subtab will be added to the Customer record, and discount items under Customer be listed within the record.
The custom record will include the following fields:
Customer: Stores the customer
Approved Quote#: Stores the Discount reference number
MPN: Stores the MPN value
HP MPN: Stores the HP MPN
Model: Stores the model of the item.
Description: Stores the description of the item.
BTP Cost: Stores the standard cost
Discount: discount of the item in stores $ amount
Effective Date: Effective date for the discount.
Expiration Date: The expiration date of the discount
Memo: Stores the Memo text
Is for all Customer: This field contains information indicating that the discount applies to all customers.
Public Sector: Indicates the discount is applicable for the Public Sector customers
While creating the CSV file for the discount data, clarify whether the file pertains to all customers or a specific customer. If specifying the discount file for a particular customer, include the NetSuite internal ID of the customer in the Customer column. If indicating that the file is for all customers, use the “Is for all Customer” column for this purpose.
A validation will be included to check whether the CSV file includes either Customer or Is for all Customer or Public Sector.
The Customer field in the discount file should be the NetSuite internal ID.
Assumptions
We assume that the custom record containing information regarding the discount will be updated from your end.
We are considering that the RATE field for applying the discount on the items of Purchase Order
The newly added items on the dropship purchase order will not be considered once the Dropship PO has been created.
We assume that the items in the dropship purchase order will only be considered for the pending receipt status.
It is assumed that, when utilizing the CSV import feature for custom record creation, you will mark the checkbox labelled “Run Server SuiteScript and Trigger Workflows” for executing scripts.
We assume that when applying a discount to the item and the user again clicks the “Apply Discount” button, the value considered for the discount will be the old purchase price, not the recently updated purchase price.
We assume that all the Dropship PO transaction are in USD currency. So, there will not be any discrepancy with the discount flat rate as it is also in USD
When generating the Discount custom record for the primary customer, no custom record will be generated for the associated parent-child customers. Instead, we will examine whether the child customer has any available discounts and check for discounts for the parent customer. This approach aims to minimize the need for creating additional custom records. By doing so, the discount records can be utilized for both parent and child customers.
If the customer hierarchy extends beyond two levels, we consider the discounts associated with all parent customers. This means that if a customer has a parent customer, and that parent customer, in turn, has another parent customer, we will consider all the discounts associated with each level of the parent customers for the child customer.
If the discount custom record generated from the discount file has both “Is for All Customers” and “Public Sector” checkboxes selected, we will consider the “Is for All Customers” option.
We assume that the Public Sector field in the customer record will be updated from your side.
Risks
Applicable discounts will be identified based on the MPN or HP MPN Number. So, if there is no MPN or HP MPN value in the dropship PO item, the discount will not be displayed on the popup for that item.
The applying discount amount may be inaccurate if the Dropship purchase order is in a currency other than USD.
We will not be considering the import of the same CSV files multiple times, as this could result in the creation of identical discount custom records.