Documentation >
MAC-PAC Technical Library >
Distribution >
Order Processing >
Programs >
Goods and Services Tax Calculation - Purpose >
Goods and Services Tax Calculation - Calculations
Goods and Services Tax Calculation - Calculations
GSTCHK
1. The fields for change in GST amount are initialized to zero.
2. GST calculations are bypassed if the customer is an export customer or if GST is suspended (that is, if the GST type is suspended and the suspended limit or suspension date defined on the customer master file have not been reached).
3. If GST is included in the price, the old net amount (without GST) and old GST amount are calculated. The old net and old GST amounts are the amounts before the line was added, deleted, or changed.
4. The old GST amount (the GST amount calculated prior to the change to the line, deletion of the line, or addition of a new line) is subtracted from the GST arrays.
a. The old GST code is found on the VAT/GST code array. The corresponding array index will be used when accessing all other VAT/GST arrays related to the old GST information.
b. If GST is suspended, the sales amount over the suspended limit (that is, the sales amount subject to the suspended GST rate) is determined.
c. The old extended sales amount is subtracted from the gross amount subject to GST.
d. If the line was subject to a cash discount, the old extended sales amount is subtracted from the amount subject to cash discount.
e. If the line was subject to a cash discount, the GST amount is calculated as the old GST rate multiplied by the old extended amount. The GST amount is then subtracted from the GST amount subject to cash discount. If GST is included in the price, the sales amount without GST is determined and used to calculate the discount.
5. The total GST amount for the old GST code against the gross sales amount is calculated by multiplying the old GST rate by the gross amount subject to GST.
6. The total GST amount for the old GST code against the sales amount net of cash discount is calculated.
a. The sales amount not subject to cash discount is calculated as the gross amount subject to GST less the amount subject to cash discount.
b. The discounted amount is calculated as the amount subject to discount multiplied by the old discount percent.
c. The net amount is calculated as the discounted amount plus the amount not subject to discount.
d. The GST amount against the net sales amount is calculated as the net amount multiplied by the old GST rate.
7. The new GST information is added to the VAT/GST arrays.
a. If GST is suspended, the suspended amount to date is compared with the suspension limit to determine if the changes cause the customer to exceed the limit. If the limit is exceeded, GST is calculated. If the limit is not exceeded, GST is not calculated but the year-to-date suspended sales amount is updated.
b. The new GST code is found on the VAT/GST code array. The corresponding array index will be used when accessing all other VAT/GST arrays related to the new GST information.
c. The new extended sales amount is added to the gross amount subject to GST.
d. If the line is now subject to a cash discount, the new extended sales amount is added to the amount subjected to cash discount.
e. If the line is subject to the cash discount, the GST amount is calculated as the new GST rate multiplied by the new extended amount. The GST amount is then added to the GST amount subject to cash discount.
8. The total GST amount for the new GST code against the gross sales amount is calculated by multiplying the new GST rate by the gross amount subject to GST.
9. The total GST amount for the new GST code against the sales amount net of cash discount is calculated.
a. The sales amount not subject to cash discount is calculated as the gross amount subject to GST less the amount subject to cash discount.
b. The net amount is calculated as the amount subject to discount multiplied by the new discount percent.
c. The net amount is calculated as the discount amount plus the amount not subject to discount.
d. The GST amount against the net sales amount is calculated as the net amount multiplied by the new GST rate.
10. The new total GST amounts are calculated for the order.
a. The gross VAT/GST array is cross-footed to get the total GST amount as calculated against gross sales.
b. The net VAT/GST array is cross-footed to get the total GST amount as calculated against net sales amount.
c. The GST subject to discount array is cross-footed to get the total GST amount subject to cash discount.
11. The change in GST gross, net, and subject to discount amounts are calculated by subtracting the previous amounts from the new amounts.
12. The GST amount subject to discount is converted to base currency.
13. Amount subject to Provincial sales tax is calculated:
a. The fields for tax amount and GST subject to PST are initialized to zero.
b. If the old tax flag is on, the old extended sales amount is subtracted from the tax amount and the old GST amount is subtracted from the change in GST subject to PST amount.
c. If the current tax flag is on, the new extended sales amount is added to the tax amount and the new GST amount is added to the 'change in GST subject to PST' amount.
d. The GST amount subject to tax is converted to bookkeeping currency.