今天我们聊聊Payments报表是怎样获取的。
01知识点
先讲几个概念性的知识。
1)Payments
付款报告,是Amazon自动生成的与卖家的结算数据报表,卖家可以在此了解指定结算周期内的交易细目、资金往来。
Payments精确到每一笔明细,也就是order,这个order不单单是卖家的销售order,包括其他费用也是,比如coupon、deals或者remove等。
2)爬虫
是一个程序或者脚本,可以按照一定的规则,让系统自动爬取网络上的信息,现在用的比较多的爬虫语言是Python。
02设计方案
1)确定方案
Payments是没有对外api的,只能采取爬虫形式获取,我们可以用爬虫模拟人工点击,打开菜单,选择条件,点击下载文件,再将文件传至系统服务器,解析后保存到数据库里。
2)搭建开发环境
Payments是没有对外api的,只能采取爬虫形式获取,所以首先需要搭建开发环境。
这里要注意,Payments不同于review那些,是需要登录后台的,要知道,Amazon对于账号登录是有很强的关联判断,所以要做好防关联措施。
我们可以在每个账号对应的虚拟机(宝莲云等)搭建一套开发环境,爬取该账号的后台数据。
3)确定路径
Reports >> Payments >> Standard Orders/Invoiced Orders >> Date Range Reports >> Generate Report,点击Download;
4)设置定时任务
按实际需求,按天、周、月都可以,一般根据公司的运营会议频次来定,或者说出损益表的频次,比如我们公司按周统计损益表,我们就是一周下载一次。
同时,因为爬虫的不稳定性,可能一次下来因为一些原因失败,建议多几次任务。
定时任务该这样写:
新建定时任务,每周天从0点开始,每隔3h执行一次,选取日期范围为上周六到本周六的数据,按结算单号覆盖最新的数据,添加上系统日期。
为什么要到本周六而不是本周五?像欧洲因为时差原因,选择本周五的话,晚上22点之后两个小时的数据会获取不到的。
5)获取字段
因为不同站点语言不一样,我拿英文的举例下。
date/time(日期)
settlement id(结算单号)
type(类型)
order id(订单号)
sku(sku)
description(产品描述/名称)
quantity(数量)
marketplace(市场)
fulfilment(配送方)
order city(城市)
order state(州)
order postal(邮编)
tax collection model(税收模式)
product sales(商品价)
product sales tax(商品税)
postage credits(配送费)
shipping credits tax(配送税)
gift wrap credits(礼品包装费)
giftwrap credits tax(礼品包装税)
promotional rebates(促销折扣费)
promotional rebates tax(促销折扣税)
marketplace withheld tax(商场预扣税)
selling fees(营业税)
fba fees(FBA物流费)
other transaction fees(其他交易费)
other(其他)
total(合计)
可以看下右边的中文注释,这些是我自己翻译的,我们在菜单展示的时候要用中文,不要直译或者谷歌&百度翻译,会很奇怪,这里有两个技巧:
下载的报表表头是根据站点显示对应的语言的,比如法国显示法语、德国显示德语,所以需要做好表头字段转换对应,要考虑到所有语言;
可以转化为我们自己的系统意思,差几个字也无所谓,表达出结果没错就好。
同时要注意,不同的站点下载的报表表头字段不一样的,有些国家有这个,有些国家没有,比如日本有Amazon积分的费用。
6)关联字段
关联字段就是根据爬到的字段关联出另外一些我们需要的字段。
公司产品信息:根据sku关联我们自己的系统维护的数据,比如公司的产品编码、品牌、系列等;
字段统一:比如说类型或者说明,我们会定义比较规范的几个,或者适应我们公司的一些,按这个处理后续数据;
是否其他平台订单:Payments也会把非Amazon销售,但是通过Amazon发货,比如FBA,这种费用产生的订单也会记录,Shopify等,这类订单其实不属于Amazon运营的小伙伴,就要区分开来,加个字段,可以通过order id去关联对应的平台;
账号所属公司:可以根据账号关联出所属公司;
填充sku:像是coupon、deal、remove这些,Payments是没有sku的,但是对应的子报表有,就可以根据账号+站点+order+费用去关联出,如果子报表出现多行(或多个sku),建议拆分处理,因为要精确到每个sku,这是最准确的数据;
...
7)建立菜单
拉取数据后需要在界面展示,菜单简单一些就好,正常的web端表单菜单,有一些查询、重置、导出按钮,有一些查询条件就够了。
这里可以有两个菜单:
一个可以是爬取的历史数据,即爬下来未经过任何处理的,这个为了后续可以查数据;
另一个是经过一些规则处理的,比如填充部分字段、拆分、合并等。
8)报表分析
Payments是为了分析Amazon损益表的,它是损益表的基础数据,当然,要完成损益表分析,还会加上其他报表,要综合来看。
9)其他注意事项
一定要多次爬取,或者有失败重爬机制,同时要注意做好防关联措施;
Payments有跟很多子报表关联,比如前面提到的各类费用报表,这些里面是有sku的,就可以根据账号+站点+order+某个费用金额匹配出子报表的sku;
Amazon官方的一篇解释:
https://sellercentral.amazon.co.uk/gp/help/external/201634550?language=zh_CN
10)第三方平台推荐
如果自己的技术处理不了,可以采取对接第三方平台,比如紫鸟浏览器等。
希望简单的一些文字对大家产品方面的学习有些帮助。
关注微信公众号,获取更多产品信息:PMThoughts