署名DEVDIY标签Shopify, Checkout, 支付, Markets, Shopify Payments, 结账扩展原文延伸阅读https://devdiy.cn/shopify/典型现象商品加购正常进入结账页后支付方式整块空白、只剩「暂无可用支付方式」或能看到卡表单但Pay now / 立即支付按钮一直灰色点不了偶发桌面端有 Shopify Payments、手机端只剩货到付款或换了收货国家后支付选项突然消失。这类问题很少是「主题 Liquid 写错」更常见是支付渠道未对本市场币种启用、Test mode 与正式凭证混用、Markets 国家限制或Checkout UI 扩展Payment customization Function 把方式藏掉了。下面按「先看 Settings → Payments 真实状态 → 再对 Markets 与币种 → 再查结账扩展与本机干扰」排查。0. 先用无痕窗口把「是不是本机问题」排除掉正式验证一律用无痕隐私窗口直接打开店铺域名走一遍加购 → Checkout不要用主题编辑器 Preview也不要用后台「预览结账」。同时快速排除浏览器侧干扰关掉广告拦截、隐私类扩展uBlock、AdGuard、部分 Cookie 清理扩展会拦支付 iframe允许第三方 CookiePayPal、部分本地支付、Shop Pay 依赖跨站 Cookie弹窗换一台网络或关 VPN 再试部分支付商按 IP地区返回可用方式列表。若无痕 关扩展后支付方式立刻出现优先查本机扩展而不是改后台。若无痕仍空白继续第 1 步。1. Settings → Payments渠道是否真正「已启用且可用于结账」后台路径Settings → Payments设置 → 支付。逐项核对不要只看「曾经接通过」检查项后台位置常见结果Shopify Payments 状态Payments 顶部 Shopify Payments 卡片显示需要信息补全、暂停、或地区不支持时卡支付不会出现在结账第三方网关Additional payment methods / 第三方提供商已安装 App 但未 Activate或 Activate 后未完成商家入驻手动支付Manual payment methods仅影响银行转账货到付款等不会补上卡支付空白测试店铺限制开发店 / 密码保护店正式卡通道常不可用只剩 Bogus Gateway 或测试方式操作建议打开Settings → Payments看 Shopify Payments 是否为Active或你所在后台语言下的「已启用」。点进 Shopify Payments → 确认没有「需要更多信息」「账户审核中」「付款被暂停」类横幅。第三方支付如 PayPal、特定本地钱包到Settings → Apps and sales channels确认 App已安装且未过期再回 Payments 看是否显示为启用。若店铺是Development store不要用真实卡测应启用 Bogus Gateway 或 Shopify Payments 的测试模式专门验证流程再在正式店核对 live 配置。把当前状态记一笔方便回滚Shopify PaymentsActive / 暂停 / 未开通 第三方PayPal开/关其它网关名称 手动支付有/无 店铺类型正式店 / 开发店2. Test mode 与正式凭证最容易「线上突然灰掉」的配置Shopify Payments 与不少第三方网关都有Test mode测试模式Test mode 打开时结账可能只接受测试卡真实卡会被拒或按钮行为异常Test mode 关了但 API 密钥仍是 sandbox表现常是支付方式闪一下又消失或点支付后报配置错误反过来正式密钥配在测试开关下预览时「偶尔能付」、顾客端不稳定。核对路径Settings → Payments→ 进入 Shopify Payments或对应第三方→ 找到Enable test mode测试模式开关。正式接待顾客的店铺测试模式必须关闭且商户号密钥为 live。改完开关后用无痕窗口重新进入 Checkout旧结账会话可能仍缓存旧支付列表直接刷新不一定够建议清空购物车再加购一次。第三方 App 还要进 App 自己的后台看「沙盒生产」是否与 Shopify 侧一致。两边一个 sandbox、一个 live结账页经常直接不渲染该方式。3. Markets国家币种支付方式被「按市场藏起来」多市场店铺里结账可用的支付方式跟顾客所在国家市场币种绑定不是全局一份列表。后台路径Settings → Markets设置 → 市场。常见踩坑某 Market 的货币 Shopify Payments或当地支付不支持 → 该市场结账支付区空白或只剩手动支付顾客浏览器语言IP 落到了未配置好的市场和你在国内后台预览看到的市场不一致市场里关掉了 Online Store 渠道或该市场未启用结账商品运费只在部分国家可售地址填到不可售国家后结账流程卡在运费或支付前一步按钮保持灰色。对照步骤打开Settings → Markets点进出问题的市场 → 看货币、管理的国家地区列表。用该市场对应国家的地址走一遍结账不要只用默认市场地址测。回到Settings → Payments确认该币种地区下 Shopify Payments 与第三方是否仍显示可用。若刚改过市场货币等 1–2 分钟再用无痕重进结账旧 checkout session 会沿用创建时的市场上下文。运费也会间接导致「Pay 按钮灰」Settings → Shipping and delivery里若该国家没有匹配的运费方案结账往往要求先选物流未选出时支付按钮会保持不可点。先确认 Shipping 区有可选方案再判断是不是支付本身的问题。4. Checkout 扩展、Shopify Functions自定义逻辑把支付方式隐藏或把按钮卡死Checkout Extensibility 店铺上结账页可以挂UI extensions也可以用Shopify Functions例如 payment customization按购物车条件隐藏重排支付方式。后台入口大致是Settings → Checkout→Customize自定义结账看已启用的扩展Settings → Checkout相关配置以及Apps里带有 Function 的支付定制 App合作伙伴自定义 Apppayment customization Function 的规则按集合、标签、客户标签、收货国家隐藏网关。排查顺序Settings → Checkout→ Customize暂时关闭非官方、最近才装的 Checkout UI 扩展保存后无痕重测。若装过「按条件隐藏支付方式」「B2B 仅银行转账」类 App进入该 App看规则是否对当前商品客户国家生效过宽例如hide all card payments when cart 0这类误配。浏览器 F12 → Console结账页若有 extension 报错checkout-ui-extension、CORS、Failed to load先修扩展或卸载再谈支付渠道。主题 App embed不会直接改 Checkout 核心支付列表但若用了把顾客重定向到自定义结账页第三方 checkout 的 App要确认重定向目标是否仍是 Shopify Checkout。自定义 checkout 域、Thank youOrder status 扩展挂了脚本错误时有时表现为「支付已选但按钮无响应」。Console 报错比反复开关支付渠道更快定位。5. 套餐、App 安装范围与销售渠道再确认三件「后台有、结账无」的权限类原因销售渠道Settings → Apps and sales channels中 Online Store 必须启用只开了 Invoice自定义渠道时Online Store Checkout 行为会不同。支付 App 未装到当前店同一品牌多个 shop 时App 装在 A 店、B 店 Payments 里看不到属于正常。套餐限制部分本地支付、部分高级结账能力与套餐地区资格有关Payments 页若提示升级或地区不可用不要在主题里找原因。Shop Pay、Apple Pay、Google Pay 还依赖店铺主域名与品牌设置完整顾客设备浏览器支持桌面 Chrome 无 Apple Pay 是预期行为对应钱包在 Payments 里已打开。某一钱包没有 ≠ 全部支付方式消失若所有卡支付都没了回到第 1–3 步。6. Checkout 按钮灰色和「支付方式不显示」分开判断按钮灰掉但支付方式列表是完整的优先查结账表单完整性而不是 Payments现象更可能原因去哪查未填邮箱电话地址必填字段校验未通过结账页红字提示Customer contact 设置有支付方式但未选中需先点选一种支付卡PayPal 等 radio地址所在国家无运费Shipping rates 为空Settings → Shipping and delivery有运费有支付仍灰Checkout UI 扩展拦截 / JS 报错F12 ConsoleCustomize Checkout仅 Shop Pay 可点、卡灰卡通道未启用或 Test modeSettings → Payments最小化复现无痕窗口 → 同一商品 → 填完整可运达地址 → 选出运费 → 再看支付区与按钮。每变一步只改一个变量避免「改了 Markets 又清缓存」导致误判。7. 推荐排查顺序可直接贴进工单1) 无痕 关广告拦截 允许第三方 Cookie复现是否仍在 2) Settings → PaymentsShopify Payments / 第三方是否 ActiveTest mode 是否关闭 3) 用出问题国家的地址走结账对照 Settings → Markets 货币与国家 4) Settings → Shipping and delivery该国家是否有运费避免按钮因运费灰掉 5) Settings → Checkout → Customize临时停用可疑 UI 扩展 / 支付定制 App 6) F12 Console 是否有 checkout extension 报错 7) 记录市场名、币种、可见支付方式列表、按钮是否可点、店铺正式域 URL8. 验证清单做完打勾无痕窗口下正式域名结账能看到至少一种预期支付方式如信用卡或 PayPalSettings → Payments中对应渠道为已启用且Test mode 关闭正式店出问题市场的国家地址能匹配到运费Pay 按钮在选中支付方式后可点击关闭可疑 Checkout UI 扩展payment customization 后现象消失或仍在用于二分换网络关 VPN 后结果一致排除地区 IP 与扩展干扰。验证通过后把「市场 币种 支付方式截图 是否 Test mode」留在变更记录里。以后再出现「突然不显示」先看最近是否改过 Markets、支付 App 或结账扩展比从主题代码查起快得多。这篇排查笔记由 DEVDIY 整理。我们日常主要做 WordPressShopify 外贸站与微信小程序的开发和线上问题定位把结账支付这种「后台看着启用了、顾客端却是空白」的路径写成可逐步核对的步骤。