Three-way matching is an accounts payable procedure that involves verifying the information on a purchase order, the supplier’s invoice, and the delivery receipt to ensure they align before initiating payment for an invoice. Manual verification of this process can be labor-intensive. In this blog, I’ll demonstrate how to create a fundamental Real Time Three-Way Match customization. Let’s get started.
The first step involves setting up a Client Script that triggers when you create a Vendor Bill record. This script plays a crucial role: it reaches out to a Suitelet to fetch essential details from the purchase order and item receipt.
Why use a Suitelet here? It’s all about access and permissions. Suitelets are more flexible in handling permissions, making them a safer choice for this task.
Once the Client Script retrieves the transaction data, it performs a critical comparison. It checks for any inconsistencies between the purchase order and item receipt data. If it finds discrepancies, a dialog box will pop up, highlighting these differences for the user. It allows the user to review and provide reasons for saving the record, even when there are noted discrepancies.
Add and deploy the script to the vendor bill record (code shown below). Reference my article “Quick Guide to Adding and Deploying a Script in NetSuite” if needed.
This Suitelet simply gets the data from purchase order and item receipt and returns it.
Add and deploy the script to the vendor bill record (code shown below). You will need to use the ID “_sd_sl_threewaymatch” when creating both the script record and the script deployment record.
Let’s test the code by creating a purchase order, item receipt and vendor bill.
I’ve created a purchase order with two items.
I’ve created a purchase order with two items.
I will change the quantity on the first line and the rate on the second to trigger the customization.
Now when I save the record, the dialog will show the differences and ask the user to enter a reason if they still want to save the record.
After the record saves you can see the reason which is saved in a custom transaction body field.
The Real-Time Three-Way Match customization discussed here serves as a solid foundation, but there’s room for improvement and customization to better align it with your specific business needs. Here are a couple of ways you can enhance it:
Keep in mind that these are just a couple of ideas, and there are likely many more ways to tailor and optimize this customization to suit your organization’s precise needs.
In conclusion, the Real-Time Three-Way Match customization presented here has the potential to significantly streamline your workflow and save valuable time otherwise spent on manual checks. A special thanks to our developer, Serhii, for his invaluable contribution in crafting this solution.
Aenean a felis consequat, varius orci ut, varius metus. Donec iaculis leo turpis, vitae sagittis massa luctus feugiat. Donec vel sodales dui,
It’s Been 4+ Years Now And We Have Worked With Hundreds Of Clients, Building Our Way To The Top, One Happy Client After Another! Their Voices Of Satisfaction Serve As A Testament To Our Success –