不处理来自管理员和前端不同域的网络来源付款

本文为已知的Adobe Commerce 2.3.0限制提供了一个修补程序,该修补程序与无法同时从storefront和Commerce Admin处理网络源支付(如果它们位于不同的域)有关。

NOTE
核心的Adobe Commerce网络源支付集成自2.3.3之后已被弃用,并将在2.4.0中完全删除。请改用Marketplace中的正式扩展

问题

之前实施的网络源集成仅允许从一个域处理支付。 因此,如果您的Adobe Commerce店面与Commerce管理员不在同一域中,那么当您尝试在管理员中使用赛博源下订单时,会收到以下错误:“Load denied by X-Frame-Options: https://%your_domain%/cybersource/SilentOrder/TokenResponse/不允许跨域分帧。 …”

重现步骤

  1. 在其他子域上设置管理员。
  2. 在​ 商店 >设置> 配置 > 销售 > 付款方式 > 网络资源 ​下为商店配置网络资源。
  3. 转到​ 销售 > 订单
  4. 创建新订单。
  5. 创建新客户。
  6. 输入客户详细信息。
  7. 输入订单详细信息(产品、发运方法)。
  8. 选择Cybersource作为付款方法。
  9. 提交订单。

预期结果:下订单时没有问题。

实际结果:“订单”页显示加载图标,但从未下达订单。 该错误显示在控制台中。

解决方案

附加的修补程序为与Cybersource的集成提供了改进。 应用修补程序后,您需要为管理员中的网络资源再创建一个配置文件,以便处理付款,并在Commerce管理员中的网络资源配置中添加所需的凭据,其位于​ 商店 >设置> 配置 > 销售 > 付款方式 > 网络资源 ​下。

NOTE
该改进包括在Adobe Commerce本地和云基础架构2.2.9和2.3.1中。

Patch

本文附有几个修补程序,这些修补程序适用于不同的版本。 要下载补丁程序,请向下滚动到文章末尾,然后单击文件名,或单击以下链接:

兼容的Adobe Commerce版本

修补程序是为修补程序文件名中注明的特定版本创建的。 例如,MDVA-5914_EE_2.1.9_COMPOSER_v3.patch是为Adobe Commerce 2.1.9创建的,它是用于此版本的最佳修补程序。

这些修补程序还与以下版本兼容:

  • Adobe Commerce内部部署2.1.3-2.1.17;云基础架构上的Adobe Commerce 2.1.5-2.12 (MDVA-5914_EE_2.1.9_COMPOSER_v3.patch)
  • Adobe Commerce内部部署2.2.0-2.2.3;云基础架构上的Adobe Commerce 2.2.0-2.2.3 (MDVA-8609_EE_2.2.2_COMPOSER_v2.patch)
  • Adobe Commerce内部部署2.2.4-2.2.7;云基础架构上的Adobe Commerce 2.2.4-2.2.7 (MDVA-12964_EE_2.2.5_COMPOSER_v1.patch)
  • Adobe Commerce内部部署2.2.8、2.3.0;云基础架构上的Adobe Commerce 2.3.0 (MDVA-16643_EE_2.3.0_COMPOSER_v1.patch)

如何应用修补程序

有关说明,请参阅我们的支持知识库中的如何应用Adobe提供的编辑器修补程序。

附加文件

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a