Magento 如何在所有PayPal交易中返还费用

Magento 如何在所有PayPal交易中返还费用,magento,curl,paypal,nvp,Magento,Curl,Paypal,Nvp,下午好 我正在与巴西利亚的Magento平台进行paypal集成,我必须获取paypal返回的费用 //---------//routine to recover the fee on database Paypal//--------// $nvp = array( //'TRANSACTIONID' => '7W763566L0166562G', 'TRANSACTIONID'

下午好

我正在与巴西利亚的Magento平台进行paypal集成,我必须获取paypal返回的费用

//---------//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上恢复费用的例程//--------//
$nvp=阵列(
//'TRANSACTIONID'=>'7W763566L0166562G',
'TRANSACTIONID'=>$TRANSACTIONID,
'METHOD'=>'GetTransactionDetails',
‘PWD’=>‘UVAYAK9WMNPP75KA’,
“USER'=>“leonardoccleao_api1.gmail.com”,
“签名”=>“AFCWXV21C7FD0V3BYYRCPSSRL31AYLSSMYYHWWMVUGX7VY.se0mIMAM”,
'版本'=>'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));
$responsevp=array();
if(preg_match_all('/(?[^\=]+)\=(?[^&]+)&?/',$response,$matches)){
foreach($offset=>$name时匹配['name']{
$responsevp[$name]=$matches['value'][$offset];
}
}
$fee_amount=$responsevp['FEEAMT']//收回费用
echo$fee_金额//我可以打印费用
curl_close($curl);
//---------/结束例程以恢复数据库Paypal上的费用//--------//
我通过给PayPal交易Id(txv_Id)获得费用,但它只在某些交易中有效。在某些交易中,贝宝返回的费用为0

我制作了一个脚本,用一系列交易填充数据表,但通过paypal进行的40笔交易中,我只得到了2笔费用。交易具有相同的产品和相同的价格,但并不总是相同的费用


我想知道PayPal是否有其他方法在某些交易中返回此属性,例如使用PayPal余额付款时,没有费用。这可能就是原因

贝宝费用: