We require a VAT Exemption calculation module for the backend of magento when placing orders. The modules core functionality is to first require the user to pick a health status of the customer from a per-defined drop down list of 4 options ( to be placed just above the Coupon Code box ) then, based on the status picked, it must either leave the current product prices as they are with their existing VAT code OR change the VAT code of the product and update all the prices, sub prices and totals to reflect that new price.
The hook we use is an attribute with a Yes or No option which is set per product. If the product is eligible for 0% vat if the customer is unwell then this is what is used to decide if the VAT should be changed.
We will only ever swap from 20% VAT (T1 code ) to 0% VAT (T0 code ) - There also needs to be an option in the list called "Not Required" which will then undo any changes made. For instance you might set a status which allows for the items to be charged at 0% then realize they should be charged at 20% so this option allow you to revert back.
Upon the order being placed it then needs to record the chosen (if any) health status and also the health condition in the sales > order tables, the order details table (these have already been setup)
We currently have our own developed module to handle this whole process for frontend customers placing orders. Upon an order being placed it also records the health status and also the health condition in the sales > order tables, the order details table
From a logical perspective I see the process as follows:
1 - Admin user reaches the sales_order_create table and enters the products for the order
2 - Admin user then selects the health condition from the drop down box
3 - The products that have the Attribute "Reduced VAT allowed" will then update their VAT rule to T0 ( 0% ) on the price product price
4 - An observer or something then updates all the subtotal, row total, and all other calculations to reflect the products that now have 0% VAT
- Admin user places the order
- The module then records the health status and health condition on the sales > order grid and the individual sales orders
Scenarios to keep in mind
- The module will also need to account for discount codes being applied
- Sales emails / invoice emails etc need to show the correct line price and magento needs to store the correct line price
The module is required as some customers can have purchase products that are normally standard VAT of 20% (T1 code ) but due to some health circumstances ( which are pre defined in a drop down list ) can purchase at 0% VAT (T0 code) so this is why we need to change the prices in the checkout on the fly
Materials / requirements :-
- I can provide the exact Attribute name & values
- The VAT codes and rules to replicate on the development environment for building the module.
- The table names for storing the health status
- The existing frontend module if required.
When the task goes ahead this will have to be developed on a magento install online that I can access to test its working. Once working I will then install the module on our own server, we operative this way for data protection reasons
Notes / about us:
We are a specialist magento agency who develop magento websites for luxury, lifestyle and fashion customers in the Uk for over 10 years. We develop our sites all in house but are looking to develop a network of developers for bespoke modules for the sites we develop
Our clients are high profile and so the work we undertake is to be kept confidential by means of an NDA