CSV Import Scheduled Provider
🎯 Functional documentation
This provider is designed to periodically import a CSV file from a remote SFTP/FTP server and use it to create or update Parties and Dossiers in Harmoney.
Functionally, the provider performs the following steps:
- It connects to the configured file transfer provider (
ABSTRACT_FILE_TRANSFER_PROVIDER) and downloads the CSV file from the configured directory and filename (CSV_DIRECTORY/CSV_FILENAME). If the file is not present, execution stops silently. - The CSV file is parsed using the configured import template (
IMPORT_TEMPLATE) and delimiter (CSV_DELIMITER). Entities (Parties, Dossiers, etc.) are created or updated for each configured Financial Service Provider (SUPPORTED_FSP). If multiple FSPs are configured, all imports share the same downloaded file. - After all FSP imports have completed (whether successful or not), optional post-processing is applied to the source file on the remote server:
- Rename (
RENAME_PATTERN): the file is renamed using a configurable pattern supporting{originalname},{date}, and{datetime}placeholders. - Move (
MOVE_TO_FOLDER): the file (after renaming, if applicable) is moved to a target folder. Before moving, the provider checks whether a file with the same name already exists in the target folder. If it does, ayyyyMMddHHmmsstimestamp is automatically appended to the filename (e.g.import_20260401143022.csv) to prevent silent overwrites. This ensures the same file is not re-processed on the next scheduled run.
- Rename (
⚙️ Configuration
- Implementation class:
CsvImportScheduledProvider
Settings
Required parameters:
ABSTRACT_FILE_TRANSFER_PROVIDER: The identifier of an existing FTP Provider configuration. This provider will be used to connect to the remote file server and download the CSV file.CSV_FILENAME: The name of the CSV file (including extension) to download from the configured remote folder. Example:import.csv.IMPORT_TEMPLATE: The import template used to process the CSV file and create entities. Example:HARMONEY_PARTY_IMPORT.SUPPORTED_FSP: A comma-separated list of Financial Service Provider (FSP) IDs for which the CSV import needs to be executed.SYSTEM_USER: The ID of the system user that will be linked to the performed actions, such as creating parties and logging events.
Optional parameters
CRON_SCHEDULE: Determines the periodic interval to run the provider. When not provided, the provider can only be triggered manually via the admin UI:organizations > org x > triggers.CSV_DELIMITER: Configures the CSV delimiter used for CSV file parsing. Defaults toCOMMAwhen not set.CSV_DIRECTORY: The folder on the remote file server from which the CSV file will be downloaded. If omitted, theDIRECTORYconfigured on the selected FTP provider is used.RENAME_PATTERN: An optional pattern to rename the file on the remote server after import (success or failure). Supported placeholders:{originalname}(filename without extension),{date}(today's date inyyyyMMddformat), and{datetime}(current date and time inyyyyMMddHHmmssformat). Example:{originalname}_DONE_{datetime}.csv→import_DONE_20260401143022.csv. When omitted, the file is not renamed.MOVE_TO_FOLDER: An optional remote folder to move the file into after import (success or failure). IfRENAME_PATTERNis also set, the rename is applied first and the resulting filename is moved. Before moving, the provider checks whether a file with the same name already exists in the target folder — if it does, ayyyyMMddHHmmsstimestamp is appended to avoid overwriting (e.g.import_20260401143022.csv). When omitted, the file stays in the source directory.