PayPal Express错误“购物车项目金额的总计与订单金额不匹配”

时间:2016-01-28 07:54:04

标签: c# paypal paypal-sandbox

在SO和其他论坛上有很多关于这个错误但是我找不到有帮助的答案。

当我提交以下简化请求而没有税额时,它可以正常工作,但是一旦添加税,就会发生错误。这是代码:

pdItem[0] = new PaymentDetailsItemType()
{
    Name = "xyz",
    Amount = new BasicAmountType() { currencyID = CurrencyCodeType.USD, Value = "10.00" },
    Tax = new BasicAmountType() { currencyID = CurrencyCodeType.USD, Value = "2.00" },
    Quantity = "1"
};

PaymentDetailsType pdt = new PaymentDetailsType()
{
    OrderDescription = orderDescription,
    PaymentDetailsItem = pdItem,
    OrderTotal = new BasicAmountType() { currencyID = CurrencyCodeType.USD, Value = "10.00" },
    TaxTotal = new BasicAmountType() { currencyID = CurrencyCodeType.USD, Value = "2.00" }
};

我尝试了税收和(净)总额的所有可能组合,但它们都失败了。在pdItem [0]和pdt中保留税款,它可以运行。

如果我免税并且只发送包含税的总额,这是一个问题吗?如果是的话,需要做些什么才能发挥作用?

1 个答案:

答案 0 :(得分:3)

在您的示例中,您需要包含ItemTotal,并确保包含包含税和交付的订单总额。

  • ItemTotal = 10
  • TaxTotal = 2
  • OrderTotal = 12

但是,为了简化事情,我会免税。

如果您对每个项目征税并对总订单价值seperatley征税,那么您很容易受到小的舍入错误的影响,这两个错误会使两个总计相距1美分。

您不需要将税务信息发送到Paypal,因此,除非您的客户绝对需要,否则我会将单独的税务信息保留下来,并且只发送所有税款。

我们已经在我们的网站上完成了这项工作,它简化了一切,它停止了所有这些错误,每个人都很高兴。