Salesforce Paypal集成(PayFlow)

时间:2014-07-22 07:11:45

标签: rest paypal salesforce

我正在使用Rest API来获取使用唯一securityID和其他参数的安全令牌。请建议。我使用以下代码:

HttpRequest httpRequest = new HttpRequest();
httpRequest.setEndpoint('https://pilot-payflowpro.paypal.com');
String body = 'PARTNER=Paypal&PWD=pwd&VENDOR=abc&USER=abc&CREATESECURERTOKEN=Y&SECURETOKENID=9a9ea8208de1413abc3d60c86cb1f4ce&TRXTYPE=C&AMT=23.0&MODE=TEST';
httpRequest.setBody(body);
httpRequest.setMethod('GET');
Http htt = new hTTP();
HttpResponse httpRe = htt.send(httpRequest);
system.debug(httpRe.geTbody());

但我收到以下错误:RESULT = 2& PNREF = A7X06D187FF7& RESPMSG =无效招标

1 个答案:

答案 0 :(得分:0)

在将数据发布到“https://pilot-payflowpro.paypal.com”时,您缺少一个参数。您需要在请求参数中包含 TENDER = C

其次,您需要将 TRXTYPE = C替换为TRXTYPE = S ,因为TRXTYPE = C表示这是退款交易,但您正在执行销售交易。

它应该类似于以下内容:

NVP Request:
VENDOR=XXXXXXXXX&PARTNER=XXXXXXXXX&USER=XXXXXXXXX&PWD==XXXXXXXXX&AMT=12.72&TRXTYPE=S&TENDER=C&SECURETOKENID=wsw.big7jsa8la531f4x31ec3ssael7esef1.4521352289&CREATESECURETOKEN=Y

NVP Response:
RESULT=0
RESPMSG=Approved
SECURETOKEN=99UhUOS2ZWk6wDJn8kdNNeAZf
SECURETOKENID=wsw.big7jsa8la531f4x31ec3ssael7esef1** 

希望这可以帮助您调试问题。