How to Sync Patient Data Between AdvancedMD and athenahealth
Daniel Ashcraft
Founder, Orisan Clinical Systems
If your practice runs AdvancedMD for billing and athenahealth for clinical workflows -- or manages a multi-location group where each site chose a different system -- you already know the problem. Every patient who walks through the door exists in two databases. Every demographic update, insurance change, and appointment reschedule has to be entered twice. Every discrepancy between the two systems is a billing risk, a compliance exposure, and a source of staff frustration.
This is not a niche problem. Management Services Organizations (MSOs) acquiring practices routinely inherit a patchwork of EHR and practice management systems. The standard playbook -- rip-and-replace onto a single platform -- takes 12-18 months, costs six figures, and disrupts clinical operations during the transition. Most organizations need their existing systems to coexist, reliably and compliantly, for months or years.
Why manual synchronization fails
Manual sync -- whether it is staff double-entering data or nightly CSV exports pasted into the other system -- breaks down for three reasons.
Data drift is inevitable. A patient updates their phone number at the front desk. The change goes into AdvancedMD immediately. It makes it into athenahealth two days later when someone remembers to update it -- or it never does. Multiply that by hundreds of patients across dozens of data fields and you have two databases that tell different stories about the same people. When a claim is denied because the subscriber ID in the billing system does not match the one in the clinical system, nobody can trace when the divergence happened.
Human error compounds. Transposed digits in a date of birth. A suffix dropped from a last name. An insurance plan selected from the wrong dropdown. Each individual error is small. In aggregate, they erode data quality to the point where staff stop trusting either system and start maintaining side spreadsheets -- which introduces a third source of truth.
Compliance exposure grows quietly. HIPAA requires that covered entities maintain accurate patient records and audit who accessed what. When data is manually copied between systems, there is no audit trail for the transfer itself. If a breach investigation needs to reconstruct how a patient's record moved between systems, there is nothing to examine.
How automated synchronization works
An automated sync engine replaces manual processes with a deterministic pipeline that extracts data from one system, transforms it into a common format, and loads it into the other. The key architectural components are:
Canonical data model. AdvancedMD and athenahealth represent patient data differently -- different field names, different date formats, different ways of structuring addresses and insurance information. A canonical model defines a single, normalized representation of each entity type (patients, appointments, charges, payments). Data from each vendor is transformed into this canonical form before being sent to the other side. This means the sync logic is written once against the canonical model rather than maintained as point-to-point mappings that multiply with each new system.
Incremental change detection. Rather than re-syncing entire datasets on a schedule, the engine tracks what has changed since the last sync. It queries each vendor's API for records modified after a stored cursor timestamp. This reduces API call volume, lowers the risk of rate limiting, and ensures that syncs complete in seconds rather than hours.
Conflict detection and resolution. When the same record has been modified in both systems since the last sync, the engine detects the conflict rather than silently overwriting one version. Conflicts are classified by severity -- a phone number change is different from an insurance plan change -- and either auto-resolved based on configurable rules or flagged for human review with full context about what changed on each side.
What data can be synchronized
The scope of synchronization depends on what each vendor's API exposes. Between AdvancedMD and athenahealth, the following entity types are supported:
- Patient demographics -- names, dates of birth, contact information, addresses, preferred language, and emergency contacts.
- Insurance and coverage -- primary, secondary, and tertiary payers with subscriber IDs, group numbers, and effective dates.
- Appointments -- scheduling, rescheduling, cancellations, and status updates with provider and location mappings.
- Providers and staff -- provider directories, NPI numbers, specialties, and location assignments.
- Charges and payments -- procedure codes, diagnosis codes, charge amounts, payment postings, and adjustment records.
HIPAA considerations for automated sync
Moving PHI between systems programmatically is subject to the same HIPAA Security Rule requirements as any other data processing activity. The sync engine must implement technical safeguards at every stage:
Encryption in transit. All API calls to both AdvancedMD and athenahealth use HTTPS with TLS 1.2 or higher. Certificate validation is always enabled -- the engine never accepts self-signed or expired certificates, even in development environments.
Encryption at rest. Patient data stored in the sync engine's database uses AES-256-GCM column-level encryption. Every field containing PHI is individually encrypted, not just the volume or tablespace. This means that even database administrators with direct SQL access cannot read patient data without the application-layer encryption key.
Audit logging. Every record extracted, transformed, and loaded produces an immutable audit log entry recording the timestamp, the actor (system or user), the action performed, and the record identifier. Critically, audit entries never contain PHI values -- only opaque identifiers and field names.
PHI-safe logging. Application logs never contain patient names, dates of birth, Social Security numbers, or any other identifiers. A dedicated redaction layer sanitizes all data structures before they reach the logging system. This applies to error messages, telemetry events, and debug output.
Getting started with Orisan Connect
Connecting your AdvancedMD and athenahealth instances through Orisan Connect follows a three-step process designed to get you to production sync with minimal disruption to your operations.
Step 1: Connect. Authorize Orisan Connect to access both systems using each vendor's standard authentication method. AdvancedMD uses token-based authentication with an office key; athenahealth uses OAuth 2.0 client credentials. Credentials are stored in an encrypted vault with automatic token refresh -- your team provides them once and never needs to manage them again.
Step 2: Map. Review and customize the field mappings between your AdvancedMD configuration and your athenahealth configuration. Default mappings cover the standard fields, but practices with custom fields, non-standard workflows, or specific business rules can adjust the mappings to match their operational reality.
Step 3: Sync. Run an initial full sync to bring both systems into alignment, then enable incremental sync on the schedule you choose. Monitor sync status, review any conflicts that require human attention, and export audit reports for your compliance team.
The goal is straightforward: your staff enters data once, in whichever system they are using at the moment, and the other system reflects the change automatically. No CSV files, no copy-paste, no second data entry. Just two systems that stay in sync while you focus on patient care.
Ready to eliminate duplicate data entry?
Schedule a personalized demo to see how Orisan Connect handles your specific AdvancedMD and athenahealth configuration. We will map your data, show you the conflict resolution workflow, and answer every question about HIPAA compliance.
Daniel Ashcraft
Founder of Orisan Clinical Systems. Building healthcare data infrastructure that connects clinical systems without compromising on compliance or reliability.
Get in touchRelated Articles
The Complete Guide to Tebra (Kareo) API Integration
Tebra's API is still the Kareo SOAP 2.1 Web Services interface — with an inverted success flag, an unpaginated patient endpoint, and per-endpoint rate cooldowns nobody documents clearly. This guide covers the authentication model, every quirk we've hit in production, what each entity type actually supports, and what it takes to build the integration yourself.
The Complete Guide to HIPAA-Compliant Data Synchronization
Synchronizing healthcare data between clinical systems creates HIPAA exposure at every stage — extraction, transformation, transit, and storage. This guide breaks down the technical and administrative safeguards required to keep PHI protected throughout the sync lifecycle.