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

Shopware 6/5应用开发:如何获取应用安装用户与店铺信息?

Shopware 6 & 5 获取应用安装者信息与店铺名称方案

Shopware 6 实现方案

核心思路

在应用安装的confirm阶段,通过申请API权限,调用Shopware官方接口获取店铺名称和安装用户信息,云市场与自托管环境流程一致。

具体步骤

  1. 在应用manifest.xml中添加必要权限
    需要申请读取销售渠道(店铺)和后台用户的权限,在manifest中加入:

    <permissions>
        <permission>read_sales_channel</permission>
        <permission>read_user</permission>
    </permissions>
    
  2. 从confirm请求中提取关键凭证
    处理confirm请求时,你已经能拿到shopId(对应SalesChannel ID)、accessToken和店铺URL,这些是后续API调用的核心凭证。

  3. 调用API获取店铺名称
    以accessToken作为Bearer Token,向Shopware API发送GET请求:

    GET {店铺URL}/api/sales-channel/{shopId}
    Headers: Authorization: Bearer {accessToken}
    

    响应体中的name字段即为店铺名称。

  4. 调用API获取安装用户信息
    同样使用accessToken,调用用户信息接口获取触发安装的后台管理员:

    GET {店铺URL}/api/user/me
    Headers: Authorization: Bearer {accessToken}
    

    响应体包含用户的邮箱、姓名等核心信息,可直接用于发送注册邮件。

补充说明

  • 若需要更实时的触发,可监听Shopware的app.installed Webhook事件,事件payload中会包含安装用户的ID,再通过/api/user/{userId}接口获取详细信息。
  • 云市场安装的应用,API调用逻辑与自托管完全一致,无需额外适配。

Shopware 5 实现方案

店铺名称获取

利用Shopware 5自带的shops API接口,在安装流程中拿到店铺ID后,调用:

GET {店铺URL}/api/v1/shops/{shopId}
Headers: Authorization: Bearer {accessToken}

响应体中的name字段即为店铺名称。

安装用户信息获取

  1. 若应用是通过Shopware Connect安装,可在confirm回调请求中检查是否携带userId参数(部分版本会直接传递)。
  2. 若未直接传递,可申请read_users权限后,调用/api/v1/users接口,结合安装上下文(如当前会话关联的用户)筛选出安装者;或通过监听插件安装的PostInstallEvent事件,在事件中直接获取触发安装的用户实例(仅适用于自托管环境下的本地插件安装)。

内容的提问来源于stack exchange,提问作者Kryštof Řeháček

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 22:53:08