Tyler Odyssey / Enterprise Justice (SFTP)
This integration sends upcoming hearings and party contact details from Tyler Technologies' Odyssey or Enterprise Justice case management system to eCourtDate every night. Odyssey runs an Electronic Custom Report (ECR) built for eCourtDate, and the output file is delivered to an SFTP server the court operates. eCourtDate connects to that server every hour, retrieves the new file, and processes it into Clients, Contacts, Cases, and Events so the court's reminders send without manual data entry.
In this guide, "Odyssey" means Odyssey or Enterprise Justice. The integration works with Tyler-hosted (AWS SaaS) and on-premises Odyssey. Data flows one way: eCourtDate reads the file and does not create or change records in Odyssey.
How It Works
Who Does What
Complete Steps 1 to 5 in the Odyssey Test environment against an eCourtDate staging agency, then repeat them for Production in Step 6.
| Step | Who | Where |
|---|---|---|
| 1. Confirm the ECR with Tyler | Court administrator and the Tyler Technologies Client Success/Account Manager (CSAM) | Tyler |
| 2. Schedule the report | Court Odyssey administrator | Odyssey |
| 3. Connect the report by SFTP | The court's IT team (or Tyler, for Tyler-hosted Odyssey), then the eCourtDate agency administrator | The court's SFTP server and the eCourtDate Console |
| 4. Set up the ECR Monitor Report | Court Odyssey administrator | Odyssey |
| 5. Confirm the file | eCourtDate agency administrator | eCourtDate Console |
| 6. Go live | All of the above | Odyssey Production and the production agency |
Step 1: Confirm the ECR with Tyler Technologies
Contact the court's Tyler Technologies CSAM and confirm:
- ECR availability: the eCourtDate court reminder ECR is available for the court's Odyssey instance and deployed in both the Test and Production environments. Odyssey lists it as Texas OCA Court Reminder with eCourtDate.
- Client ID: the value to enter for each court in the report parameters.
- Extract directory path: the directory the report writes its output file to.
- Hosting: whether Odyssey is Tyler-hosted (AWS SaaS) or on-premises. Scheduling the report works the same way for both. Hosting decides who delivers the file to the court's SFTP server in Step 3 and whether the ECR Monitor Report in Step 4 is available.
Step 2: Schedule the Report in Odyssey
Complete this step in the Odyssey Test environment first. Step 6 repeats it in Production. The screenshots in this step and in Step 4 are adapted from Tyler's Deployment/Configuration Guide (PDF).
Set the report parameters
Open Reports > Custom Reports > Texas OCA Court Reminder with eCourtDate and complete the parameters:

| Parameter | What to enter |
|---|---|
| Location | The Odyssey nodes (courts) whose cases and parties should receive reminders. |
| Client ID | The court's identifier from the Tyler CSAM. Texas courts enter their OCA court identifier; search for it by county, court name, or identifier in Texas OCA Court Identifiers. |
| Case Type | The case types whose hearings should be included. |
| Party Connection Type | The party types that should receive reminders. |
| Days | How many days ahead to look for hearings. Enter 30 or fewer. |
| Output Format | CSV Format. |
When a county has more than one court, schedule one job per court, each with that court's own Client ID and Location.
Schedule the job
-
Select Schedule.
-
In Add Job Schedule Entry, fill in the Start Date and Start Time, then select the rotating arrows icon on the blue Job Definition ribbon to open the recurrence settings.

-
In Add Job Recurrence, set:
- Comment: the court name, matching the node selected in the Location parameter (for example, "Example County Court").
- Start Time: 10:00 PM or 11:00 PM in the court's local timezone. A late-evening run captures the full day of changes, and eCourtDate processes the file overnight. Do not schedule closer to midnight: a run that slips past midnight counts the Days window from the next date.
- How often does this job recur: Daily, every 1 day.
- When does this recurrence start and end: the start date and No end date.
- Job sequencing: Run recurring job as configured.

