2013-04-18 251 views
2

我目前正在嘗試使用PHP PayPal REST API。但是,似乎我無法通過交易傳遞項目列表,因爲「缺少必填字段」。必填字段缺失。 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); 

我充滿所有PayPal的文檔認爲是「必需的」按文檔(https://developer.paypal.com/webapps/developer/docs/api/#common-objects)在「通用對象」的字段。

例外:GOT HTTP響應代碼400訪問 https://api.sandbox.paypal.com/v1/payments/payment的時候,但我當我嘗試重定向到貝寶開始交易我被拋出此錯誤。字符串(269) 「{」name「:」VALIDATION_ERROR「,」details「:[{」field「:」transactions [0] .item_list.items [0] .sku「,」issue「:」Required field missing 「}],」 消息 「:」 無效的請求 - 見 細節 「 」information_link「:」 https://developer.paypal.com/docs/api/#VALIDATION_ERROR 「 」debug_id「: 」9e292fc3a312d「}」

當我註釋掉$交易 - > setItem_list( $ item_list);它工作正常。所以很明顯,項目列表或項目中缺少某些內容。但我看不到什麼。

任何想法?

回答

4

錯誤點,你到這一點:

transactions[0].item_list.items[0].sku 

此申請似乎需要我認爲它只是需要把SKU的產品陣列,從而讓我們做吧: 嘗試添加:

$item->setSKU("CODEHERE"); 

$item->setCurrency("USD"); 
+0

我不能相信我忘了那個。謝謝。 – Sefam 2013-04-18 06:12:15

+1

歡迎你的傢伙 – Fabio 2013-04-18 06:13:16