OpenCart 3.0(3.x)+ Authorize.net - 如何仅禁用Authorize.net电子邮件?

时间:2017-12-05 22:35:38

标签: opencart authorize.net

我们目前通过电话接受信用卡(将订单信息输入虚拟终端)以及网站(OpenCart,使用内置的Authorize.net AIM模块)。

问题:当订单放在网站上时,客户收到2封电子邮件 - 我们网站收到1封电子邮件,授权收到1封电子邮件。授权电子邮件是纯文本,看起来很难看AF,而我的老板想要禁用它。

尝试#1:查看Authorize.net AIM插件/模块设置。没有这样的选择。

尝试#2:在Authorize.net帐户的“设置 - >电子邮件收据”下,有一个复选框“向客户发送电子邮件交易收据(如果提供了电子邮件地址)”。

结果#2:不幸的是,这会禁用所有交易电子邮件 - 来自网站交易(OK)和虚拟终端电话订单交易(非酷)。我们必须向电话客户提供电子邮件收据。

尝试#3:在OpenCart系统中,编辑文件:

catalog/controller/extension/payment/authorizenet_aim.php

注释掉

$data['x_email'] = $order_info['email'];

结果#3:在结账时,即使输入了有效的电子邮件,在尝试提交订单时,也会显示“需要电子邮件地址”错误消息。

所以... 无法在OpenCart中的授权插件/模块中禁用它。 无法在授权帐户设置中禁用它。 不能只是从结账时OpenCart收集的数据数组中删除电子邮件。

如何在OpenCart 3.0上构建的网站上禁用Authorize.net电子邮件(仅限Authorize.net电子邮件,我仍希望收到网站收据)?

3 个答案:

答案 0 :(得分:1)

找到解决方案(通过Authorize.net开发者论坛)。比我想象的更简单:

  1. 打开文件:public_html / catalog / controller / extension / payment / authorizenet_aim.php
  2. 查找行:$ data [' x_relay_response'] =' false';
  3. 之后添加: $ data [' x_email_customer'] =' false';
  4. 这样可以在没有错误的情况下完成结账流程,并将交易发送到Authorize.net以及不通过电子邮件发送给客户的指示。

答案 1 :(得分:0)

这不是一个很好的解决方案,但您可以将发送到Authorize.net的电子邮件地址更改为商店管理员电子邮件,在这种情况下,它不会向您提供“需要电子邮件地址”错误消息,你会收到那封电子邮件,而不是客户。

答案 2 :(得分:0)

在尝试编号3中,您是否可以确认OpenCart是否提供了有关所需电子邮件的错误,或者Authorize.Net是否给出了该错误?如果Authorize.Net提供错误,可以通过调整Authorize.Net中的付款表单设置进行协调: 1.登录Authorize.Net 2.帐户>付款方式>表格字段 3.确保未按要求检查电子邮件字段。 4.将更改保存在页面底部