-
Click Save.
Copy the output to the extract directory
-
In Add Email Notification Recipients, check Copy Job Files to Directory.
-
In Directory, enter the extract path from the Tyler CSAM followed by the environment folder:
\Testin the Test environment,\Prodin Production. For example:\\odfile\odyssey-extracts-fs\STATE\COURTNAME\eCourtDate\Test\\odfile\odyssey-extracts-fs\STATE\COURTNAME\eCourtDate\Prod
-
Click Finish.
Step 3: Connect the Report to eCourtDate by SFTP
Each night's file is delivered to an SFTP server the court operates, and eCourtDate connects to that server every hour to retrieve it. The court's IT team (or Tyler, for Tyler-hosted Odyssey) prepares the server first, then the eCourtDate agency administrator adds it in eCourtDate. The integration does not use manual uploads.
Deliver the file to the court's SFTP server (Tyler or the court's IT team)
- Tyler-hosted (AWS SaaS) Odyssey: Tyler configures the SFTP Upload Job to deliver the file from the extract directory to the court's SFTP server.
- On-premises Odyssey: the court's IT team makes the file available on the court's SFTP server, either by using a directory on that server as the extract directory or with a scheduled transfer such as Tyler's SFTP Upload Job.
Schedule any transfer to run after the report finishes each night. Deliver Test and Production files to separate directories (for example, /ecourtdate/test and /ecourtdate/prod) so the staging and production agencies each read only their own file.
Give eCourtDate access (the court's IT team)
- Create an SFTP account for eCourtDate with access to the directories that receive the file. Use SSH key authentication. For eCourtDate to remove each file after processing it, the account also needs permission to delete files.
- On the server's firewall, allow inbound SSH (port
22unless the server uses another port) from eCourtDate's IP addresses. The eCourtDate agency administrator copies these from the Console in the next section. - Send the eCourtDate agency administrator these details. Share a private key or password only through a secure channel, never by email or chat.
| Setting | Value |
|---|---|
| Host or IP Address | The server's public hostname or IP address |
| Port | The SSH port (22 by default) |
| Username | The account created for eCourtDate |
| Authentication | The account's private key (.pem) or password |
| Directory | The directory that receives the report file |
Add the court's server in eCourtDate (eCourtDate Console)
-
In the Console, open SFTPs and click Add Server.
-
In Create Server, enter a Name (for example,
Court SFTP), set Hosting to Your own server, set Type to SFTP, select the staging Agency, and click Create. Managed by eCourtDate is only for servers that eCourtDate hosts.
-
On the server's Overview tab, copy the addresses under Whitelist IP Addresses and send them to the court's IT team for the firewall rule.
-
Open the Settings tab, enter the details from the court's IT team, and click Save:
Field What to enter Host or IP Address The server's public hostname or IP address. Username The account created for eCourtDate. Password The account password. Leave it blank when the account uses a key. Private Key The account's private key. To upload the .pemfile instead, use Upload Private Key below the form.Port The SSH port. Default: 22.Timeout Connection timeout in seconds. Default: 30.Source Directory The root directory of the eCourtDate account (for example, /ecourtdate). SFTP Profiles choose their directories relative to it.Status deployed. -
Click Test connection at the top of the server page. A successful test reads "Connection successful" followed by the host and response time. Unable to connect points to the firewall rule, the host, the port, or the credentials.
One server record serves both the staging and production profiles, so the server is added once. See Server Setup for more detail on each field. If the court does not operate an SFTP server, eCourtDate can host one instead; see Managed Server.
Create the Upload Template and SFTP Profile (eCourtDate)
-
In the Agency app (staging or production), open Uploads > File Templates, find the Tyler Tech Odyssey Events sample, and click Import. eCourtDate creates an Upload Template named Tyler Tech Odyssey Events in the agency and opens it, with the report's columns (listed in Data Included) already mapped to eCourtDate fields and records matched by Party ID (clients), Event ID (events), and Case Number (cases). The standard ECR needs no further mapping. Sample on the same card downloads a CSV of the column headers the template expects. See Upload Templates for each setting.
-
On the court's server page in the Console, click SFTP Profiles, then Add SFTP. Choose the staging Agency and click Create. The new profile is linked to the court's server and opens with Auto Sync off.
-
On the profile's Settings tab, set these fields and click Save:
Field What to enter Auto Sync Enabled Checked. New profiles start with it off and show an "Auto sync is disabled." warning until it is on. SFTP Name A label, such as Odyssey ECR (Test).Source Directory test: the Test directory, relative to the server's Source Directory. Enter the relative path, not/ecourtdate/test.Upload Template Tyler Tech Odyssey Events, the template imported in step 1. Filename Keyword Text that appears in every report file name, so the profile picks up only the report. Delete File After Upload On by default. Leave it on when the eCourtDate account can delete files, and turn it off when it cannot. Failure Grace Period 24(the default) for a nightly file.On-Failure Notification Contacts Emails or phone numbers of the staff to notify when a sync fails or no file has uploaded within the Failure Grace Period. -
On the profile's Connection tab, confirm it reads "Connected via Server" and click Test Connection.
Step 4: Set Up the ECR Monitor Report
The ECR Monitor Report emails a court administrator about each nightly run of the ECR, so a run that errors, does not happen, or is still running is caught without checking Odyssey. Tyler provides it for Tyler-hosted (SaaS) Odyssey. Configure it in Odyssey with:
| Field | What to enter |
|---|---|
| Report Name | Texas OCA Court Reminder with eCourtDate |
| Email Address | The administrator who should receive the monitoring email. |
| Email Subject | A subject line for the email (for example, "ECR Monitor"). |
| Contact | A name and phone number to include in the email for assistance. |
| Notifications to Monitor | Monitor Completed, Monitor Errors, Monitor Not Found, Monitor Currently Running. |
| Output Format | PDF Format. |

