ac4c6d823ce1d606998fd5d64bc7321187b3e4df
Melissa Uploader
Automated upload tool for practice exports. Uploads insurance PDFs and patient files to the correct FTP/SFTP servers for each practice, then archives what was sent.
First-time setup
- Double-click setup.bat — this downloads WinSCP (needed for uploading)
- Set up your entity folders (see below)
- Double-click run-all.bat each day after running the PT STMT rename script
Daily workflow
- Run the PT STMT rename script manually (as usual)
- Double-click run-all.bat to upload everything
- Check the window for any failures — failed files stay in place for retry
Folder layout
run-all.bat <- double-click to run everything
engine.ps1
setup.bat
WinSCP\ <- created by setup.bat automatically
Entities\
CAMBS\
entity.json <- server details for this entity
run.bat <- double-click to run just CAMBS
Export1\
AJMAT\
practice.json <- only needed if AJMAT has its own FTP login
20260629\ <- today's insurance PDFs go here
Archive sent to FTP\ <- uploaded date folders move here
Patient\
Export\
PT STMT_20260629\ <- created by rename script
Archive Sent to FTP\ <- uploaded patient folders move here
CIIR\
...
CONSensio\
entity.json
...
Setting up a new entity
- Create a folder under
Entities\with the entity name (e.g.Entities\CAMBS\) - Copy
run.batinto it - Create
entity.jsonin that folder — copy fromEntities\EXAMPLE\entity.jsonand fill in:
| Setting | What to put |
|---|---|
workflow |
insurance if no patient files, insurance+patient if both |
ftps.host |
FTP server address |
ftps.username |
FTP username (shared across all practices) |
ftps.password |
FTP password |
ftps.tls |
true for FTPS (secure), false for plain FTP |
ftps.insurance_path |
Remote path for insurance PDFs — keep {practice} in it |
ftps.pdf_path |
Remote path for PT STMT PDFs — keep {practice} in it |
sftp.host |
SFTP server (only needed if workflow is insurance+patient) |
sftp.username |
SFTP username |
sftp.password |
SFTP password |
sftp.patient_path |
Remote path for patient files — keep {practice} in it |
- Create the
Export1\folder and a subfolder for each practice inside the entity folder
Setting up a practice with its own FTP login
If one practice has its own FTP username/password (different from the entity default):
- Create a
practice.jsonfile inside that practice's folder - Copy from
Entities\EXAMPLE\Export1\PRACTICE_NAME\practice.json - Fill in only the username and password that differ — everything else comes from entity.json
Something went wrong?
- Files failed to upload — they stay in the date folder. Fix the issue and run again.
- A date folder is still there after running — one or more files failed. Check the output window.
- WinSCP error on startup — run
setup.batagain to re-download WinSCP.
Languages
PowerShell
98.2%
Batchfile
1.8%