Node.js nodejs-Can';我无法让paypal ipn正常工作。Paypal一直在回归;“无效”;

Node.js nodejs-Can';我无法让paypal ipn正常工作。Paypal一直在回归;“无效”;,node.js,paypal,paypal-ipn,Node.js,Paypal,Paypal Ipn,我正在尝试使用nodejs模块paypal ipn来验证对paypal的支付 我将以下格式的数据传递到验证方法中 { tx: '60R52218GS3878125', st: 'Completed', amt: '0.01', cc: 'GBP', cm: '', item_number: '' } 每次我使用它,我都会收到来自Paypal的“无效”回复。你在向Paypal发回什么?根据中的“示例IPN消息和响应”一段,您需要将收到的字符串发回。即 PayPal以19.95

我正在尝试使用nodejs模块paypal ipn来验证对paypal的支付

我将以下格式的数据传递到验证方法中

{ tx: '60R52218GS3878125',
  st: 'Completed',
  amt: '0.01',
  cc: 'GBP',
  cm: '',
  item_number: '' }

每次我使用它,我都会收到来自Paypal的“无效”回复。

你在向Paypal发回什么?根据中的“示例IPN消息和响应”一段,您需要将收到的字符串发回。即

PayPal以19.95澳元的价格发送一条类似于下面的消息 通过快速结帐进行的购买:

mc_gross=19.95和保护_资格=合格和地址_状态=已确认和付款人_id=LPLWNMTBWMFAY和税务=0.00和地址_street=1+Main+St&payment_日期=20%3A12%3A59+Jan+13%2C+2009+PST&payment_状态=已完成和charset=windows-1252和地址_zip=95131&first_姓名=测试和mc费用=0.88和地址_国家代码=美国和地址_姓名=测试+通知版本=2.6和付款人_状态=已验证和地址\国家=美国+美国和地址\城市=圣何塞和数量=1和验证\符号=AtkOfCXbDm2hu0ZELryHFjY-Vb7PAUvS6nMXgysbElEn9v-1XcmSoGtf和付款人\电子邮件=gpmac \ 1231902590 \每%40paypal.com和txn \ id=61E6768CH3238416和支付\类型=即时和最后一个\姓名=用户和地址\州=CA和接收人\电子邮件=gpmac \ 1231902686\商业%40paypal.com和支付id=0.88=S8XGHLYDW9T3S&txn\u类型=快速付款和项目名称=&mc\u货币=美元和项目编号=&residence\u country=美国和测试\u ipn=1&处理金额=0.00&交易主题=&payment\u gross=19.95&装运=0.00

在信任邮件内容之前,必须先 验证消息是否来自PayPal。要验证消息,请 必须按照收到和接收的确切顺序发回内容 在其前面输入命令_notify-validate,如下所示:


因此:在尝试验证之前,不要更改您收到的数据。

这些是您从IPN收到的所有字段/值吗?注意,如果使用沙盒,它将始终返回无效。至少对我来说它死了。相同的代码返回无效的沙盒,并在实时事务中验证。