Architecture

A web application

PsyTrace runs in a web browser. Nothing is installed on the user's computer: any up-to-date browser (Edge, Chrome, Firefox, Safari) on a computer connected to the internet opens it at its web address. The program itself runs on a web server; the browser only shows the screens and sends back what the user types or chooses.

Three parts

  • The browser (the user's computer): shows the screens, the lists and the forms. It keeps no client data of its own: the data stay on the servers.
  • The web server: runs PsyTrace, checks who is logged in and what each user may see and do (the user's roles), and is the only part that talks to the database.
  • The database server (Microsoft SQL Server): keeps the data. Each organization has its own database, with its facilities, services, clients, employees and finances, and a second database for pictures, scanned documents and electronic signatures.

Short connections

The browser and the database never talk to each other. When a user asks for data (a client's episodes, a list of encounters), the web server opens a connection to the database, reads the data, closes the connection and sends the screen to the browser. Saving works the same way: the connection is opened, the data are filed and the connection is closed. No connection stays open while the user reads or types, so a computer that is switched off or loses its internet connection cannot leave the database open or damaged; at worst the last unsaved form is lost.

A save that changes more than one record (an invoice and its encounters, a payment and its claim) is done all at once: either every part is filed or none is.

Security

  • The connection between the browser and the server is encrypted (https).
  • Every user has a personal login. Passwords are stored only as a one-way code, never as text, and must be changed regularly.
  • Each screen and menu is shown only to the users whose roles allow it, and the server checks the roles again on every request.
  • Client names, identification numbers and clinical notes can be stored encrypted in the database (chosen for each organization).
  • Every change to a record is kept in the Audit Trail: who changed it, when, and the old and new values.

Backups

Every night the databases are backed up on the server itself and to a second, remote location (currently in Colorado), so the data can be restored even if the server is lost.

Electronic claims

Electronic claims (837) and payments (835) for all organizations are handled by a separate web program, AgHipaa, which works with the same databases: it creates the claim files from the encounters filed in PsyTrace and posts the carriers' payments back to them.

Copyright © 1999-2026, Antonio Gino, PhD