magento - 如何在所有 PayPal 交易中退还费用

标签 magento curl paypal nvp

下午好

我正在将 paypal 与 Brasilian Magento 平台集成,我必须获取 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 提供交易 ID (txv_id) 来获得费用,但它只适用于某些交易。在某些交易中,PayPal 返回费用 = 0。

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

我想知道 PayPal 是否有其他方法返回此属性

最佳答案

在某些交易中,例如使用 PayPal 余额付款时,不收取任何费用。这可能是原因。

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

关于magento - 如何在所有 PayPal 交易中退还费用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11768243/

相关文章:

Magento + Redis,完整的 session 目录?

javascript - Magento 自定义选项不起作用

magento - 将日期选择器添加到自定义模块上的 system.xml

php - fatal error : Uncaught exception 'Exception' with message 'String could not be parsed as XML'

python - 从 bash 到 GO 服务器的 REST post 查询有效但对于 Python 失败

c# - 如何在数据库值之后等待然后继续

android - PayPal.initWithAppID() 因 NullPointerException 而崩溃

php - Magento - 仅加载可配置产品

bash - curl 范围不起作用(下载整个文件)

codeigniter - CodeIgniter 中的 PayPal Express Checkout 集成