2016-04-24 6 views
3

私はここで見つけるCFC(ColdFusionの)コードを実装しようとしています:PayPalのエラー「通貨量が負の数でなければならない」

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"}

私は渡している通貨の値が負でないと2つだけ小数点以下が含まれているため、それは意味がありません。私が渡している "量"の値には明らかなエラーはありません。

だから私は立ち往生しています。

+1

あなたのリクエストはどのように見えますか? –

+0

この時点で、私はちょうど、 card_exp_month = "12"、 card_exp_year =「2018 howardowens

+0

私はPayPal開発者アカウントとサンドボックスメニューそしてトランザクション、私が通過しているものの詳細を取得します。 合計:「合計」:「15.25 |||」 ...どういうわけか、私はそこに余分なスペースを持っています...なぜ、まだわからないのですが、そうであるようです。 – howardowens

答えて

1

ここで私の問題を解決しました。

PayPalの開発者アカウントで、[サンドボックス/トランザクション]メニューに移動して、トランザクションの試行の詳細を確認できました。

これを介して、実際に合計を渡していた値が "15.25 |||"

PayPalは「合計」:「15.25 |||」を受け取っていました。さらに調査すると

、CFCのライン57において、Iは&

"合計" =(のNumberFormat(arguments.amount、 "9.99"))が見つかりました "は|||"、

Iを除去:& "|||"

PayPalのサンドボックスから正常に応答しました。