支付平台因超时或重试重复发送 Webhook 是正常机制,Magento 2 接口必须做到幂等。本文说明事件去重、事务锁、订单状态判断和响应时机,避免重复开票与重复发货。

继续阅读

加入购物车或结账接口返回 No such entity with cartId,通常不是商品不存在,而是前端保存的 mask ID、客户会话和数据库 Quote 已经不同步。本文沿 guest cart 与 customer cart 两条路径定位。

继续阅读

后台手工改了订单状态,几分钟后又自动恢复,通常是支付回调、Cron、ERP 同步或状态机重新保存订单。本文区分 state 与 status,并追踪最后一次写入来源。

继续阅读

商品页显示有货,加入购物车也成功,提交订单时却缺货,往往是展示库存、salable quantity 和结账时重新校验的时间点不同。本文用 MSI reservation 还原数量变化。

继续阅读

Credit Memo 已生成、支付也退了款,库存却没增加。除 Return to Stock 外,还要看退款入口、发货 Source、MSI deduction、商品类型与外部仓库同步。

继续阅读

地址表单提交时有省份,重新打开却为空,需要区分 region_id 与 region 文本、国家配置、客户地址 EAV 属性和自定义保存逻辑。本文沿请求到 customer_address_entity 定位。

继续阅读

购物车显示优惠码已应用,但 discount_amount 仍为零,可能是规则条件、Action 范围、Coupon 绑定、网站/客户组或 Totals 重算被扩展覆盖。本文用 Quote 数据判断。

继续阅读

Deadlock found when trying to get lock 偶发重试可以恢复,但持续发生说明两个事务以不同顺序锁定相同资源。本文用 InnoDB deadlock 记录追到订单、库存和索引代码。

继续阅读

结账页可以填写地址,却显示 No payment methods available,通常不是支付模块整体失效,而是国家、币种、订单金额、客户组或接口异常把所有方式过滤掉。

继续阅读

客户收到两封发货邮件时,先区分是否创建了两张 Shipment、同一 Shipment 被 send 两次,或邮件队列重复消费。三种问题修复位置完全不同。

继续阅读

项目 151 到 160 共 283个

每页
设置升序顺序