Proposal For Pricing Adjustments for Additional Pricing Tiers at the Customer Level

Proposal Summary 

The proposal involves creating a custom record within NetSuite to manage customer-specific pricing levels, allowing for enhanced reporting and pricing adjustments. The custom record will support pricing tiers such as “Adjusted Pricing” and “C-Contract” at the customer level and integrate them into sales processes. This will enhance pricing flexibility and visibility for reporting without altering the core NetSuite pricing functionality. 

 

The estimated time required to complete the development work is approximately 56 hours. This includes all tasks such as design, implementation, testing, and documentation to ensure a successful and comprehensive implementation. 

Requirement From MarathonLS 

The specific requirements are as follows: 

  • Allow pricing adjustments for different pricing tiers, such as “Adjusted Pricing” and “C-Contract”, at the customer level. 
  • Ensure that pricing adjustments for these tiers can be reflected in reports and saved searches. 

Statement of Work (SOW)  

To fulfill these requirements, the following approach will be used: 

  • Custom Pricing Record Creation
  • A custom record will be created to manage customer-specific pricing for different pricing tiers. Key fields include Customer, Item, Pricing Level, Unit Price, and Currency
  • Direct access to the Custom Pricing Record will be restricted via workflow. Entries in this record can be created, updated or deleted via the respective customer records. 
  • Duplicate entries will be restricted via Client Script. If duplicate item is added for a customer, an alert will be shown. Duplicate entry scenarios are: 
  • Same item with price level other than custom in item pricing. 
  • Same item with same currency in custom pricing record other than current line. 
  • The custom record will be added in customer record near the standard ‘Item Pricing’ subtab under finance.  
  • Standard item pricing in Customer
  • Standard validation will be there, and some custom validation will be added. Duplicate entries will be restricted via Client Script. If duplicate item is added for a customer, an alert will be shown. Custom duplicate entry scenarios are: 
  • Item with price level other than custom in item pricing and the same item in custom pricing record. 
  • Based on the updated entries in the Custom Pricing Record on the customer record, details will be synchronized with the standard Item Pricing using a User Event Script
  • Deletion Handling: Removes any standard Item Pricing lines for items that were deleted in the Custom Pricing Record by comparing old and new records. 
  • Update and Addition: Updates all lines in Item Pricing based on entries in the Custom Pricing Record. If an item is not already present in Item Pricing, a new line will be added for it. 
  • Custom Pricing Transaction line field
  • Creates a client script to automate the population of the ‘custom pricing level’ from the custom pricing record based on the customer and item when an item line is added. The ‘custom Pricing’ level is set only when: 
  • The price level is custom. 
  • There is an entry for that item and currency for the customer in ‘Custom Pricing Record’. 
  • The rate should be same as the unit price set in the ‘Custom Pricing Record’. 
  • Records which will contain the ‘Custom Pricing’ Transaction line field: 
  • Opportunity 
  • Proposal (Estimate) 
  • Sales Order 
  • Invoice 
  • Cash Sale 
  • Return Authorization 
  • Credit Memo 
  • Cash Refund 
  • Reporting and Saved Search Development
  • A demo saved searches will be created to pull data from the custom record for reporting purposes, enabling visibility into customer-specific pricing across different tiers. 

Assumptions 

  • The Custom Pricing Record and its data will primarily serve reporting and visibility purposes
  • Users will handle maintenance and updates of the Custom Pricing Record as part of regular operations. 
  • No changes will be made to existing standard NetSuite pricing processes, only enhancements will be applied via the Custom Pricing Record. 
  • If an item exists in standard pricing but not in the Custom Pricing Record, it can be added to Custom Pricing Record for the customer, which will then update the existing standard Item Pricing line for that customer. 
  • Roles and permissions will be configured to allow only authorized users to add, edit, or delete Custom Pricing records. 
  • When importing transactions, ensure that ‘Run Server SuiteScript and Trigger Workflows’ is selected to apply the custom pricing level to item lines.  

Scope Limitations 

  • Limited to Custom Field in Transactions: The custom transaction line field will only be available in records mentioned below. Also, it will be populated based in the customer, item, standard pricing level, currency and rate. 
  • Opportunity  
  • Proposal (Estimate)  
  • Sales Order  
  • Invoice  
  • Cash Sale  
  • Return Authorization  
  • Credit Memo  
  • Cash Refund 
  • Not Altering Standard NetSuite Pricing Logic: The standard NetSuite pricing logic will remain unchanged, and this custom record will not interfere directly with other pricing structures, such as default pricing. But will create, update or remove the ‘custom pricing’ level in standard ‘item pricing’ sublist in the customer record based on the entries in ‘Custom Pricing Record’. 
  • Reports and Searches: Custom pricing levels will be used for reporting purposes, not for system-wide price calculations outside the defined customer transactions. 
  • Custom Pricing Record: The standard pricing level only be updated when the ‘Custom Pricing Record’ is created, updated or removed from ‘custom Pricing Record’ through create/edit mode of customer record.  

Risks 

  • Impact on Reporting: If there is a modification in custom pricing record after a transaction is created, the details in the transaction may not be updated. 
  • Concurrency Issues: Due to the linkage between the custom record and the standard ‘Item Pricing’ Sublist, concurrent modifications might lead to conflicts or missed updates. 
  • Entry creation in ‘Custom Pricing Record’: The creation of ‘Custom Pricing Record’ other than from the customer record will not be updated in standard ‘item pricing’ in customer, and so, the default pricing may not be that of same as that in the ‘Custom Pricing Record’. 
  • Child records are never editable in parent records that have more than 10,000 child record lines. 
  • The Item price line which is removed manually in item pricing will not be removed automatically from the custom pricing record. It should be manually removed. 
  • There may be a slight delay when adding items to Item Pricing and Custom Pricing, as well as a potential increase in record save time. This is due to the comparison process for detecting duplicate entries by evaluating all items against existing entries. 
  • On transactions like Sales Order, the Add Multiple, Upsell, and Intelligence Recommendation shortcuts might not trigger the client script. This means the custom pricing level field may not update in real-time. This issue could also occur if the currency is changed after entering item lines. 

Leave a comment

Your email address will not be published. Required fields are marked *