Shopware Store API创建订单时,除重写CartOrderRoute外如何填充自定义字段?
填充Shopware Store API订单customFields的替代方案
除了重写CartOrderRoute,你可以采用以下几种方案来填充订单的customFields:
通过购物车中转+事件订阅同步
- 调用Store API的购物车更新接口(如
POST /store-api/checkout/cart),将自定义数据存入购物车的customFields。 - 编写事件监听器,订阅
OrderPlacedEvent或OrderWrittenEvent。在监听器中,从关联的购物车对象提取customFields数据,赋值给新创建订单的customFields并保存。
- 调用Store API的购物车更新接口(如
订单创建后API更新
成功创建订单后,立即调用PUT /store-api/order/{orderId}接口,在请求体中传入customFields字段完成更新。需确保Store API用户具备订单修改权限,且订单状态支持此类操作。会话数据传递
- 通过
POST /store-api/session接口将自定义数据存入用户会话。 - 在订单创建事件监听器中,从会话读取预存数据并写入订单的
customFields。
- 通过
内容的提问来源于stack exchange,提问作者Jacky Raimond
相关产品推荐
相关产品推荐

