本文介绍一个基于 n8n 的自动化工作流:定时获取 Steam 支付成功订单,统计每日总单数与金额,并通过飞书机器人推送日报。适用于游戏、电商等需要自动汇总订单数据并团队共享的场景。
工作流功能概述
- 定时触发:每小时自动运行一次
- 获取系统时间:动态获取当前日期
- 请求 Steam 订单数据:通过 Steam API 拉取指定日期的订单
- 解析订单信息:提取订单列表
- 遍历与筛选:批量处理订单,仅保留支付成功的订单
- 数据统计:计算总订单数与总金额
- 推送飞书:自动生成日报并推送到飞书群
节点与流程详解
- 定时触发
- 使用 Schedule Trigger 节点,每小时自动启动一次流程。
- 获取系统时间
- DateTime 节点获取当前时间,Set 节点格式化为 yyyy-MM-dd。
- 请求 Steam 订单数据
- HTTP Request 节点调用 Steam MicroTxn API,传入日期参数,获取订单报表。
- 解析订单信息
- SplitOut 节点提取 response.params.orders 字段,获得订单数组。
- 遍历所有订单
- SplitInBatches 节点分批处理订单,提升效率。
- 订单状态判断
- If 节点筛选 status 字段为 Succeeded 的订单。
- 合并成功订单
- Merge 节点将所有成功订单合并。
- 计算总金额和总单数
- Code 节点遍历订单,累加金额与数量,输出统计结果。
- 发送飞书通知
- HTTP Request 节点调用飞书机器人 Webhook,推送格式化日报。
关键代码片段
统计总金额与单数(Code节点):
var totalOrder = $input.all().length
var totalMoney = 0
for (const item of $input.all()) {
for (const item1 of item.json.items) {
totalMoney += item1.amount
}
}
return {
json: {
money: totalMoney/100,
count: totalOrder,
currentDate: $('格式化时间').first().json.currentDate
}
}
使用场景
- 游戏/电商平台自动汇总每日订单
- 财务、运营团队自动接收日报
- 需要对接 Steam 订单 API 并自动推送消息的业务
注意事项
- 需替换 Steam API Key、AppID、飞书 Webhook 地址为你自己的信息
- 建议为飞书机器人设置安全限制,防止滥用
- 订单金额单位为分,需除以 100 转为元
- 可根据实际需求调整定时频率、推送内容等
小结
本工作流实现了 Steam 订单自动统计与飞书日报推送,极大提升了数据汇总与团队协作效率。n8n 的可视化流程让自动化变得简单易用,适合各类业务场景扩展。
参考文档:n8n官方文档 | Steam MicroTxn API