> ## Documentation Index
> Fetch the complete documentation index at: https://docs.auxia.io/llms.txt
> Use this file to discover all available pages before exploring further.

# SFTP setup guide

> Connect an SFTP feed to Auxia step by step

SFTP connections are set up together with the Auxia team. Your Auxia point of contact creates your SFTP user and ingestion; you generate a key and send the files.

## Prerequisites

* A system or tool that can send files over SFTP on a schedule
* The ability to generate an SSH key pair, or an export tool with a built-in key generator
* If your outbound firewall restricts destinations: permission to allowlist an IP address

## Setup instructions

<Steps>
  <Step title="Tell Auxia about your feed">
    Share these with your Auxia point of contact:

    | Detail | Example |
    | - | - |
    | **File format** | CSV, comma-delimited, UTF-8, with a header row |
    | **File naming** | `orders_20261002.csv` — and whether the date is in the file name or a folder name |
    | **Cadence** | Daily, landing by 06:00 UTC |
    | **Expected volume** | Rough row count or file size per delivery |
    | **Encryption** | Whether you'll PGP-encrypt files (see below) |
    | **Technical contact** | Who to contact if a transfer fails |
  </Step>

  <Step title="Generate an SSH key pair and send the public key">
    Generate the key pair on your side and send Auxia the **public** half only. Auxia accepts OpenSSH-format keys: ED25519, or RSA of 2048 bits or more.

    ```bash theme={null}
    ssh-keygen -t ed25519 -f ~/.ssh/auxia_sftp
    # Keep ~/.ssh/auxia_sftp private. Send Auxia ~/.ssh/auxia_sftp.pub
    ```

    Many export tools have a built-in **Generate SSH keys** option that does the same thing. Keys in PuTTY (`.ppk`) or PEM-wrapped format need converting to OpenSSH format first.

    <Warning>
      Never send your private key — to Auxia or anyone else.
    </Warning>
  </Step>

  <Step title="Receive your connection details">
    Auxia creates your SFTP user and sends you:

    * **Host** and **port** (22)
    * **Username**
    * **Host key fingerprint** — check it the first time you connect, to confirm you're connecting to Auxia
    * **The folder path(s)** to upload to
    * **Auxia's PGP public key**, if you encrypt files
  </Step>

  <Step title="Send a test file">
    Connect and upload a test file to your folder:

    ```bash theme={null}
    sftp -i ~/.ssh/auxia_sftp YOUR_USERNAME@HOST
    ```

    Auxia confirms the file arrived and can be read, then switches the feed to production.
  </Step>
</Steps>

## Encrypting files with PGP

If your files must be encrypted, encrypt them with **Auxia's PGP public key** before uploading. Auxia decrypts them when they're read — there's no separate decryption step on your side.

<Warning>
  **Encrypt only — don't sign.** Signed files fail to decrypt.
</Warning>

Tell your Auxia contact up front if you plan to encrypt, so the key exchange can happen alongside setup.

## Rotating your SSH key

Send Auxia your new public key. Auxia adds it alongside the old one, and removes the old key once you've confirmed the new one works — so there's no downtime.

## Related articles

* [SFTP overview](/data-ingestion/data-connections/sftp)
* [File source requirements](/data-ingestion/concepts/file-sources)
* [What data is needed](/data-ingestion/what-data-is-needed)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.