🚨 Blissbook directly integrates with 40+ HRIS, Payroll, and AD platforms. If you'd like to directly integrate instead, contact our support team at support@blissbook.com and/or read this help article. 🚨
This help article describes how you can sync your employee list automatically with Blissbook by securely sending it to us on a cadence of your choosing.
To automate your employee list file sync, your team will have to (1) automatically generate your employee list from your HRIS, Payroll, or AD (Active Directory) platform using an employee list template as a guide and (2) send that .csv file to us on a cadence you choose (daily, weekly, every 5 minutes... it's up to you).
If you automate your file sync, the name of the file must be "members.csv". See the instructions for creating your file for more info.
We are happy to talk about this with you and your IT group if/when you decide you want to set this up, just contact us at support@blissbook.com.
Enabling SFTP Sync
If you're interested in setting up an automated SFTP sync, there's a small add-on fee to your subscription required. Please contact us at support@blissbook.com. We'll give you pricing, answer your questions, then flip the switch to enable this on your account.
Before you get started...
Are you an ADP customer?
(1) We have a direct integration with ADP. Go here to learn how to set that up. (2) If you must sync via SFTP instead of our direct integration, read the Set Up instructions below and click here for additional guidance.
Are you a Workday customer?
(1) We have a direct integration with Workday. Go here to learn how to set that up. (2) If you must sync via SFTP instead of our direct integration, read the instructions below and click here for additional guidance (including info on using Workday's EIB tool). Contact your Workday rep or documentation for assistance with that tool.
Are you a UKG customer?
(1) We have a direct integration with UKG. Go here to learn how to set that up. (2) If you must sync via SFTP instead of our direct integration, read the instructions below and contact us for guidance if needed. When you set this up through UKG, they'll send us a vendor questionnaire to fill out so they can enable this integration.
Set Up
Start on the EMPLOYEE LIST SYNC tab of your Settings page (click Settings under ORGANIZATION in the main navigation on the left side).
Next, click the Enable button next to the "Automatically via SFTP" section.
Click the "Install SFTP" button.
Blissbook will automatically generate a secure username and password for you and your credentials & settings will be shown. Use those credentials to connect to Blissbook using your SFTP software of choice to send us your file.
Your file should include all active employees. It is a full file sync (see the instructions for creating your file). The file is read upon receipt and then immediately deleted for security reasons. You will receive a response from our FTP server to report the success or failure of your sync attempt, and you will also be able to see status and/or an error message on your Employees page within Blissbook.
Timing
Again, your employee list in Blissbook updates any time you send a file. Most of our customers send it nightly, but you could send it every 5 minutes or once a week if you want to.
More important is the order in which certain events happen. If you are sending automated invitations to new employees through Blissbook, those employees' email addresses must be valid. Blissbook also needs to know about a new employee before they try to sign in to Blissbook. So the ordering should be:
Email address works (so the invitation/login email won't bounce)
You tell Blissbook
Employee then tries to sign in
If you aren't using Blissbook to send invitations, 1 & 2 could be flip-flopped and it would still be OK.
FAQs
Can we encrypt the file using PGP encryption?
No. Blissbook does not actually store your .csv file anywhere, so there is no need to add "at rest" encryption.
Blissbook's SFTP "server" is not an actual file server. It is an API (application programming interface) posing as an SFTP server in order to accept files transferred via SFTP. It never stores a file. It consumes and processes the data as it comes in (in a streaming fashion). That data is stored in our database alongside all the other data in Blissbook, which is all encrypted at rest per our standard security practices.
Your data is 100% encrypted, in transit via SSH just like any other SFTP connection, and at rest via storage in our encrypted database.
Can I ping your SFTP server to list files? Can I do a GET request?
No. Our SFTP "server" is not a traditional SFTP server. It is not possible to list files or perform GET requests.
If you try to list files, it lists nothing.
If you try to GET any file (even members.csv), it says file not found.
If you try to login with invalid credentials, it fails.
If you PUT a partial file or any file that is not members.csv, it fails.
If you PUT members.csv, it accepts the file and, assuming the file is formatted correctly, sends its data to our encrypted database.
Can you check the file on your side to see if you can tell why [insert error] is happening?
No. Since we never store or save a file, there is nothing for us to check.
Is there an additional cost to enabling auto sync via SFTP?
Yes. This additional service starts at $185 and increases for customers syncing more than 100 employees. Contact us for pricing.
Is the cost to turn this on due to Blissbook doing the integration work?
Somewhat. We will assist you with your integration setup and sometimes that takes time depending on your experience setting up SFTP syncs and the way our sync works. We will help you resolve any errors or issues that come up either with your connection or within your data itself.
The majority of the cost here covers our internal additional engineering cost to build and maintain the SFTP sync server and software.
We're already syncing users manually. Will this integration replace all of our existing employees?
Yes! We suggest starting with a file that matches your existing employee list in Blissbook.
If you've been importing a full file manually to sync your employees, start with that same file and just send it to us via SFTP. You can then make changes to that file to get the data you need on it.
If you've been maintaining your employee list one-by-one, you can start by exporting your current list. Go to your Employees page (on the left in the main nav under ORGANIZATION), then click the "Add, Import, or Export" button, then choose Export Employees. Make changes to that file, then import it manually, then start sending it to us via SFTP, likely manually at first and then automatically.
People on the list who aren't in Blissbook will be added to your organization, and those not on the list who are currently in Blissbook will be archived. Groups receive the same treatment.
Will this sync the data in a way that will add new hires to the handbooks we need and then also terminate them when they leave the company?
Yup! To automate the sending of an invitation email, you will have to have that setting ON within your organization.
Will this integration also remove users once someone has left the company?
Yup!
We actually have 2 separate companies/entities using our [HRIS]. We would like the auto sync to only import [company1] employees. Can we narrow the scope based on the company/entity someone belongs to?
Blissbook's SFTP sync will sync everyone on the file you send us. If you want to exclude anyone from your file sync, you will need to do that before you send us the file.
If you need to do exclusions post-sync, you'll need to use our direct HRIS/Payroll/AD integration.
We have consultants/contractors/contingent workers. We would like the scope to not include them as well. Is there a way to exclude from the scope based on employment type?
Blissbook's SFTP sync will sync everyone on the file you send us. If you want to exclude anyone from your file sync, you will need to do that before you send us the file.
If you need to do exclusions post-sync, you'll need to use our direct HRIS/Payroll/AD integration.
We often add new employees to our HRIS before their actual hire date. Can you exclude these people and only sync them over on their actual hire date?
Blissbook's SFTP sync will sync everyone on the file you send us. If you want to exclude anyone from your file sync, you will need to do that before you send us the file.
If you need to do exclusions post-sync, you'll need to use our direct HRIS/Payroll/AD integration.
What filters do we have an option of using? The reason I ask is we have numerous custom fields in HRIS that may not be standard.
You can sync any and all of the data from your HRIS, including non-standard custom fields. They will come in as Groups on your CSV file sync. See our instructions for creating your file for more info.
SFTP Software Examples & Tips
WinSCP Example SFTP Script
WinSCP, a free SFTP client for Windows, can be used to automate your employee file sync. Below is an example script to sync your file to our SFTP server. The SHA 256 Fingerprint as well as your username and password will be available after you install the SFTP integration. For additional WinSCP scripting and command line options, please refer to WinSCP's guides on automating file transfers and scheduling file transfers.
blissbook-sftp-script.txt
open sftp://<username>:<password>@sftp.blissbook.com:3022/ -hostkey="ssh-rsa 4096 <sha-256-fingerprint>="
put -nopermissions -nopreservetime -resumesupport=off members.csv
close
Note: Since your filename must be members.csv, you need to disable resumes or the strict filename rule kills the transfer.
Command Line
winscp.exe /ini=nul /script=”blissbook-sftp-script.txt”
Even if you cannot generate/download your employee list file report automatically from your HRIS platform, you can use WinSCP's automation features to make your "manual" file upload take a minute or less. Your workflow would be: Log into HRIS, download your report, drag and drop the downloaded csv file onto a desktop shortcut. That's it!
Microsoft Power Automate
Here's an example of a working configuration using Microsoft Power Automate:
Cyberduck
Here's an example of a working configuration using Cyberduck:
Mulesoft
When writing content, use `CREATE_NEW`. Do NOT use `OVERWRITE`.