To initiate the automated imports process, have your IT department contact Enable. You will be given credentials for an SFTP server where you can upload files with data to be imported to your channel. Enable will provide you with templates as part of the onboarding process to ensure that data is exported from your system in the correct format for the type of import you wish to run.
In order for an automatic import to work properly, please ensure that the file to upload adheres to the strict formatting requirements described below. Failure to follow these requirements can result in undesirable outcomes, like rejected uploads or the overwriting of large amounts of data.
If you are having issues with Excel like losing leading zeros, dates changing format unexpectedly, or character delimitation, please refer to our articles on how to load CSVs into Excel.
No matter what type of data you are trying to import, all of the following criteria must be satisfied:
Example: Suppose you have a CSV of 20 products, along with their descriptions and prices, in a file generated on May 10th, 2021 at 13:15:23. To satisfy requirement 1.1, this file should be called "Products-20210510131523.csv". To satisfy requirement 2.1, when viewed in a text editor the first row could read
"Product name", "Product description", "Price",
and a subsequent example row (respecting requirements 2.2, 2.3, and 2.4) could be
"Example product", "Special 10"" widget, blue", 5.00,
Because the labelling row is not counted, to satisfy requirement 2.5 the final row in the spreadsheet would simply read
"ROWCOUNT IS 20"
After agreeing with your Customer Success team on an encryption key, you would then zip this CSV into an encrypted zipped file, say, "Products-20210510131523.zip" and upload it to the Imports folder on the SFTP server. Once this succeeded, you would add an empty file called "Products-20210510131523.zip.ok" to the same directory and the import process would typically begin.
Depending on the type of data being imported, any additional formatting requirements are listed under the corresponding heading below.
Possible common types of dimension items are Locations and Products, but these are just special cases of Enable's support for the addition of new dimensions. Any CSV containing dimension items for a particular dimension must have the following formatting, in addition to the universal formatting requirements above:
If you have more than one collection for a dimension, the file name will need to be updated to represent the collection you want to update. The relevant DATASET becomes the pluralized name of the dimension concatenated with the name of the collection. For example, say there are two collections in the Product Dimension, one called "2021 Products", the other called "2022 Products". When updating the 2022 Products collection, the file name should be "Products-2022 Products-20220310131523.zip".
If you are using an interface date, it must be the interface date, not the transaction date, that is specified in the file name.
Example: Suppose you have a CSV of transactions generated on June 1st, 2021 at 15:00:00, and it contains transaction data from May 1st to May 31st only. An appropriate name for this file would be
You can also choose to specify a single dimension item in your transactions filename. This allows you to only upload, and delete, transactions for that specific dimension item. To do this, you must follow the format of "Turnover-DIMENSION NAME=[DIMENSION ITEM REFERENCE]-TRANSACTIONDATERANGE-TIME.CSV".
TURNOVER-TRANSACTION TYPE=[SALES]-20200908-20200908113815.zip is a valid filename for a channel with a dimension of 'Transaction Type' and an item within that dimension with a reference of SALES.
Asides from the requirements above, your automatic upload will be rejected if the data inside it does not satisfy certain other consistency requirements. Specifically, for files you wish to upload:
If the data is rejected for any reason (e.g., even if there is just one offending line), no changes to your dataset on Enable's servers will be made at all.
Note: Be careful! If the name associated with a particular reference in an import file differs from the name currently stored in Enable, then the latter is overwritten with the former (unless this produces a duplicate name).
We recommend files are sent overnight. Importing large data files can be intensive, and to limit the impact on performance, files should be uploaded at a time where there is a low user load on Enable.
We recommend that trading partners are uploaded first, then your dimensions (as dimensions can be listed against a specific trading partner), and finally the transactions. This ensures that the dimension data uploaded can be matched to trading partners, since if they are not the file will be rejected, and so the transaction lines can be matched to a supplier or dimension. The file won't be rejected if a transaction line isn't matched, however the transactions will appear as unreconciled and won't appear in reporting until they have been matched to a trading partner and all required dimensions. Find out more on the reconciliation process here.
If your file has failed to import it will land in the 'Failed' folder within the 'Import' folder on the SFTP location. In this scenario, an accompanying Error.txt file will be created for each failed file detailing what the cause of failure is. For example, this may be an incorrect ZIP password, incorrect row count, incorrect naming/ formatting convention, etc. If you encounter any error messages that are unclear, or if you would like assistance troubleshooting these, please raise a Helpdesk ticket with us.
An FTP client will be required to send data to, and view, the SFTP location. Within Enable we use FileZilla, but this is not a requirement and any alternative FTP clients are suitable.
If your file has not processed and is still in the 'Imports' folder, please consider whether you have uploaded the corresponding .OK file, and also check that this is correctly named. The name of the .OK file should be identical to the .ZIP file, but instead of ending merely with .ZIP, it should end with .ZIP.OK.
The SFTP location has a firewall in place to prevent unauthorized access. Please ensure that you have provided us with your public IP address in order for us to add this to the whitelist. If you are unable to connect, please raise a Helpdesk ticket with us.
In the SFTP location, you are able to see the files that Enable have received. If a file is in the 'Succeeded' folder, this indicates that the data is now in the system. If a file is in the 'Failed' folder, unfortunately, the file has failed and a corresponding Error.txt file will explain the reason.
We recommend having an internal process to check these folders regularly to ensure the data in the system is as expected.
For further information on the format and content of the files required for automated imports, please raise a Helpdesk ticket with us.