If you run an online store with external suppliers, you probably know this routine: your supplier updates their inventory, drops a CSV or XML file on an SFTP server, and you need to download it, review it, and import it into Shopify, WooCommerce, or whatever platform you use. Every day. Sometimes multiple times a day.

Miss a download, and you risk selling products that are out of stock. Download too late, and your prices are wrong for hours. The file is always there, waiting on the server. The bottleneck is you remembering to go get it.

How supplier feeds actually work

The typical ecommerce supply chain relies on flat files. Your supplier's ERP or inventory system exports a file containing current stock levels, prices, product descriptions, and availability. This file lands on an SFTP server, either theirs or a shared one.

The format is almost always CSV (comma-separated values), though some suppliers use XML or Excel files. A typical feed includes columns like SKU, product name, quantity on hand, wholesale price, retail price, weight, and category.

The frequency varies. Dropshippers with fast-moving inventory update hourly. Wholesalers with stable stock might update once a day, usually early morning. Some suppliers maintain a single file that gets overwritten; others create timestamped files like inventory_2026-04-15.csv.

What usually goes wrong

The feed itself is straightforward. The problems start with how people handle the download:

The script approach (and its limits)

Technical store owners sometimes set up a cron job with sftp or lftp on their Mac to automate the download. It works, until it doesn't:

For a developer, this is manageable. For a store owner who should be focused on product and sales, it's a maintenance burden that shouldn't exist.

Automating it with FTPull

FTPull is a Mac menu bar app that monitors an FTP, SFTP, or FTPS server and downloads new files automatically. Here's how it fits the ecommerce feed workflow:

  1. Add your supplier's SFTP connection. Hostname, port, username, password (or SSH key). FTPull stores credentials in macOS Keychain, not in a config file.
  2. Point to the remote folder where your supplier drops the feed file.
  3. Choose a local folder on your Mac where you want the files to land. This could be your desktop, a dedicated "Supplier Feeds" folder, or a folder that your import tool watches.
  4. Set the polling interval. Every 15 minutes for fast-moving inventory. Every hour for daily feeds. FTPull checks the server on schedule and only downloads files that are new or modified.
  5. Add a file filter if needed. Only download .csv files, or only files matching a pattern. Ignore temp files or backups the supplier leaves on the server.

Once enabled, FTPull runs silently in your menu bar. When a new feed file appears on the server, it downloads automatically and you get a macOS notification. No FileZilla, no terminal, no forgetting.

Multiple suppliers, one app

If you work with several suppliers, add each as a separate connection in FTPull. Each connection has its own server, credentials, remote folder, local folder, and polling schedule. They run independently.

Supplier A drops a CSV every morning at 6am on their SFTP. Supplier B updates an XML feed every 4 hours on a shared server. Supplier C overwrites a single file throughout the day. FTPull handles all three without any interaction from you.

What to do with the downloaded files

FTPull handles the transport. What happens after the file lands on your Mac depends on your setup:

Security considerations

Supplier feeds often contain wholesale pricing, stock levels, and product data you don't want exposed. Always use SFTP (port 22) rather than plain FTP. SFTP encrypts everything, including your credentials.

If your supplier offers SSH key authentication, use it. It's more secure than passwords and eliminates the risk of credential interception. FTPull supports both password and key-based authentication.

FTPull stores all credentials in macOS Keychain, which is encrypted and protected by your Mac's login password. No plaintext files sitting on your disk.

When FTPush comes in

Some workflows go the other direction. If you're the supplier and need to push updated feeds to your retailers' servers, FTPush handles the upload side. Drop your export file into a watched folder, and FTPush uploads it to the retailer's SFTP server automatically.

Together, FTPull and FTPush (bundled as FTPSuite) cover both directions of the ecommerce feed exchange.