What is SFTP?
Think of SFTP (Secure File Transfer Protocol) like a highly secure, automated armored truck.
Right now, you have an employee list in one building (your HR system). You need to get it to another building (Snappy).
You could download the file and email it, but emailing sensitive employee data is like sending a postcard—anyone can read it.
Instead, SFTP acts as the armored truck. It encrypts the file, drives it through a private tunnel, and delivers it to Snappy exactly when you tell it to.
Because Snappy uses this as a "one-way sync," your HR system becomes the single source of truth. If someone is in the file, they are in Snappy. If they leave the company and drop off the file, Snappy removes them. (Note: Because of this, you won't be able to manually edit recipients in Snappy anymore!)
How to set up an SFTP Integration
Follow these exact steps below, combining the simple concepts with Snappy's specific technical requirements. (Note: This feature is only available for Snappy Elevated or Enterprise accounts).
1. Get your Snappy 'Delivery Dock' Details:
Generate your destination address and keys inside Snappy.
Before you can send the truck, you need to set up the receiving dock at Snappy. Snappy recommends using their SFTP server.
In Snappy, click the dropdown next to your initials at the top and select General.
On the left sidebar, click Sharing and Access.
Toggle SFTP Access on. (Snappy will instantly generate your specific Username).
Click Generate Key. This is the literal digital "key" your HR system needs to unlock Snappy's dock. Copy it immediately and save it somewhere safe - Snappy will never show it to you again.
2. Build the report in your HR system:
Required format: CSV with specific column headers.
Log into your HR system and build the report containing your employee data. Snappy is very specific about how this "box" needs to be packed:
Format: It must be a CSV file (UTF-8 encoding recommended)
Required Columns:
First Name
Last Name
Employee ID (this must be unique)
Email
Working Since (Hire Date)
Country (as a 2-letter code, like 'US')
Optional:
Phone (required for SMS)
Birthday
Accounts
Department
Note: If you need to send gifts to new-hire employees before their start date, please refer to the additional details in this article.
Dates: Pick one format for all dates (like YYYY-MM-DD) and stick to it. Don't mix and match.
File Name: It must be unique every time.
Set your HR system to name it something like
snappy_YYYYMMDD_HHMMSS.csv.
Example CSV Structure
First Name | Last Name | Employee ID | Phone | Birthday | Working Since | Country | Accounts | Department | |
First | Last | 12345 | +1123456789 | YYYY-MM-DD | YYYY-MM-DD | US | CA Office | R&D |
3. Enter the SFTP details into your HR system:
Point your HR system to Snappy's server.
Find the automated scheduling or "Delivery" options for that report in your HR system. When it asks how you want to send the report, choose SFTP. Fill in the details:
Server Address (Host):
sftp.snappygifts.comPort Number:
22Username: The username Snappy generated for you in Step 1.
Authentication: Provide the SSH Key you copied in Step 1.
File Path (The exact drop-off room): Type in exactly
/snappy-sftp-prod/[your_username_here]/recipients/roster/uploads/.
4. Set the schedule and run a test:
Only drop files in the uploads/ folder.
Choose how often you want the armored truck to run (e.g., daily). Snappy only processes one file at a time, so make sure your schedule doesn't accidentally dump multiple files into the uploads/ folder at once.
Run a test delivery from your HR system, then check your Snappy recipients page to confirm the file arrived safely and the employees updated correctly!
Important:
The Snappy team will need to map out the file on the first upload manually. This process can take up to three business days. You will not see anything appear in the Recipients section until this is done.
Once you have completed the steps above, please reach out to your dedicated Snappy team to submit a service request to complete the mapping (or reach out to help@snappy.com).
Prefer to use your own SFTP server instead?
Toggle instructions here
Toggle instructions here
If you prefer to use your own company's SFTP server, the dynamic reverses: instead of you sending an armored truck to Snappy's warehouse, Snappy will send their truck to your warehouse to pick up the file.
To set this up, you just need to give Snappy's team the exact directions, credentials, and permissions to access the specific room where you'll be dropping the HR file.
Here is exactly what you need to provide to Snappy:
Server Address: Your server's IP address or hostname (the street address).
Protocol and Port: Usually SFTP or FTPS (the specific loading dock door).
Credentials: A dedicated Username and Password for Snappy to log in.
Directory Path: The exact folder where your HR system will drop the CSV file.
Permissions: Snappy needs Read, Write, and Delete access. (They need to "read" the file to update your recipients, and "write/delete" to move it to a success or failure folder so it doesn't get processed twice).
IP Allowlisting (Optional but recommended): If your IT team uses a firewall, they may ask for Snappy's IP addresses so they can "allowlist" them—essentially telling the security guard to let Snappy's trucks through the gate.
What happens next?
Once you hand those details over, Snappy takes over the heavy lifting. They will:
Connect securely to your server.
Automatically set up their required folder structure inside your directory (creating specific folders for uploads, processed files, and errors).
Validate your first sample CSV file to make sure the columns and dates look right.
Run the initial sync to update your Snappy dashboard.
From then on, your HR system just needs to drop the properly formatted CSV into the uploads/ folder on your own server, and Snappy will automatically come fetch it.
🔄 Frequently Asked Questions
What happens if multiple files are uploaded?
What happens if multiple files are uploaded?
Only one file is processed at a time. If multiple files exist in the uploads folder - the process won’t run. This is a rare edge case that might happen during initial setup and is less likely to happen after the setup is completed.
Can file structure change after setup?
Can file structure change after setup?
Yes, but Snappy support must update mapping.
What happens if a file fails?
What happens if a file fails?
A failure report is generated with row-level error details. The report is available to the Snappy support team. If you suspect something is wrong with the number of recipients on your Snappy dashboard, please contact us so we can check it.
Do I need to manually update recipients?
Do I need to manually update recipients?
No. Everything is fully automated after setup. You only manage and update the recipients in your HRIS platform.
Are formats other than CSV supported?
Are formats other than CSV supported?
No. Everything is fully automated after setup. You only manage and update the recipients in your HRIS platform.
What happens if a recipient appears in multiple files?
What happens if a recipient appears in multiple files?
Roster mode: latest file overrides previous state
Add/update mode: incremental updates applied
🛠 Need Help?
Contact Snappy Support (help@snappy.com) for:
Mapping changes
Upload issues
Account configuration
