1. Integrations
  2. Dropbox
  3. FTP or SFTP

+

Dropbox FTP / SFTP - Upload and download via FTP

Dropbox and FTP Flows

Use FTP and Dropbox together to create a way to get files to and from Dropbox via a FTP or SFTP server. Set up a Dropbox FTP workflow on EasyCSV and automate the process.

Dropbox has no FTP or SFTP server. There's no host to connect to, no port 22, no credentials buried in account settings — everything moves through their HTTPS API, and the desktop app is just a client talking to that API. So if a supplier or client hands you FTP details and says "point Dropbox at this," there's nothing to point.

What works instead is a scheduled sync between an FTP/SFTP server and a Dropbox folder. Files land where they need to land, on a schedule, without anyone opening FileZilla. Both directions are covered below. You will want to get a cheap FTP server from via Hetzner Storage Boxes or your favorite web hosting provider. Then use that with EasyCSV to proxy to and from Dropbox.

Scope note: this is for CSV and XLSX files — data feeds, exports, spreadsheets. If you need to sync PDFs, product photos, or video between Dropbox and an FTP server, this is the wrong tool.

The problem, concretely

A supplier posts an inventory file to their SFTP server every night around 2am. inventory_20260805.csv.

That file needs to be in Dropbox, because that's where the team works and where the reporting sheet pulls from. The manual version is downloading it every morning and dragging it across. That holds up until someone takes a vacation day.

Workflow 1: Pull files from FTP/SFTP into Dropbox

This is a Scheduled Fetcher in EasyCSV. It logs into your FTP, FTPS, or SFTP server on a schedule, grabs new files, and pushes them into Dropbox. Setup takes about five minutes.

1. Define the file's shape. EasyCSV needs to know what columns to expect. Upload a sample 'inventory.csv'. Using a real file the supplier already sent is faster, and it catches things like a stray BOM character or a column nobody mentioned.

2. Add the Scheduled Fetcher. Choose FTP/SFTP as the source, then fill in host, username, password, and the directory to watch. For SFTP you can authenticate with an SSH key instead of a password, which is the better option if the other side supports it. Port 21 is the FTP default and 22 is the SFTP default — leave the port field blank if you're on either.

3. Set the schedule. If the supplier drops files at 2am, don't check at 2am. Check at 4am. Feeds run late constantly, and a fetcher that runs before the file exists just logs an empty run.

4. Send it to Dropbox. Pick Dropbox as the destination, authorize the account, and choose the folder. Use date variables in the output filename — inventory_{YYYY}{MM}{DD}.csv resolves to inventory_20260805.csv, so you keep a history instead of overwriting the same file daily. Ending the filename in .xlsx instead of .csv produces an Excel file, which is worth doing if the people opening it in Dropbox aren't technical and tend to mangle CSVs.

Create this workflow

Worth knowing: the file gets parsed on the way through, not just copied. You can drop columns the team doesn't need, rename qty_on_hand to something readable, or filter out rows where qty_on_hand is 0 before anything reaches Dropbox. A raw FTP-to-Dropbox pipe can't do that — it moves bytes and nothing else.

Takeaway: schedule the fetch later than the stated drop time, and use {YYYY}{MM}{DD} in the output filename so you keep a history rather than one perpetually overwritten file.

Workflow 2: Push files from Dropbox to an FTP/SFTP server

The reverse case is just as common. A file gets produced on your side — an order export, a price list, a reconciliation file — and a partner expects it on their FTP server. They're not going to accept a Dropbox share link. They have a script watching a directory, and that script wants a file in that directory.

Say the team drops 'orders_export.xlsx' into a Dropbox folder each afternoon.

The warehouse wants that as a pipe-delimited CSV on their SFTP server, in /incoming/orders/, named with the date. Setup is the same four steps, pointed the other way.

1. Define the file's shape. Same as before — upload a sample export or type the headers.

2. Set Dropbox as the source. Authorize the account and choose the folder to watch. EasyCSV picks up new files as they appear rather than re-processing the same one.

3. Choose FTP or SFTP as the destination. Host, username, and either a password or an SSH key. Set the target directory to /incoming/orders/. Leave the port blank for 21 or 22.

4. Configure the output file. This is where the delimiter setting matters. Warehouses and older ERP systems frequently want pipe or tab delimiters instead of commas, usually because someone's address field broke their parser years ago. Set the delimiter, then name the file — orders_{YYYY}{MM}{DD}.csv.

Create this workflow

Filename convention is the thing that quietly breaks these integrations. If the receiving script globs for orders_*.csv and you send Orders Export (1).csv because someone dragged a duplicate into Dropbox, it gets ignored and nobody finds out until the shipments don't go out. Ask the partner for their exact expected pattern before you build this, not after.

Takeaway: confirm three things with the receiving side up front — directory path, delimiter, and filename pattern. Those account for most of the failures.

Things to consider with this approach

It's CSV and XLSX only. Said it at the top, saying it again because it's the most common mismatch. Files get parsed into rows and columns and written back out. A PDF has no rows and columns, so there's nothing to parse.

It's scheduled, not instant. If your fetcher runs hourly, a file that lands at 9:05 shows up in Dropbox at 10:00. For nightly feeds and daily exports that's irrelevant. If you need sub-minute latency, look at something event-driven instead.

Two one-way flows is not a two-way sync. You can run both workflows at once, but point them at different Dropbox folders. If Workflow 1 writes into the same folder Workflow 2 watches, you've built a loop that ships the same file back and forth until someone notices.

Picking the right one

If a partner sends you data and you want it in Dropbox, that's Workflow 1 — the Scheduled Fetcher.

If your team produces data in Dropbox and a partner needs it on their server, that's Workflow 2.

If both are true, build both, with separate folders on the Dropbox side.

Before you configure anything, get the FTP connection details: host, port, protocol (FTP, FTPS, or SFTP — they're not interchangeable), username, auth method, exact directory path, delimiter, and expected filename pattern. Every failed setup I've seen traces back to one of those being assumed instead of confirmed.

Create this workflow

Sign up & try it free

Good ways to use Dropbox and FTP or SFTP together

  • Download CSV file from a FTP / SFTP server, clean up the file, and push a new file into Dropbox

  • Download a CSV file from Dropbox and push the file to an FTP / SFTP server

  • Create a CSV/XLSX file using Zapier and automatically upload to Dropbox

  • Create a CSV file via API Post request to EasyCSV and then automatically upload the file into Dropbox

  • Download a CSV file from Dropbox and push it directly to any App or API

  • Download a CSV file from Dropbox and send the data or file to Zapier