如果你经营着一家有外部供应商的在线商店,你可能很熟悉这个流程:供应商更新库存,在SFTP服务器上放置CSV或XML文件,你需要下载它,检查它,然后导入到Shopify、WooCommerce或你使用的任何平台。每天如此。有时一天好几次。

错过一次下载,你就可能销售已经缺货的产品。下载太晚,你的价格会错误显示好几个小时。文件始终在服务器上等着你。瓶颈在于你是否记得去获取它。

供应商数据源的工作方式

典型的电商供应链依赖于扁平文件。供应商的ERP或库存管理系统导出包含当前库存水平、价格、产品描述和可用性的文件。这个文件被放置在SFTP服务器上——供应商自己的服务器或共享服务器。

格式几乎总是CSV(逗号分隔值),不过有些供应商使用XML或Excel文件。典型的数据源包含SKU、产品名称、库存数量、批发价、零售价、重量和类别等字段。

更新频率各不相同。库存变动快的代发货商每小时更新一次。库存稳定的批发商可能每天更新一次,通常在清晨。有些供应商维护一个不断覆盖的单一文件;也有些创建带时间戳的文件,如inventory_2026-04-15.csv

常见问题

数据源本身很简单。问题出在人们处理下载的方式上:

脚本方式(及其局限)

技术型店主有时会在Mac上用sftplftp设置cron定时任务来自动化下载。能用的时候没问题,但出问题时:

对开发者来说,这是可以应付的。但对于应该专注于产品和销售的店主来说,这是不应该存在的维护负担。

用FTPull实现自动化

FTPull是一款Mac菜单栏应用,能监控FTP、SFTP或FTPS服务器并自动下载新文件。以下是它如何适配电商数据源工作流程:

  1. 添加供应商的SFTP连接。主机名、端口、用户名、密码(或SSH密钥)。FTPull将凭据存储在macOS钥匙串中,而非配置文件。
  2. 指定远程文件夹。供应商放置数据源文件的文件夹。
  3. 选择本地文件夹。Mac上用于存放文件的文件夹。可以是桌面、专用的"供应商数据源"文件夹,或导入工具监控的文件夹。
  4. 设置轮询间隔。库存变动快的设为15分钟。日更新的数据源设为每小时。FTPull按计划检查服务器,只下载新增或已修改的文件。
  5. 按需添加文件过滤器。仅下载.csv文件,或仅匹配特定模式的文件。忽略供应商留在服务器上的临时文件或备份。

启用后,FTPull在菜单栏静默运行。当服务器上出现新的数据源文件时,它会自动下载并向你发送macOS通知。不需要FileZilla,不需要终端,也不会忘记。

多个供应商,一个应用

如果你与多个供应商合作,将每个供应商作为FTPull中的独立连接添加。每个连接有自己的服务器、凭据、远程文件夹、本地文件夹和轮询计划。它们独立运行。

供应商A每天早上6点在其SFTP上放置CSV。供应商B在共享服务器上每4小时更新一次XML数据源。供应商C全天覆盖同一个文件。FTPull无需你的任何操作即可处理所有三个供应商。

下载文件后的处理

FTPull负责文件传输。文件到达Mac后如何处理取决于你的设置:

安全注意事项

供应商数据源通常包含批发价格、库存水平和不宜公开的产品数据。请始终使用SFTP(端口22)而非普通FTP。SFTP会加密包括凭据在内的所有内容。

如果供应商提供SSH密钥认证,请使用它。它比密码更安全,消除了凭据被截获的风险。FTPull同时支持密码认证和密钥认证。

FTPull将所有凭据存储在macOS钥匙串中,钥匙串经过加密并受Mac登录密码保护。磁盘上不会留下明文文件。

FTPush的用武之地

有些工作流程方向相反。如果你是供应商,需要将更新的数据源推送到零售商的服务器,FTPush负责处理上传。将导出文件放入监控文件夹,FTPush会自动上传到零售商的SFTP服务器。

FTPull和FTPush捆绑为FTPSuite,涵盖电商数据源交换的双向需求。