0

私は、私のサイトに来るクライアントに請求したいマーチャントです。

私はDoDirectPayment APIを呼び出しており、常に 1 回請求し、定期的な請求は行いません。

Paypal はクレジット カードを適切に検証し、カード情報が正しくない場合は正しいエラー メッセージを表示しますが、正しく、クライアントに請求するときは、次のように表示されます。

加盟店の設定が無効なため、この取引を処理できません。

DoDirectPayment API を使用してこのエラー メッセージが表示される理由がわかりません。

すべてが「Billing Agreement」を指しているようです。Paypalで設定する必要がありますか?

別のペイパル アカウントに同じコードを使用していますが、問題なく動作しています。Paypal の設定が足りないようです。

//リクエスト

{"DoDirectPaymentRequestDetails":{"PaymentAction":2,"PaymentDetails":{"OrderTotal":{"currencyID":125,"Value":"29.47"},"ItemTotal":null,"ShippingTotal":null,"HandlingTotal":null,"TaxTotal":null,"OrderDescription":null,"Custom":null,"InvoiceID":null,"ButtonSource":null,"NotifyURL":null,"ShipToAddress":null,"ShippingMethod":0,"ShippingMethodSpecified":false,"ProfileAddressChangeDate":"\/Date(-62135578800000)\/","ProfileAddressChangeDateSpecified":false,"PaymentDetailsItem":null,"InsuranceTotal":null,"ShippingDiscount":null,"InsuranceOptionOffered":null,"AllowedPaymentMethod":0,"AllowedPaymentMethodSpecified":false,"EnhancedPaymentData":null,"SellerDetails":null,"NoteText":null,"TransactionId":null,"PaymentAction":0,"PaymentActionSpecified":false,"PaymentRequestID":null,"OrderURL":null,"SoftDescriptor":null},"CreditCard":{"CreditCardType":1,"CreditCardTypeSpecified":false,"CreditCardNumber":"XXXXXX","ExpMonth":X,"ExpMonthSpecified":true,"ExpYear":201X,"ExpYearSpecified":true,"CardOwner":{"Payer":"","PayerID":"","PayerStatus":1,"PayerStatusSpecified":false,"PayerName":{"Salutation":null,"FirstName":"daniel","MiddleName":null,"LastName":"XXXXX","Suffix":null},"PayerCountry":37,"PayerCountrySpecified":false,"PayerBusiness":null,"Address":{"Name":null,"Street1":"XXXXX","Street2":"d","CityName":"XXXXX","StateOrProvince":"XX","Country":37,"CountrySpecified":true,"CountryName":"CA","Phone":null,"PostalCode":"XXXXX","AddressID":null,"AddressOwner":0,"AddressOwnerSpecified":false,"ExternalAddressID":null,"InternationalName":null,"InternationalStateAndCity":null,"InternationalStreet":null,"AddressStatus":0,"AddressStatusSpecified":false},"ContactPhone":null},"CVV2":"XXX","StartMonth":0,"StartMonthSpecified":false,"StartYear":0,"StartYearSpecified":false,"IssueNumber":null,"ThreeDSecureRequest":null},"IPAddress":"127.0.0.1","MerchantSessionId":"","ReturnFMFDetails":false,"ReturnFMFDetailsSpecified":false},"ReturnFMFDetails":0,"ReturnFMFDetailsSpecified":false,"DetailLevel":null,"ErrorLanguage":null,"Version":"51.0","Any":null}

//応答

{"Amount":{"currencyID":125,"Value":"29.47"},"AVSCode":null,"CVV2Code":null,"TransactionID":null,"PendingReason":0,"PendingReasonSpecified":false,"PaymentStatus":0,"PaymentStatusSpecified":false,"FMFDetails":null,"ThreeDSecureResponse":null,"Timestamp":"\/Date(1375552138000)\/","TimestampSpecified":true,"Ack":1,"CorrelationID":"12d77e0d2b686","Errors":[{"ShortMessage":"Invalid Configuration","LongMessage":"This transaction cannot be processed due to an invalid merchant configuration.","ErrorCode":"10501","SeverityCode":1,"ErrorParameters":null}],"Version":"51.0","Build":"7165512","Any":null}

どんな助けでも大歓迎です!

ありがとう

4

4 に答える 4

3

PayPal のアカウントが有効になっていない状態でクレジット カード支払いを処理しようとすると、PayPal のDoDirectPaymentAPI から「無効なマーチャント設定」エラー応答が返されます。

質問のタイトルに「PayPal エクスプレス チェックアウト」と記載されていても、このエラーが発生した場合は、エクスプレス チェックアウト製品を使用していません。

お住まいの国 (米国、英国、カナダ) で利用可能な場合は、PayPal Web Payments Pro にサインアップする必要があります。

または、PayPal Express Checkout を使用します。これは、PayPal 自体が利用可能な (ほぼ) すべての国で利用でき、月額料金は不要です。

于 2013-08-03T17:09:14.863 に答える
0

そのエラーは、Paypal マーチャント アカウントに何かが正しく構成されていないことを示しています。はい。

以下は Paypal ヘルプセンターからの引用です ( https://www.paypal.com/helpcenter/main.jsp;jsessionid=JBxTykGsT2gy4GTwcFQhCfTmqgNj9TnHfprRRMfDRwpqGs0H2yxf!-7839025?t=solutionTab&ft=homeTab&ps=&solutionId=163218&locale=en_GB&_Fdyncharset&_Fdyncharset&_Fdyncharset =_help&serverInstance=9004 ):

Billing Agreement とは何ですか? どのように機能しますか?

Billing Agreement により、マーチャントは、マーチャントから商品を購入したり、そのマーチャントのサービスを使用したりするときに、PayPal アカウントに請求することができます。

この例としては、顧客が eBay でオークションに商品を出品する際に、顧客の PayPal アカウントを使用して eBay 料金を支払うという eBay と PayPal 顧客の間の契約があります。

Billing Agreement はサブスクリプションとは異なります。サブスクリプションでは、指定された期間に固定金額が請求されるためです。

Billing Agreement を変更またはキャンセルするには:

PayPal アカウントにログインします。ページの上部にある [プロフィール] をクリックします。マイマネーを選択します。[私の事前承認済み支払い] セクションで、[更新] をクリックします。問題の Billing Agreement を選択して開始します。

于 2013-08-02T16:37:50.040 に答える
0

SetExpressCheckout リクエストで Billing Agreements を使用しようとしているようですが、アカウントで承認されていません。

DoReferenceTransaction を使用して将来の支払いを処理するには、Billing Agreements が必要です。SetExpressCheckout リクエストには、これを設定するための Billing Agreement パラメータが含まれています。Billing Agreement パラメーターなしで SEC を通過すると、今後の DoReferenceTransaction 呼び出しは機能しません。

問題は、参照トランザクション/請求契約を使用しようとしているかどうかです。そうでない場合は、リクエストから Billing Agreement パラメータを削除するだけです。

実際の API リクエストとレスポンスのサンプルをここに投稿したい場合は、おそらく私の方がうまくいくでしょう。

于 2013-08-03T05:09:53.150 に答える