Paypal Payflow 退款问题
Posted
技术标签:
【中文标题】Paypal Payflow 退款问题【英文标题】:Paypal Payflow refund issue 【发布时间】:2014-10-18 14:32:12 【问题描述】:您好,我正在尝试为 paypal payflow 创建退款功能。
这是创建的代码。
public function refund()
$this->load->helper('paypal_helper');
$request = array(
"PARTNER" => PARTNER,
"VENDOR" => VENDOR,
"USER" => USER,
"PWD" => PWD,
"TRXTYPE" => 'C',
"AMT" => '11',
"CURRENCY" => CURRENCY,
"CREATESECURETOKEN" => "N",
"SECURETOKENID" => uniqid('213'.time()),
"RETURNURL" => site_url().'test/refund',
"CANCELURL" => site_url().'test/refund',
"ERRORURL" => site_url().'test/refund',
"ORIGID" => 'A70A6DBF0A8C'
);
$response = run_payflow_call($request);
printr($response);
return $response;
这里的ORGID设置为我付款成功后得到的PNREF。
$response = run_payflow_call($request);
在帮助程序中定义,它只是将详细信息发布到https://pilot-payflowpro.paypal.com/(沙箱)。但是在采取行动之后,我得到了这样的结果
[RESULT] => 23
[PNREF] => A1X06F928D52
[RESPMSG] => Invalid account number
谁能告诉我为什么会这样??
我也在购买部分使用相同的“合作伙伴”“供应商”“用户”。但在购买一切顺利。我得到了成功报告和正确记入的金额。
【问题讨论】:
【参考方案1】:要使用 Payflow 退款交易,您只需传递以下参数:
TRXTYPE =C(信用值为“C”)
TENDER =C(如果使用信用卡付款,则值为“C”;如果使用 PayPal 付款,则值为“P”)
ORIGID = A70A6DBF0A8C(要退款的ID)
AMT = 可选参数(如未提供全额退款)
退款时不需要安全令牌。
【讨论】:
假设我在请求中传递了 ORGID,paypal 是否默认使用该帐户(与付款相同的帐户)?或者我需要通过帐户 ACCT 和 EXPDATE ?? 是的,PayPal 将自动退还到最初付款的账户。所以不需要明确传递任何信用卡相关信息。以上是关于Paypal Payflow 退款问题的主要内容,如果未能解决你的问题,请参考以下文章
RoR - PayPal ActiveMerchant - 退款