2016-08-04 5 views
0

私は、paypal-sdk-adaptivepayments gemを使用してRailsで簡単な支払いを作成することに成功しました。ドキュメントから、次のようにJSONは次のとおりです。JSON for PayPalアダプティブペイメントチェーン決済

{ 
    :actionType => "PAY", 
    :cancelUrl => "http://localhost:3000/samples/adaptive_payments/pay", 
    :currencyCode => "USD", 
    :feesPayer => "EACHRECEIVER", 
    :ipnNotificationUrl => "http://localhost:3000/samples/adaptive_payments/ipn_notify", 
    :receiverList => { 
     :receiver => [{ 
     :amount => self.amount, 
     :email => self.help_request.creator.master_profile.paypal_email }] }, 
    :returnUrl => "http://localhost:3000/samples/adaptive_payments/pay" 
    } 

私はなく、連鎖支払いのための複数の受信(1次)と類似したJSON文字列を設定するには、しかし、必要があります。 PayPalのドキュメントは、これを実行する方法を示し、それは私がSDKのために必要なものであるJSONではありません。

&actionType=PAY 
&cancelUrl=http:\\example.com\cancel.htm 
&currencyCode=USD 
&receiverList.receiver(0).amount=9.00 
&receiverList.receiver(0)[email protected] 
&receiverList.receiver(1).amount=5.00 
&receiverList.receiver(1)[email protected] 
&requestEnvelope.errorLanguage=en_US 
&returnUrl=http:\\example.com\return.htm 

誰もがこれを設定する方法を知っていますか?すぐにはわかりません。

答えて

0

私はフォーマットを見つけましたが、それは直感的ではありません。彼らはこのようにそれを見せるの基本的な構造はhere見ることができます。

params = { 
     'requestEnvelope' : {'errorLanguage' : 'en_US', 'detailLevel' : 'ReturnAll'}, 
     'actionType' : 'PAY', 
     'receiverList' : { 
       'receiver' : [ 
        {'email' : receiver1, 'amount' : amount1, 'primary' : True }, 
        {'email' : receiver2, 'amount' : amount2, 'primary' : False}, 
        {'email' : receiver3, 'amount' : amount2, 'primary' : False} 
       ], 
     }, 
    'currencyCode' : 'USD', 
    'memo' : 'Chained payment example.', 
    'cancelUrl' : cancel_url, 
    'returnUrl' : return_url, 
} 

は、ここで私は自分のアプリケーションで使用されるものをざっとです:

{ 
    :actionType => "PAY", 
    :cancelUrl => "http://localhost:3000/samples/adaptive_payments/pay", 
    :currencyCode => "USD", 
    :feesPayer => "PRIMARYRECEIVER", 
    :ipnNotificationUrl => "http://localhost:3000/samples/adaptive_payments/ipn_notify", 
    :receiverList => { 
     :receiver => [{ 
     :amount => self.amount, 
     :email => self.help_request.creator.master_profile.paypal_email, 
     :primary => 'true' }, 
     { 
     :amount => self.fee_amount, 
     :email => '[email protected]', 
     :primary => 'false' } 
     ] 
     }, 
    :returnUrl => "http://localhost:3000/samples/adaptive_payments/pay" 
    } 
関連する問題