We use SFTP to securely transfer data from sources that have no API or database connection. Typical examples might include product item master exports, third-party logistics (3PL) partner data, or SMS and email marketing data from partners (such as Attentive, Salesforce Marketing Cloud, and Bluecore).
During the onboarding process, we create an SFTP directory for you on our production server that you can post files to.
Your onboarding team will provide you with this file path and the authentication tools you'll need to access this directory. The file structure will follow this format: clientname-sftp.soundcommerce.io/clientname/in
Table of Contents
- Use Optimal File Formats
- Check files for UTF-8 encoding
- Add a timestamp to ordered file types
- Add an MD5 hash if contents need verification
Getting Started
Supported Authentication and Encryption Methods
SoundCommerce follows OpenSSH Modern substandard, and our preferred methods are:
- The RFC8709 ssh-ed25519 signature algorithm
- The RFC5656 ECDSA algorithms: ecdsa-sha2-nistp256/384/521
Exact authentication requirements will be discussed and decided upon in an orientation meeting with our security team. Please reach out to your SoundCommerce team with any questions!
Creating SFTP Keys
Below are instructions on how to create private and public keys. For security purposes, you will need to generate these and retain the private key information in your secure records. Please share the public key with your SoundCommerce team via email once it has been generated.
Managing and Sending Keys
Once you have generated your private and public keys, safely store this information within your organization, and share the public key directly with your SoundCommerce team.
Never share your private key with anyone outside of your organization!
If you ever need to change or regenerate these keys, please let your SoundCommerce team know because we will need to update your SFTP information on our end to ensure there is no disruption in service.
Prepare Your Data
Below are the formatting requirements for transferring data to SoundCommerce using SFTP. In particular, if you know you have recurring SFTP transfers for a particular data source, take some time initially to set up a method of ordering or indexing your files. This will help you avoid any delays when transferring unordered or unpaginated data.
Use Optimal File Formats
For best results with SFTP transfer, make sure to use standards-compliant file formats:
- JSONL (JSON Lines text file format)
- CSV (comma separated values)
Use for data files separated by a delimiter (such as a tab, comma, or pipe character). CSV with UTF-8 character encoding is preferred (and is generally assumed). However, note that the CSV specification does not require a specific character encoding.
Important: CSV files that contain irregular delimiters are non-compliant, and therefore cannot be interpreted.
Check Files for UTF-8 Encoding
Perform this quick test to determine if your files follow this encoding standard.
- Open a file in Notepad
- Select Save As.
The Encoding box shows you the current file format.
Add a Timestamp to Ordered File Types
1. To add a timestamp to files, use this file name format:
YYYY-MM-DDThh:mm:ssZ
Example: 1997-07-16T19:20:30.45Z (at GMT/UTC)
2. On Windows and other operating systems that read a colon (:) as an invalid file name character, replace the colons with hyphens (-).
Add an MD5 Hash if Contents Need Verification
1. If the customer needs to verify data integrity against unintentional corruption, prepend an hash value to the file extension, like this:
FILE-YYYYMMDDHHMMSS.[MD5-hashtag].EXT
Example: orders-181001123000.5eb63bbbe01eeed093cb22bb8f5acdc3.json
Comments
0 comments
Please sign in to leave a comment.