リンク: 博客园 – 思想和风的收藏馆 – .net下paypal的电子支付方式编程(1).

文只讨论并记述了利用paypal Express
Checkout方式支付,目前中文的paypal(贝宝)不能和其他paypal互相支付,可能是因为国内汇市还未开放的问题,这里因为我的客户不需要
处理贝宝,所以我也没有看他的资料,但我想应该差不多。本文很多地方是引用
PP_WebsitePaymentsPro_IntegrationGuide.pdf
中内容并汉化了,但其中有些细节的地方,本人做了详细说明,这样可以减少您开发时候的一些迷惑,所以,当你看到有熟悉文字时,请理解作者的苦心,呵呵,有
问题的朋友可以在这里或在西客集留言来找我

众所周知 paypal是ebay旗下的电子支付网关,去年还收购了Verisign,啧啧,难道他要一统电子支付的江湖?

paypal 本身是通过Email就可以收取或支付钱的电子支付网关,但他也同时支持对信用卡如 VISA Card, MasterCard, American Express,

Discover Card这些烂玩意儿收取,如同Verisign那样,并称为paypal Direct payments,但听说手续费太贵了,我的客户没有用它的这个功能,所以我也没有研究,但我想既然我们目前使用的Verisign都让人家收购了,我想 我们用他的Direct payments日子也不远了

还有一种比较简单的称为WebsitePaymentsStandard支付方式,这个比较简单,比较适合在虚拟主机上架设自己电子商务网站的用户,而WebsitePaymentsPro才是一个成熟电子商务网站需要的,下面请听寡人一一为您道来

1 安装篇
这里不得不说paypal做的仔细,竟然专门开发了一个称为sandbox[我叫他傻盒,呵呵]用来进行开发人员测试,精力充沛阿

a 安装Microsoft .NET Framework Service Pack 1 或者你直接用 Microsoft .NET Framework2.0
 
b 安装OpenSSL for Microsoft Windows ,没有的朋友去http://www.slproweb.com/products/Win32OpenSSL.html 找并安装

c 安装WinHttpCertCfg.exe ,没有的朋友去http://www.microsoft.com/downloads/details.aspx?displaylang=en&familyid=C42E27AC-3409
40E9-8667-C748E422833F 找并安装,并在你的环境变量 path 增加对WinHttpCertCfg.exe所在目录的引用

d  到https://developer.paypal.com/ 注册并建立你的测试帐户,这里需要注意,注册成功后需要到sandbox中建立一个Business account


左右收款方,一个Personal account 为付款方,都是测试用途,email地址不会和你现有paypal发生冲突的,最后记得去Email那个Tab页去激活你

的帐户,并给你的Business account增加一个bank,两个帐户都增加信用卡什么的

e  从sandbox中进入你刚才建立的 Business account 中,找到API Access link,作一个request,然后你刷新你的sandbox,察看 test

Certificates 就可以看到一个证书了,这证书是你的通行证,点击他并下载吧

f  将证书转换为p12格式,你问我啥是p12格式,我也不知道,用如下命令
       openssl pkcs12 -export -inkey cert_key_pem.txt -in cert_key_pem.txt -out mycert.p12 记得写在一行,
     其中cert_key_pem.txt是source file   mycert.p12 target file

g  安装证书到windows系统 用命令
   WinHttpCertCfg -i mycert.p12 -p certPassword -c LOCAL_MACHINE\my -a account
     其中certPassword 是你证书的密码,别说你忘了  account是windows帐户名称,这里我建议为everybody,可以省却许多麻烦
不放心可以指定 mycert.p12文件的路径
   
   上面两个命令都是在 command line中做的

h  安装  PayPal_AspNet_SDK_v3_2.msi ,在那里下载的我忘记了,反正在www.paypal.com的某个地方

i  测试你的安装,找到SDK_root\bin\Console.exe 文件并执行,其中SDK_root指的是PayPal_AspNet_SDK的安装路径
    出现小窗口后 执行
     1 AddAPIProfile apiUsername sandbox    其中apiUsername 就是你下载证书那页的api user name,想起来了么
     2 SetAPIProfile 0 apiPassword          其中 apipassword就是你证书的密码,不能错哦
     3 GetRequestTemplate TransactionSearch search-template.txt 这是从paypal返回一个测试文件的命令,成功后会在SDK_root\bin\路

径下出现一个search-template.txt文件,如果没有文件,系统会提示你错误的
     4 修改search-template.txt文件内容为
<TransactionSearchRequestType>
<StartDate xmlns=”urn:ebay:api:PayPalAPI”>0001-01-
01T00:00:00.0000000-08:00</StartDate>
</TransactionSearchRequestType>
并save一下,
执行Call TransactionSearch search-template.txt,看返回的新息中有没有Success这个字,有的话,恭喜你,你安装成功了!
没有的话也别灰心,按照这些步骤仔细检查,不会出错的,当然,你的网络条件要差不多哦

喜欢的朋友请顶下,我不知道大家喜欢这样的文章。。想知道还没有必要写下去