2016-04-24 54 views
3

我試圖執行CFC(ColdFusion的)代碼在這裏找到:貝寶錯誤「貨幣量必須爲非負數」

http://www.sitekickr.com/blog/integrating-paypal-payflow-pro-rest-api/

我仍然在測試階段和避風港」甚至嘗試傳遞我自己的變量,只是使用提供的CFSET示例。

<cfset response = paypal.capture(card_type = "visa" 
     , card_number = "4556747948786484" 
     , card_exp_month = "12" 
     , card_exp_year = "2018" 
     , card_firstname = "Bob" 
     , card_lastname = "Smith" 
     , amount = 15.25 
     , description = "Order 1011" 
)> 

我得到這個錯誤:

{"name":"VALIDATION_ERROR","details":[{"field":"transactions[0].amount.total","issue":"Currency amount must be non-negative number, may optionally contain exactly 2 decimal places separated by '.', optional thousands separator ',', limited to 7 digits before the decimal point"}],"message":"Invalid request - see details","information_link":" https://developer.paypal.com/webapps/developer/docs/api/#VALIDATION_ERROR ","debug_id":"dfb7b0588d38e"}

這是沒有意義的,因爲我傳遞了貨幣的價值是不是消極的,並且只包含小數點後兩位。我所傳遞的「金額」值沒有明顯錯誤。

所以我卡住了。

+1

你的要求是什麼樣的? –

+0

此時,我只是發送過樣品CFSET howardowens

+0

因此,我剛剛發現我可以進入我的PayPal開發人員帳戶並在Sandbox菜單下和交易,獲得更多關於我通過的細節。 總的來說,我會通過:「total」:「15.25 |||」 ......所以不知何故,我在那裏有額外的空間......不知道爲什麼,但似乎是這樣。 – howardowens

回答

1

下面是我如何解決我的問題。

我發現,在我的PayPal開發者帳戶中,我可以進入菜單沙箱/交易,並獲得有關交易嘗試的更多詳細信息。

通過這個,我發現我實際傳遞的總值是「15.25 |||」

PayPal正在收到:「total」:「15.25 |||」

經進一步調查,在CFC的線57中,我發現

「總」=(NumberFormat的(arguments.amount, 「9.99」))& 「|||」,

我除去:&「|||」

並從PayPal的沙箱獲得了成功的迴應。