1

こんにちは

ブラジルの Magento プラットフォームとのペイパル統合を行っており、ペイパルから返された料金を取得する必要があります

//---------//routine to recover the fee on database Paypal//--------//
        $nvp = array(

            //'TRANSACTIONID'            => '7W763566L0166562G',
            'TRANSACTIONID'               => $transactionId,
            'METHOD'                => 'GetTransactionDetails',
            'PWD'                    => 'UVAYAK9WMNPP75KA',
            'USER'                    => 'leonardoccleao_api1.gmail.com',
            'SIGNATURE'            => 'AFcWxV21C7fd0v3bYYYRCpSSRl31AYlssmYYHWWmVugX7vy.se0mIMAM',
            'VERSION'                           => '84',

        );

        $curl = curl_init();

        curl_setopt( $curl , CURLOPT_URL , 'https://api-3t.paypal.com/nvp' );
        curl_setopt( $curl , CURLOPT_SSL_VERIFYPEER , false );
        curl_setopt( $curl , CURLOPT_RETURNTRANSFER , 1 );
        curl_setopt( $curl , CURLOPT_POST , 1 );
        curl_setopt( $curl , CURLOPT_POSTFIELDS , http_build_query( $nvp ) );

        $response = urldecode( curl_exec( $curl ) );

        $responseNvp = array();

        if ( preg_match_all( '/(?<name>[^\=]+)\=(?<value>[^&]+)&?/' , $response , $matches ) ) {
            foreach ( $matches[ 'name' ] as $offset => $name ) {
                $responseNvp[ $name ] = $matches[ 'value' ][ $offset ];
            }
        }

        $fee_amount = $responseNvp['FEEAMT'];//fee recovered

        echo $fee_amount;//I get to print the fee
        curl_close( $curl );
        //---------/end routine to recover the fee on database Paypal //--------//

PayPal に取引 ID (txv_id) を渡すことで手数料を受け取りますが、一部の取引でしか機能しません。一部のトランザクションでは、PayPal は手数料 = 0 を返します。

データ テーブルに一連のトランザクションを入力するスクリプトを作成しましたが、paypal で行われた 40 回のトランザクションのうち 2 回だけ手数料が発生しました。トランザクションは同じ商品と同じ価格ですが、常に同じ手数料であるとは限りません

PayPal がこの属性を返す別の方法を持っているかどうか知りたい

4

1 に答える 1

0

一部の取引では、たとえば PayPal 残高で支払う場合、手数料はかかりません。これが理由かもしれません。

Paypal 手数料: https://www.paypal.com/webapps/helpcenter/article/?currentIssueID=11927&topicID=11500006&m=TCI

于 2012-09-03T17:31:20.813 に答える