我正在尝试使用Express Checkout创建付款。如果我不包含TaxTotal,它可以正常工作。我一收到错误“税总计无效”。
var itemTotal = new BasicAmountType(Enum.GetValues(typeof(CurrencyCodeType)).Cast<CurrencyCodeType>().FirstOrDefault(t => t.ToString() == cart.Item.Currency.ToString()), cart.NetTotal.ToString());
var orderTotal = new BasicAmountType(Enum.GetValues(typeof(CurrencyCodeType)).Cast<CurrencyCodeType>().FirstOrDefault(t => t.ToString() == cart.Item.Currency.ToString()), cart.GrossTotal.ToString());
var taxTotal = new BasicAmountType(Enum.GetValues(typeof(CurrencyCodeType)).Cast<CurrencyCodeType>().FirstOrDefault(t => t.ToString() == cart.Item.Currency.ToString()), cart.TaxTotal.ToString());
paymentDetails.ItemTotal = itemTotal;
paymentDetails.OrderTotal = orderTotal;
paymentDetails.TaxTotal = taxTotal;
如果我删除了ItemTotal和TaxTotal,付款处理正常,但我需要显示税务细分。
仅供参考,金额为,ItemTotal = 175,OrderTotal = 210,TaxTotal = 35.
任何人都可以确认问题是什么或我的代码中缺少什么?
谢谢, 安迪
答案 0 :(得分:0)
尝试添加小数,使其变为175.00。在使用PayPal的API时,我会为所有金额字段执行此操作。
如果这不起作用,请发布您要发送的实际请求的副本,以便我们可以验证实际发送的内容。
答案 1 :(得分:0)
我解决了这个问题,它类似于安德鲁建议的解决方案。
我使用的是十进制数,订单总数是210.000。我把它四舍五入到210.00以敲掉小数,它工作正常。