The email lists the job process ID, report name, start date, status, user, and a message such as "Report has not ran today." when the scheduled run did not happen. Confirm the first email reaches the right people.

On the eCourtDate side, the On-Failure Notification Contacts set on the SFTP Profile in Step 3 are notified when a sync fails, and when no file has uploaded within the Failure Grace Period (24 hours by default), which catches a nightly file that never arrived. On-premises courts rely on these notifications, because the ECR Monitor Report is provided for Tyler-hosted Odyssey.
Step 5: Confirm the File in eCourtDate
eCourtDate retrieves a new file and starts processing it within an hour of its arrival on the court's SFTP server.
- In the Agency app (staging or production), open Uploads. The report file is listed under its file name. Open it to see the processing status, the number of records created, updated, and skipped, and any rows with errors.
- Compare a few hearings against Odyssey: party name, phone, email, hearing date and time, location, and case number.
- In the Console, the SFTP Profile's header shows Last active, the last time Auto Sync ran. A red banner on the profile shows the error from a failed run.
If the file does not appear, see Troubleshooting. This step confirms the data only; message templates and flows are set up in Step 6.
Step 6: Go Live in Production
- Odyssey: Repeat Step 2 in the Production environment with the
\Proddirectory, and confirm the ECR Monitor Report covers the Production run. - Delivery: Deliver the Production file to its own directory on the court's SFTP server (for example,
/ecourtdate/prod). - eCourtDate: In the production agency, open Uploads > File Templates and import the Tyler Tech Odyssey Events sample. Then, on the court's server page in the Console, click SFTP Profiles, then Add SFTP, choose the production agency, and set up the profile as in Step 3 with Source Directory
prod. The production profile uses the same server record, so no second server or firewall change is needed. Settings can be copied from the staging agency rather than rebuilt; see How to copy settings from one agency to another. - Messaging: Build the production agency's message templates and flows for hearing reminders, then review the generated messages in the Console before enabling delivery. See How to Create Message Templates, How to Create a Flow, and Merge Tags.
- Confirm: Repeat Step 5 against the production SFTP Profile once the first Production file arrives.
Checklist
- Confirmed ECR availability, Client ID, extract directory path, and hosting type with the Tyler CSAM
- Set the report parameters: Location, Client ID, Case Type, Party Connection Type, Days (30 or fewer), and CSV Format
- Scheduled the job to recur daily at 10:00 PM or 11:00 PM, copying output to the
\Testextract directory - Delivered the file to a Test directory on the court's SFTP server
- Created an SFTP account for eCourtDate, allowed eCourtDate's IP addresses through the firewall, and sent the connection details
- Added the court's server in eCourtDate with Hosting set to Your own server, and Test connection succeeded
- Imported the Tyler Tech Odyssey Events Upload Template and created an SFTP Profile on the court's server with Source Directory
test, and checked Auto Sync Enabled - Set up the ECR Monitor Report and confirmed it emails the right people
- Confirmed the file under Uploads in the Agency app and checked its records against Odyssey
- Repeated the setup in Production with the
\Proddirectory and a production SFTP Profile (Source Directoryprod), and confirmed the file in the production agency
Troubleshooting
| Problem | What to check | Contact |
|---|---|---|
| The report does not generate, or the ECR is missing from Custom Reports. | The ECR is deployed in that Odyssey environment. | Tyler CSAM |
| The ECR Monitor email shows an error or "Report has not ran today." | The job's schedule and recurrence in Odyssey, and access to the extract directory. | Tyler CSAM, or the court's IT team for directory access |
| The file does not reach the court's SFTP server. | The SFTP Upload Job or transfer, its schedule, and the destination directory. | Tyler for Tyler-hosted Odyssey, or the court's IT team for on-premises Odyssey |
| Test connection shows Unable to connect. | The firewall allows every address under Whitelist IP Addresses, the Host and Port are correct, the SFTP service is running, and the username and private key or password match the account (with the password blank when a key is used). See SFTP Errors. | The court's IT team |
| The profile's Test Connection shows "Invalid SFTP credentials". | The profile has no server selected. On its Connection tab, select the court's server and click Save Connection. | eCourtDate agency administrator |
| The file is on the server but not under Uploads in the Agency app. | Auto Sync Enabled is checked, an Upload Template is selected, the file sits directly in the profile's Source Directory (entered relative to the server, such as test), the file name contains the Filename Keyword, and an hour has passed since the file arrived. A file whose name matches an earlier upload is skipped. | eCourtDate agency administrator |
| The Upload shows row errors or missing records. | The report's column headers match the template's (Sample on the Tyler Tech Odyssey Events card under Uploads > File Templates downloads them), and the template's date and time formats. See Upload Templates. | eCourtDate agency administrator |
| Attorneys, bond agents, or payment details are needed. | The standard ECR does not include them. See Data Included. | Tyler CSAM |
Data Included
The ECR includes these columns for each party on an upcoming hearing. The Tyler Tech Odyssey Events Upload Template maps every one of them.
| Field | Report Column | Description |
|---|---|---|
| Party ID | PartyID | Unique identifier for the party in Odyssey. The template matches clients on it. |
| First Name and Last Name | FirstName, LastName | Party name. |
| Party Description | Description | The party's role on the case (for example, defendant). |
| Preferred Language | Language | Language preference for notifications. |
| Phone | Phone | Phone number for message delivery. |
| Phone Type | PhoneType | The type of phone number recorded in Odyssey. |
Email | Email address for message delivery. | |
| Event ID | EventID | Unique identifier for the hearing in Odyssey. The template matches events on it. |
| Event Date and Time | EventDate, EventTime | Scheduled hearing date and time. |
| Event Status | EventStatus | Current status of the hearing. |
| Case Type | CaseType | The type of case the hearing belongs to. The template stores it as the event type. |
| Location Name | Location | Where the hearing takes place. |
| Judge Name | JudgeName | Assigned judge. |
| Case Number | CaseNbr | Official case number. The template matches cases on it. |
Notifying attorneys or bond agents, adding case details, or sending payment notifications requires a custom report from Tyler Technologies with the additional fields. The Upload Template maps any column in the file. For data that no report provides, build a custom integration with the eCourtDate REST API.
Frequently Asked Questions
Can the report run more often than nightly? For updates during the day, use an API integration instead of the nightly report. If the court licenses the Tyler Technologies API Toolkit, see Tyler Odyssey / Enterprise Justice (API). To build a custom integration, see the eCourtDate REST API.
Does eCourtDate write data back to Odyssey? No. Data flows from Odyssey into eCourtDate only. eCourtDate reads the file from the court's SFTP server and does not create or modify records in Odyssey.
Need Help
eCourtDate helps with any step of this setup:
- Email the eCourtDate onboarding team at onboarding@ecourtdate.com.
- Schedule a session with eCourtDate.
- Search the eCourtDate Help Center.
- Open a support ticket from the Console with the Help button in the bottom-right corner.
Related
- Tyler Deployment/Configuration Guide (PDF): Tyler Technologies' instructions for scheduling the report.
- Texas OCA Court Identifiers: The Client ID for each Texas court, searchable by county, court name, or identifier.
- Server Setup: Connecting eCourtDate to an SFTP server the agency operates.
- SFTP Guide: Authentication, Upload Templates, Auto Sync, and troubleshooting.
- Tyler Odyssey / Enterprise Justice (API): API-based alternative for updates during the day.