如果你经营着一家有外部供应商的在线商店,你可能很熟悉这个流程:供应商更新库存,在SFTP服务器上放置CSV或XML文件,你需要下载它,检查它,然后导入到Shopify、WooCommerce或你使用的任何平台。每天如此。有时一天好几次。
错过一次下载,你就可能销售已经缺货的产品。下载太晚,你的价格会错误显示好几个小时。文件始终在服务器上等着你。瓶颈在于你是否记得去获取它。
供应商数据源的工作方式
典型的电商供应链依赖于扁平文件。供应商的ERP或库存管理系统导出包含当前库存水平、价格、产品描述和可用性的文件。这个文件被放置在SFTP服务器上——供应商自己的服务器或共享服务器。
格式几乎总是CSV(逗号分隔值),不过有些供应商使用XML或Excel文件。典型的数据源包含SKU、产品名称、库存数量、批发价、零售价、重量和类别等字段。
更新频率各不相同。库存变动快的代发货商每小时更新一次。库存稳定的批发商可能每天更新一次,通常在清晨。有些供应商维护一个不断覆盖的单一文件;也有些创建带时间戳的文件,如inventory_2026-04-15.csv。
常见问题
数据源本身很简单。问题出在人们处理下载的方式上:
- 忘记下载。你在早上9点打开FileZilla,获取文件,导入。但周二9点你有个会议,忘了这件事。到中午时,已经有12个订单发出了供应商已标记为缺货的产品。
- 格式突变。供应商将CSV分隔符从逗号改为分号,或添加了新列。导入失败了,直到客户投诉价格错误你才发现。
- 多个供应商。你与三个供应商合作,每个都有自己的SFTP服务器、时间表和文件格式。每天早上登录三个不同的服务器,正是那种容易遗忘的任务。
- 时区差异。你的亚洲供应商在你这里的凌晨2点更新数据源。等你9点下载时,数据已经过时7个小时了。
脚本方式(及其局限)
技术型店主有时会在Mac上用sftp或lftp设置cron定时任务来自动化下载。能用的时候没问题,但出问题时:
- 下载失败时没有通知。它只是悄悄停止了。
- 没有UI来检查状态或历史记录。你得用grep翻查日志文件。
- 凭据以明文存储在磁盘上的配置文件中。
- 如果服务器更改了主机密钥,脚本会挂起等待确认。
对开发者来说,这是可以应付的。但对于应该专注于产品和销售的店主来说,这是不应该存在的维护负担。
用FTPull实现自动化
FTPull是一款Mac菜单栏应用,能监控FTP、SFTP或FTPS服务器并自动下载新文件。以下是它如何适配电商数据源工作流程:
- 添加供应商的SFTP连接。主机名、端口、用户名、密码(或SSH密钥)。FTPull将凭据存储在macOS钥匙串中,而非配置文件。
- 指定远程文件夹。供应商放置数据源文件的文件夹。
- 选择本地文件夹。Mac上用于存放文件的文件夹。可以是桌面、专用的"供应商数据源"文件夹,或导入工具监控的文件夹。
- 设置轮询间隔。库存变动快的设为15分钟。日更新的数据源设为每小时。FTPull按计划检查服务器,只下载新增或已修改的文件。
- 按需添加文件过滤器。仅下载
.csv文件,或仅匹配特定模式的文件。忽略供应商留在服务器上的临时文件或备份。
启用后,FTPull在菜单栏静默运行。当服务器上出现新的数据源文件时,它会自动下载并向你发送macOS通知。不需要FileZilla,不需要终端,也不会忘记。
多个供应商,一个应用
如果你与多个供应商合作,将每个供应商作为FTPull中的独立连接添加。每个连接有自己的服务器、凭据、远程文件夹、本地文件夹和轮询计划。它们独立运行。
供应商A每天早上6点在其SFTP上放置CSV。供应商B在共享服务器上每4小时更新一次XML数据源。供应商C全天覆盖同一个文件。FTPull无需你的任何操作即可处理所有三个供应商。
下载文件后的处理
FTPull负责文件传输。文件到达Mac后如何处理取决于你的设置:
- 手动检查和导入。在Excel或Numbers中打开CSV,检查异常,然后手动上传到商店平台。这是刚开始时最安全的方式。
- Shopify应用。EZ Inventory、Stock Sync(syncX)、Matrixify等工具可以监控本地文件夹或接受定时上传。FTPull放置文件,应用自动获取。
- WooCommerce插件。WP All Import或WebToffee等导入插件可以按计划处理CSV。
- 自定义脚本。如果你有将供应商CSV转换为平台格式的Python或Node脚本,将其指向FTPull的输出文件夹。
安全注意事项
供应商数据源通常包含批发价格、库存水平和不宜公开的产品数据。请始终使用SFTP(端口22)而非普通FTP。SFTP会加密包括凭据在内的所有内容。
如果供应商提供SSH密钥认证,请使用它。它比密码更安全,消除了凭据被截获的风险。FTPull同时支持密码认证和密钥认证。
FTPull将所有凭据存储在macOS钥匙串中,钥匙串经过加密并受Mac登录密码保护。磁盘上不会留下明文文件。
FTPush的用武之地
有些工作流程方向相反。如果你是供应商,需要将更新的数据源推送到零售商的服务器,FTPush负责处理上传。将导出文件放入监控文件夹,FTPush会自动上传到零售商的SFTP服务器。
FTPull和FTPush捆绑为FTPSuite,涵盖电商数据源交换的双向需求。