У нас есть товар на продажу стоимостью около 100 долларов. К нему применяется налог в размере 5%. Сторонний платежный шлюз берет комиссию в размере 3% от общей суммы, переданной шлюзу (т.е. 3% от 100+5%). Поскольку невозможно взимать с клиента комиссию платежного шлюза в размере 3%, мы скрываем эту дополнительную комиссию в цене товара. Таким образом, цена должна быть увеличена со 100 до суммы «Х».
(100 + 5% tax) + 3% Commission = (X + 5% Tax) ;
Обратите внимание, что при увеличении суммы от X + 5% Tax комиссия также увеличивается.
(100 + 5%) + 3% = (100 + 5) + 3.15 = 108.15
Если мы отправили 108,15 на шлюз, он начислит 3,255 на сумму 108,15, что означает дополнительные 0,105. т.е. Мы получили меньшую сумму за вычетом комиссии шлюза (104.895).
Мне нужно изолировать цену товара, которая не приведет к дополнительной оплате компании.
$tax = 5 ; //5%
$itemAmount = 100 ;
$priceWithTax = $itemAmount + ($itemAmount * 5/100) ;
$commission = 3 ; //3%
//We sent 105 to gateway.. which results 105 to customer and 3.15 to company.
$priceWithTaxCommission = $priceWithTax /* or X */ + ($priceWithTax * $commission/100) ;
$ToGateway = $priceWithTax + ($priceWithTax* 3/100) ;
//Results 108.15, If we sent 108.15 to gateway it again charge 3% on 108.15. Which is wrong.
Как узнать цену товара с учетом комиссии платежного шлюза?