You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel集成Google Wallet生成自定义二维码卡片时遇资源ID无效错误

解决Google Wallet通用卡片资源ID无效及发行方ID问题

1. 确认并获取发行方ID

Google Wallet所有卡片类型(包括通用卡片)都必须绑定发行方ID:

  • 登录Wallet控制台,进入发行者设置页面,即可找到你的发行方ID(格式为一串数字,如123456789012)
  • 若还未创建发行者,需先完成发行者的注册与验证流程,这是创建任何卡片的前提

2. 修正资源ID格式

错误提示Invalid resource ID: ***.test源于资源ID不符合Google Wallet规则,通用卡片的资源ID必须遵循以下格式:
[发行方ID].genericObject.[自定义唯一标识符]

  • 规则细节:
    • 开头必须是真实的发行方ID,不能用占位符或错误字符串
    • 中间固定为genericObject,对应通用卡片类型
    • 末尾的唯一标识符仅允许字母、数字、下划线、点或连字符,禁止空格和特殊字符
  • 正确示例:123456789012.genericObject.user_001

3. 调整Laravel项目配置与代码

  • 检查环境变量,确保GOOGLE_WALLET_ISSUER_ID设置为你获取到的真实发行方ID
  • 生成卡片时,按正确格式构造资源ID,示例代码:
    $uniqueId = 'user_' . auth()->id(); // 自定义唯一标识,比如关联用户ID
    $resourceId = env('GOOGLE_WALLET_ISSUER_ID') . '.genericObject.' . $uniqueId;
    
  • 确保google-wallet包的所有涉及资源ID的参数都使用上述正确格式

4. 验证排查

  • 先用Wallet控制台的API测试工具,手动构造符合格式的genericObject创建请求,验证是否能成功,排除代码之外的配置问题
  • 检查服务账号密钥的权限:确保该账号拥有Wallet Objects Editor或Wallet Objects Admin角色,否则会因权限不足导致请求失败

内容的提问来源于stack exchange,提问作者Coolguy31

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 14:06:00