Я пытаюсь реализовать API-интерфейс PayPal REST на веб-сайте, но мне грозит ошибка проверки, из которой я не могу выйти. Он работал в прошлом с различными значениями, но теперь я получаю следующее сообщение:Ошибка проверки в API-интерфейсе PayPal REST
Сумма транзакции детали (субтотальная, налог, доставка) необходимо добавить до указанной общей суммы.
Вот последний бит, где я устанавливаю объект Transaction
.
$transaction = new Transaction();
$transaction->setItemList($itemList)
->setAmount($amount);
Вот var_dump
из $itemList
и $amount
объектов:
object(PayPal\Api\ItemList)[1117]
private '_propMap' (PayPal\Common\PayPalModel) =>
array (size=1)
'items' =>
array (size=1)
0 =>
object(PayPal\Api\Item)[1116]
private '_propMap' (PayPal\Common\PayPalModel) =>
array (size=4)
'name' => string 'Product description' (length=19)
'currency' => string 'EUR' (length=3)
'quantity' => int 1
'price' => string '31.90' (length=5)
object(PayPal\Api\Amount)[1119]
private '_propMap' (PayPal\Common\PayPalModel) =>
array (size=3)
'currency' => string 'EUR' (length=3)
'total' => string '137.46' (length=6)
'details' =>
object(PayPal\Api\Details)[1118]
private '_propMap' (PayPal\Common\PayPalModel) =>
array (size=2)
'shipping' => string '105.56' (length=6)
'subtotal' => string '31.90' (length=5)
Я абсолютно уверен, что 105.56 + 31.90 = 137.46
, так что должно быть что-то еще я с видом. Я обрабатываю все значения в центах и должен конвертировать их в евро для отправки в PayPal, но var_dump
показывает, что преобразование не кажется проблемой.