在Authorize.net DPM(直接邮寄方式)付款成功后注册用户


Registering user after successful Authorize.net DPM (Direct Post Method) payment

Authorize.net Direct-Post方法是否可以实现以下操作?如果是这样,这将如何整合?更高级的解释会有帮助:

  • 访客需要填写新帐户的姓名、电子邮件和密码字段
  • 此用户信息仅在向authorize.net成功付款后存储在数据库中

仅供参考,我在这里使用PHP。

排除以下

由于DPM通过getCreditCardForm创建了自己的表单,并且不允许通过商家定义的字段提供"个人识别"信息,因此我看不到将其放在同一页面上的简单方法。

我不能在成功付款后放置用户注册表单,因为我不能100%确保他们会填写(假设他们断开了连接)。

可能性?

我正在考虑可能在第1页上有用户表单,在SESSION变量中存储姓名/电子邮件/通行证,并与支付表单一起转到第2页。付款成功后,将使用SESSION变量将用户存储在数据库中,会话将被销毁。我很担心在会话中存储密码的不安全性,以及这种方法可能出现的其他问题。

另一种可能是使用authorize.net字段作为电子邮件和姓名,将用户插入数据库,同时自动生成显示或通过电子邮件发送给他们的密码。我不喜欢那个主意。

我应该直接使用AIM(高级集成方法)吗?我现在就去试试。DPM已经建立了,这就是我问的原因。

我转而使用AIM。使用这里的样例代码:http://developer.authorize.net/resources/files/samplecode/php_aim.zip

我从前面的DPM getCreditCardForm中复制了表单字段的HTML/CSS,因为示例没有附带示例HTML。用户注册和支付现在在同一个表单上。现在我只需要将$_POST数据放入curl请求中,并在将用户添加到数据库之前检查它是否成功。这还不算太难。