我目前正在尝试使用 PHP PayPal REST API。但是,似乎我无法通过事务传递项目列表,因为“缺少必填字段”。
$item = new Item();
$item->setQuantity("1");
$item->setName("stuff");
$item->setPrice("305.00");
$item->setCurrency("USD");
$amount = new Amount();
$amount->setCurrency("USD");
$amount->setTotal("305.00");
$item_list = new ItemList();
$item_list->setItems(array($item));
$transaction = new Transaction();
$transaction->setAmount($amount);
$transaction->setDescription("This is incredibly awesome.");
$transaction->setItem_list($item_list);
我已经按照文档 ( https://developer.paypal.com/webapps/developer/docs/api/#common-objects )中的“通用对象”填写了 Paypal 文档认为“必需”的所有字段。但是当我尝试重定向到 Paypal 以开始交易时,我被抛出了这个错误:
例外:访问https://api.sandbox.paypal.com/v1/payments/payment时获得 Http 响应代码 400 。string(269) "{"name":"VALIDATION_ERROR","details":[{"field":"transactions[0].item_list.items[0].sku","issue":"必填字段缺失"} ],"message":"无效请求 - 查看详细信息","information_link":" https://developer.paypal.com/docs/api/#VALIDATION_ERROR ","debug_id":"9e292fc3a312d"}"
当我注释掉 $transaction->setItem_list($item_list); 时,它可以正常工作。所以很明显,项目列表或项目中缺少某些东西。但我看不出是什么。
有任何想法吗?