我在集成时遇到了一些困难 - 并找到了当前的文档 - 将PayPal PayFlow Pro集成到我的网站中.
PayFlow链接也有类似的问题 - /sf/ask/1106602311/但我想详细说明.
我想将透明重定向功能与SILENTTRAN选项一起使用,以便:
我目前正在阅读这份文件:https: //www.paypalobjects.com/webstatic/en_US/developer/docs/pdf/payflowgateway_guide.pdf
这在此页面上列为Payflow Gateway开发人员指南(PDF) - https://developer.paypal.com/webapps/developer/docs/classic/products/payflow-gateway/ - 所以我假设它是当前的文档.
根据第28页,该过程应该是:
以下是透明重定向的安全令牌请求的示例.我使用占位符代替我实际的PayFlow Pro帐户详细信息(此帐户在manager.paypal.com服务摘要中说明了'Payflow SDK/API(完全访问)实时'),但我使用了我的真实PayPal凭据.实际要求.同样,我使用可公开访问的网页作为返回网址:
USER=MYUSER&VENDOR=MYUSER&PARTNER=VSA&PWD=MYPASSWORD&BILLTOFIRSTNAME=John&BILLTOLASTNAME=Doe&BILLTOSTREET=123 Fake Street&BILLTOSTREET2=&BILLTOCITY=Sydney&BILLTOZIP=2000&BILLTOPHONENUM=5555555555&EMAIL=me@email.com&BILLTOSTATE=NSW&AMT=0.05&RETURNURL=http://www.example.com&CANCELURL=http://www.example.com&ERRORURL=http://www.example.com&TRXTYPE=A&SILENTTRAN=TRUE&VERBOSITY=HIGH&CREATESECURETOKEN=Y&TENDER=C&SECURETOKENID=VDUOBDNLSXTLYAAAAAATLSEBLAAAAAAAAAA
Run Code Online (Sandbox Code Playgroud)
我使用服务器端代码执行令牌事务,我可以看到我得到的响应是这样的:
RESULT=0&SECURETOKEN=TOKENWASHEREsdsdfjkj&SECURETOKENID=VDUOBDNLSXTLYAAAAAATLSEBLAAAAAAAAAA&RESPMSG=Approved
Run Code Online (Sandbox Code Playgroud)
所以似乎帐户在这里正确验证.我已经在Fiddler中确认我将此请求发布到https://payflowpro.paypal.com.
然后,我接受该响应并将其放入HTML表单中,该表单将回发到网关,例如:
<form id="form" action="https://payflowpro.paypal.com" method="post">
<!-- <input name="MODE" class="inpPPField" id="hdn_pp_mode" type="hidden" value="Test"> -->
<input name="SECURETOKEN" class="inpPPField" id="hdn_pp_securetoken" type="hidden" value="TOKENWASHEREsdsdfjkj">
<input name="SECURETOKENID" class="inpPPField" id="hdn_pp_securetokenid" type="hidden" value="VDUOBDNLSXTLYAAAAAATLSEBLAAAAAAAAAA">
<input …Run Code Online (Sandbox Code Playgroud) 我正在使用Payflow Pro(https://pilot-payflowpro.paypal.com)尝试成为PCI兼容的C#VS2012 Framework 4.5 MVC应用程序.我们多年来一直在使用PayflowPro,这就是我必须使用的.从我的阅读中看来,我似乎应该使用透明重定向,所以我不会向我的网络服务器发布任何私有内容,但我不知道我是否需要这个以及我希望如何处理这个问题.我也有几个问题......
我怎么认为这一切都有效: 我的理解是你需要一个安全的语言(与Paypal的通信,旅程1).然后您发布安全数据(CC,exp,安全代码),包括securetoken(与Paypal的通信,旅程2)并接收销售的授权和交易ID.
我希望如何做到这一点: 我打算拥有一个包含所有信息(用户详细信息,运送详细信息和CC信息)的表单,当用户按下购买按钮时,我将使用AJAX处理1到我的服务器(没有发送安全的用户信息).在这里,我将创建URL + params并发送paypal我的un/pw信息以检索令牌(全部来自我的服务器).响应将返回给客户端,如果成功,我将直接通过AJAX与Paypal的网关服务器进行通信,这次发送安全的CC信息+令牌(行程#2).根据对#2行程的响应,我会让用户知道他们的购买行为是什么.旅行2不应该需要我的Paypal UN/PW信息,因为它可以很容易地在客户端看到,我包括应该识别原始交易的SecureToken.根据我的解释,我认为不需要透明重定向.或者我在这里遗漏了什么?
另外,我想使用什么交易类型?为行程#1创建"授权",然后为行程#2创建"销售"?
所以这里是细节编码类型的东西: 对于我的研发测试,我正在建立自己的名称/值对参数字符串(见下文),并通过WebRequest通过他们的沙箱/测试网址(pilot-payflowpro.paypal)与网关服务器进行通信. COM).我得到了一个成功的回复和SECURETOKEN回来了.安全令牌的初始请求(如下所示)为TRXTYPE = A(授权),不发送卡信息.我想先授权吗?
以下是我的参数(也可能包括shipto信息,但未在下面列出):
USER=myAuthUserName
&VENDOR=myAuthUserName
&PARTNER=myPartner
&PWD=myPassword
&AMT=21.43
&BILLTOFIRSTNAME=FName
&BILLTOLASTNAME=LName
&BILLTOSTREET=123 Main Street
&BILLTOSTREET2=Apt 203B
&BILLTOCITY=MyCity
&BILLTOSTATE=CA
&BILLTOZIP=77777
&BILLTOPHONENUM=4444444444
&EMAIL=myemail@somedomain.com
&CURRENCY=USD
**&TRXTYPE=A**
&SILENTTRAN=TRUE
&CREATESECURETOKEN=Y
&SECURETOKENID=a99998afe2474b1b82c8214c0824df99
Run Code Online (Sandbox Code Playgroud)
正如我所说,我得到了一个成功的响应,并转到下一步发送安全数据(CC#,EXPDATE,安全代码).当我从params中删除我的UN/PW/VENDOR /合作伙伴信息时,由于无效的用户身份验证而出现错误.但是,看到我正在动态建立第二个电话,我不能在那里使用我的PayPal/pw.我错过了什么?有人提供上述此问题或其他问题的帮助吗?
如果我需要添加任何说明,请告诉我.在此先感谢您的时间!
我已经在我的Codeigniter应用程序中集成了快速结账.现在我想整合无缝的paypal,我收集CC信息并将其传递给Paypal(通过后端),一旦一切都被批准,我的应用程序向用户显示.所有这一切都没有进入Paypal的网站.
我知道Paypal提供了大量的示例代码,但他们有很多不同的产品,他们做广告来做同样的事情.
PHP中是否有可用于处理所有这些的包装器库?
迁移到这样的系统涉及什么样的设计决策?我需要SSL证书吗?
我无法从PayPal文档中找到关于此的明确答案.
根据文件:
原始交易中返回的PNREF在参考交易中有效期为12个月.
我希望避免要求我的客户每12个月重新输入一次信用卡信息.
所以我想做的是做一个零美元的授权来存储初始的PNREF,然后在每次进行参考交易时更新该客户的PNREF值.因此,只要客户连续12个月没有交易,他们就不必重新输入他们的卡信息.
无法通过Google找到可能的答案.有谁知道你是否可以使用参考交易中的PNREF作为另一个参考交易的ORIGID?
默认情况下,Magento显示来自PayPal(PayFlow Pro)的实际响应,这并不总是那么好或友好.例如,其中一个防欺诈消息回复为"欺诈服务拒绝".有没有办法可以修改显示的响应以提供更友好的响应?
我需要复制哪些Magento核心文件然后修改以覆盖Paypal消息的默认传递?
谢谢你的帮助!
我在让 PayPal Payflow Gateway 接受包含非 US-ASCII 字符的 HTTPS POST 时遇到问题。不管我用这些特殊字符发布什么内容,它似乎只想接受 US-ASCII 编码的字节。如果我发送 UTF-8 编码的字节,它仍然有效,但无法解析某些请求 NVP 值。我知道这是可能的,因为我已经将另一个开发人员的测试页面发布到我的帐户 ( http://ccaples.com/ NVP 快速测试),并且该帖子似乎保留了特殊字符。
这是一个例子。我尝试了许多不同的 Content-Type 标头和 Accept/Accept-Charset 值,包括在文本/名称值之后的 Content-Type 中指定“; charset=UTF-8”或“; charset=utf-8”。
POST https://pilot-payflowpro.paypal.com/ HTTP/1.1
Content-Type: text/namevalue
User-Agent: KLMS Payflow API for Java
X-VPS-Request-ID: 36A4ED051A8B492ABF70E6BE51CB13D5
X-VPS-CLIENT-TIMEOUT: 20
Connection: close
X-VPS-VIT-INTEGRATION-PRODUCT: KLMS Payflow API for Java
X-VPS-VIT-INTEGRATION-VERSION: 2.0.008
X-VPS-VIT-PROXY: Y
X-VPS-VIT-RUNTIME-VERSION: 20.45-b01
X-VPS-VIT-OS-ARCHITECTURE: amd64
X-VPS-VIT-OS-VERSION: 6.1
X-VPS-VIT-OS-NAME: Windows 7
Cache-Control: no-cache
Pragma: no-cache
Host: pilot-payflowpro.paypal.com
Content-Length: 694
USER[8]=XXXXXXXX&VENDOR[13]=XXXXXXXXXXXXX&PARTNER[6]=PayPal&PWD[8]=XXXXXXXX&VERBOSITY[4]=HIGH&BILLTOEMAIL[28]=XXXXXXXX@kineticlearning.com&TRXTYPE[1]=A&TENDER[1]=C&ACCT[16]=4111111111111111&EXPDATE[4]=1117&CVV2[3]=123&BILLTOFIRSTNAME[4]=Josè&BILLTOLASTNAME[7]=Elkjærd&BILLTOSTREET[14]=123 Elm Street&BILLTOCITY[9]=Elm Creek&BILLTOSTATE[2]=VA&BILLTOZIP[5]=22203&BILLTOCOUNTRY[2]=US&BILLTOPHONENUM[12]=763-221-5593&CUSTBROWSER[108]=Mozilla/5.0 (Windows NT 6.1; …Run Code Online (Sandbox Code Playgroud) 我试图创建Payflow Pro Sandbox帐户,但我知道我们必须使用真实帐户进行测试。我是通过输入虚假的信用卡信息创建的,但是当我在单击“立即购买”按钮时使用虚假的信用卡信息时,会引发错误“信用卡信息不正确”。
有人可以帮助我通过Payflow进行信用卡测试交易吗?
我已经建立了一个网站,该网站使用PayPal Payflow API使用具有定期付款服务的实时Payments Pro帐户处理付款交易.它的工作原理是首先请求安全令牌,然后提交事务.我使用托管页面(布局c)和透明重定向工作.我正在使用Payflow_dotNet dll,它使用payflowpro.paypal.com网址.但是,当我尝试通过将交易类型设置为"R"来提交交易以设置定期付款时,我收到以下错误
"结果3 - 安全令牌创建请求的无效事务类型"
以下是我正在使用的NVP字符串示例:
PARTNER[6]=PayPal&VENDOR[13]=me&USER[6]=username&PWD[8]=password&
TRXTYPE=R&ACTION=A&INVNUM=243&PROFILEREFERENCE=243&PROFILENAME[35]=Mark Groseth -- Science Center Fund&
START=09092014&TERM=0&PAYPERIOD=MONT&AMT[4]=1.01&CURRENCY[3]=USD&
CREATESECURETOKEN=Y&SECURETOKENID[32]=05831a20674941089f68d53b7184efff&TENDER=C&
SILENTTRAN=TRUE&RETURNURL[51]=myurl&CANCELURL[42]=myurl&ERRORURL[51]=myurl&URLMETHOD=POST&
BILLTOFIRSTNAME[4]=Mark&BILLTOLASTNAME[7]=Groseth&BILLTOSTREET[20]=1234 Somewhere st 55&BILLTOCITY[7]=Houston&BILLTOSTATE[2]=TX&BILLTOZIP[5]=77018&BILLTOEMAIL[13]=mark@home.com&BILLTOCOUNTRY[2]=US&
FIRSTNAME[4]=Mark&LASTNAME[7]=Groseth&STREET[20]=1234 Somewhere st 55&CITY[7]=Houston&STATE[2]=TX&ZIP[5]=77018&EMAIL[13]=mark@home.com&
COMMENT1[19]=Science Center Fund&L_NAME0[19]=Science Center Fund&L_DESC0[19]=Science Center Fund&L_COST0[4]=1.01&L_QTY0=1&ITEMAMT[4]=1.01
Run Code Online (Sandbox Code Playgroud)
为什么这不起作用?
我是否必须创建授权交易,然后以某种方式将其转换为定期付款资料?
我正在编写一个java程序来使用paypal处理直接付款.当然,我使用的是payflow API和文件paypalflow.java.该文件需要以下凭据.我创建了一个沙盒帐户,其中包含一个Website Payments Pro预配置的测试帐户.我在哪里可以找到以下变量的凭据?
gv_BNCode = " ";
gv_APIUser = " ";
//Fill in the gv_APIPassword variable yourself, the wizard will not do this automatically
gv_APIPassword = " ";
gv_APIVendor = " ";
gv_APIPartner = " ";
gv_Env = "pilot";
unique_id = "";
Run Code Online (Sandbox Code Playgroud) 如何使用PayPal Payments Pro模拟错误?我正在尝试模拟诸如疑似欺诈,拒绝卡等内容.
我们正在使用Magento Commerce Enterprise版本,并希望能够从用户界面中看到错误.任何帮助将不胜感激.
我们正在使用PayPal沙箱进行开发.
payflowpro ×10
paypal ×10
php ×2
ajax ×1
asp.net-ajax ×1
codeigniter ×1
java ×1
magento ×1
magento-1.7 ×1
token ×1
transactions ×1
utf-8 ×1