HL7 Integration Solutions — Taction Software
Home/Blog/HL7 ADT A49 Message
HL7 MessagingADT · A49 Change Account Number

HL7 ADT A49 Message: Change Patient Account Number, Structure, Segments & Examples

By Taction Software·October 22, 2026·18 min read
750+
HL7 integrations delivered
12+
Years in healthcare IT
30+
EHR platforms integrated
100%
HIPAA-compliant delivery

The HL7 ADT A49 message is a patient administration event used to notify connected healthcare systems that an existing patient account number has changed. Officially named ADT A49: Change Patient Account Number, this event helps registration systems, EHRs, billing applications, and revenue cycle platforms maintain consistent account identifiers after an administrative correction.

A49 communicates the previous account number and its replacement without instructing systems to merge two accounts. The patient identity remains unchanged, while the account identifier is updated. This guide explains A49 message structure, PID and MRG fields, realistic HL7 examples, Mirth Connect integration, acknowledgments, troubleshooting, and implementation best practices.

What Is an HL7 ADT A49 Message?

An HL7 ADT A49 message communicates a change to an existing patient account number. Healthcare organizations use account numbers to group administrative and financial information associated with patient care. An account identifier may require correction when a registration error, numbering conflict, or approved administrative update is discovered.

The source system generates an A49 notification containing the replacement account number and the previous value. Receiving applications use the message to update the account identifier while preserving the underlying account and its related records. A49 is an identifier change, not an account merge. See the HL7 ADT messages guide for the full event family.

Purpose of the HL7 A49 Event

A49 informs connected applications that a patient account number has been replaced. It allows systems to update account references without combining separate account records.

When Is an ADT A49 Message Generated?

An A49 message may be generated when a hospital corrects an incorrectly assigned account number or replaces an existing account identifier through an approved administrative workflow.

Which Healthcare Systems Receive A49 Messages?

EHRs, patient registration platforms, patient accounting applications, billing systems, revenue cycle platforms, and integration engines may receive A49 notifications.

How A49 Differs From an Account Merge

A49 changes an account identifier associated with an existing account. An account merge combines separate account records into one surviving account.

Why Accurate A49 Processing Matters

An incorrect account number change can disrupt billing, charge posting, payment reconciliation, and encounter associations. Receiving systems must validate both account identifiers before applying the correction.

HL7 ADT A49 Message Structure and Segments

In HL7 Version 2.5, A49 uses the ADT_A30 message structure. The core message contains MSH, EVN, PID, and MRG segments, with optional SFT and PD1 segments. The PID segment identifies the patient and supplies the correct replacement account number. The MRG segment carries the previous account number that must be replaced.

For A49, PID-18 contains the correct account number and MRG-3 contains the previous account number. These fields establish the direction of the change and must not be reversed.

HL7 ADT A49 Message Structure

MSH
[{SFT}]
EVN
PID
[PD1]
MRG

MSH Segment: Message Header

MSH identifies the sender, receiver, timestamp, message control ID, and HL7 version. MSH-9 contains ADT^A49^ADT_A30.

EVN Segment: Event Information

EVN records administrative information about the account number change, including when the event was entered.

PID Segment: Correct Account Number

PID-18 contains the replacement patient account number. PID-3 identifies the patient associated with the account.

MRG Segment: Previous Account Number

MRG-3 contains the previous account number. It enables receiving systems to locate the existing account and apply the identifier correction.

Optional PD1 Segment: Additional Patient Information

PD1 may contain additional patient demographic information when supported by the interface. It does not determine the account number change direction.

HL7 ADT A49 Message Example With Field Explanation

Consider a hospital that discovers an incorrectly assigned patient account number. The patient's medical record number is MRN490001. The previous account number is ACC490099. The correct replacement account number is ACC490001. The account itself remains the same administrative record; only its identifier must change. After the correction is approved, the registration system generates an A49 message so connected applications can update their account references without merging separate accounts.

Complete HL7 ADT A49 Sample Message

MSH|^~\&|REGISTRATION|HOSPITAL|EHR|MAIN|20261022183000||ADT^A49^ADT_A30|MSG49001|P|2.5
EVN|A49|20261022183000
PID|1||MRN490001^^^HOSPITAL^MR||WILSON^EMILY||19880215|F||||||||||ACC490001
MRG|||ACC490099

All patient information is fictional. In this example, PID-3 identifies the patient, PID-18 contains the correct account number, and MRG-3 contains the previous account number.

Previous account · MRG-3

ACC490099

Replacement account · PID-18

ACC490001

Replace the account number without merging accounts.

Explore each segment and its key fields:

Illustrative ADT^A49 — HL7 v2.5 (fictional data)

Select a segment to see what it carries

MSH — Message Header

Required

ADT^A49^ADT_A30 identifies the account number change event and its HL7 v2.5 message structure.

FieldMeaningValue in this message
MSH-3Sending applicationREGISTRATION
MSH-5Receiving applicationEHR
MSH-7Message creation time20261022183000
MSH-9Message typeADT^A49^ADT_A30
MSH-10Message control IDMSG49001
MSH-12HL7 version2.5

MSH-9: Message Type and Trigger Event

ADT^A49^ADT_A30 identifies the account number change event and its HL7 v2.5 message structure.

PID-3: Patient Identifier List

PID-3 identifies the patient associated with the account. It helps receiving applications verify account ownership before applying the correction.

PID-18: Correct Patient Account Number

PID-18 contains ACC490001, the replacement account number that should be used after the approved change.

MRG-3: Previous Patient Account Number

MRG-3 contains ACC490099, the account number being replaced. The destination uses this value to locate the existing account.

Why A49 Is Not an Account Merge

A49 changes the identifier of an existing account. It does not instruct connected applications to combine two separate account records.

Important HL7 A49 Fields and Mapping

The central requirement of an A49 message is distinguishing the incorrect source account number from the correct replacement account number.

HL7 defines MRG-3 as the previous account number and PID-18 as the replacement account number. A49 changes the identifier without merging separate accounts. Existing subordinate visit identifiers ordinarily remain unchanged and become associated with the corrected account number. Our HL7 parsing and data mapping team can document account identifier mapping across every receiving system.

HL7 FieldDescriptionPurpose
MSH-9Message TypeADT^A49^ADT_A30
MSH-10Message Control IDTrack message processing
MSH-12Version IDValidate HL7 version
EVN-2Recorded Date/TimeRecord administrative event
PID-3Patient Identifier ListVerify patient ownership
PID-18Patient Account NumberCorrect replacement account
MRG-1Prior Patient Identifier ListConfirm patient context, when populated
MRG-3Prior Patient Account NumberIncorrect previous account

PID-18: Correct Replacement Account Number

PID-18 identifies the account number that should be used after the correction. The receiving system must verify that it belongs to the intended patient and identifier namespace.

MRG-3: Incorrect Previous Account Number

MRG-3 identifies the previous account number. The destination uses this value to locate the existing account before replacing its identifier.

PID-3: Patient Identifier List

PID-3 identifies the patient associated with the account. The account number correction should not change the patient's identity or move the account to another patient.

MRG-1: Previous Patient Identifier List

When MRG-1 is populated, it should identify the same patient as PID-3. A49 is not intended to change the patient identity associated with the account.

MSH-10: Message Control Identifier

MSH-10 supports acknowledgment correlation, duplicate detection, and message monitoring. It should be maintained separately from patient and account identifiers.

How HL7 ADT A49 Account Number Change Workflows Operate

An A49 workflow begins when a registration or patient accounting system identifies an incorrectly assigned account number. The source application verifies the patient and determines the correct replacement account identifier. After approval, the system updates the account number and generates an A49 notification.

An integration engine validates the message and routes it to downstream applications. Each receiving system locates the existing account using the previous number and updates its references to the replacement number while preserving visits, charges, payments, and other associated records.

Step 1: Identify the Incorrect Account Number

Registration or billing staff discover an account number that requires correction. They verify the affected account and confirm that the change is not an account merge.

Step 2: Approve the Replacement Number

The authorized workflow determines the correct account number and checks that it does not conflict with another account in the same identifier namespace.

Step 3: Generate the A49 Message

The source system generates an A49 notification with the replacement account number in PID-18 and the previous account number in MRG-3.

Step 4: Validate and Route the Notification

The integration engine validates message structure, patient identity, account identifiers, and authorized sending systems before forwarding the event.

Step 5: Reconcile Downstream Account References

Receiving applications update the account identifier and verify that existing visits, charges, claims, payments, and other financial records remain associated with the correct account.

How to Implement HL7 ADT A49 Using Mirth Connect

Mirth Connect can receive, validate, transform, and route A49 messages between patient administration systems, EHRs, billing applications, and revenue cycle platforms. The channel should verify that the operation is an account identifier change rather than an account merge. It must also validate the previous and replacement identifiers, account ownership, and any configured assigning authorities.

The following examples illustrate processing of a single HL7 v2.5 A49 message using Mirth Connect's parsed HL7 XML representation. Production implementations require additional validation and destination-specific processing.

Configure the Mirth Connect Source Connector

Create an MLLP Listener using the HL7 v2.x inbound data type. Configure trusted senders, secure transport, acknowledgment handling, and access-controlled message retention.

Filter HL7 ADT A49 Messages

var messageType =
    msg['MSH']['MSH.9']['MSH.9.1'].toString();

var triggerEvent =
    msg['MSH']['MSH.9']['MSH.9.2'].toString();

var structure =
    msg['MSH']['MSH.9']['MSH.9.3'].toString();

var version =
    msg['MSH']['MSH.12']['MSH.12.1'].toString();

return messageType === 'ADT' &&
       triggerEvent === 'A49' &&
       structure === 'ADT_A30' &&
       version === '2.5';

Extract the Previous and Replacement Account Numbers

function getComponent(segment, field, number) {
    if (segment[field].length() === 0) {
        return '';
    }

    return segment[field][0]
        [field + '.' + number]
        .toString().trim();
}

var msh = msg['MSH'];
var pid = msg['PID'];
var mrg = msg['MRG'];

if (pid.length() === 0 ||
    mrg.length() === 0) {
    throw new Error(
        'Missing PID or MRG segment'
    );
}

var patientId =
    getComponent(pid, 'PID.3', 1);

var newAccount =
    getComponent(pid, 'PID.18', 1);

var oldAccount =
    getComponent(mrg, 'MRG.3', 1);

var controlId =
    getComponent(msh, 'MSH.10', 1);

if (!patientId ||
    !newAccount ||
    !oldAccount ||
    !controlId) {
    throw new Error(
        'Missing required A49 identifiers'
    );
}

if (newAccount === oldAccount) {
    throw new Error(
        'Old and new account numbers are identical'
    );
}

var changeEvent = {
    eventType: 'A49',

    operation: 'changePatientAccountNumber',

    patientId: patientId,

    previousAccountNumber:
        oldAccount,

    replacementAccountNumber:
        newAccount,

    messageControlId:
        controlId,

    processingStatus:
        'pending_validation'
};

channelMap.put(
    'accountNumberChange',
    JSON.stringify(changeEvent)
);

This example extracts identifier values only. Production channels should validate complete CX identifiers, assigning authorities, patient ownership, and any subordinate identifier changes.

Transform A49 Into a Controlled Change Request

var event = JSON.parse(
    channelMap.get('accountNumberChange')
);

var request = {
    operation: 'validateAccountNumberChange',

    patientIdentifier:
        event.patientId,

    previousAccountIdentifier:
        event.previousAccountNumber,

    replacementAccountIdentifier:
        event.replacementAccountNumber,

    approvalRequired: true,

    sourceMessageId:
        event.messageControlId
};

channelMap.put(
    'jsonPayload',
    JSON.stringify(request)
);

This JSON is an illustrative destination application payload, not a standardized HL7 or FHIR API.

Validate Account Ownership and Uniqueness

Confirm that the previous account exists, belongs to the intended patient, and can be changed to the replacement identifier without creating a collision.

Monitor Account Number Changes

Track acknowledgments, rejected updates, duplicate notifications, and downstream reconciliation. Preserve an audit trail containing the previous and replacement account identifiers.

HL7 ADT A49 ACK Message Examples and Error Handling

HL7 acknowledgments communicate whether the receiving application accepted or rejected an A49 notification. A typical ACK contains MSH and MSA segments, with ERR providing diagnostic information when an error occurs. In original acknowledgment mode, AA indicates application acceptance, AE indicates an application error, and AR indicates rejection.

An accepted acknowledgment does not necessarily prove that all downstream billing and financial applications have updated their account references. Those outcomes should be monitored separately.

Successful A49 ACK: AA

MSH|^~\&|EHR|MAIN|REGISTRATION|HOSPITAL|20261022183001||ACK^A49^ACK|ACK49001|P|2.5
MSA|AA|MSG49001

Application Error ACK: AE

MSH|^~\&|EHR|MAIN|REGISTRATION|HOSPITAL|20261022183002||ACK^A49^ACK|ACK49002|P|2.5
MSA|AE|MSG49001
ERR|||204^Unknown Key Identifier^HL70357|E

Application Rejection ACK: AR

MSH|^~\&|EHR|MAIN|REGISTRATION|HOSPITAL|20261022183003||ACK^A49^ACK|ACK49003|P|2.5
MSA|AR|MSG49001

Correlate ACKs With Original Messages

MSA-2 should reference the original A49 message's MSH-10 value. This enables the sender to identify which account number change received the acknowledgment.

Handle Duplicate and Failed Notifications

Before retrying an A49 message, determine whether the destination already updated the account identifier. Avoid repeating a successful change or introducing conflicting account references.

Common HL7 ADT A49 Integration Errors and Troubleshooting

A49 processing failures frequently involve missing account identifiers, incorrect old-to-new mappings, identifier collisions, and unsupported destination workflows. Another common problem is treating the notification as an account merge rather than an account number correction. These errors can affect charge posting, claims processing, payment reconciliation, and encounter-to-account associations.

Troubleshooting should begin with PID-18, MRG-3, patient identity, assigning authorities, and the receiving application's account management rules. Our HL7 interface messaging team can help trace account change failures across downstream systems.

PID-18 Is Missing or Incorrect

Without a valid replacement account number, the receiving application cannot determine the intended change. Validate PID-18 before forwarding the notification.

MRG-3 Does Not Match an Existing Account

The previous account number may not exist in the receiving system or may belong to a different patient. Verify the identifier and its assigning authority.

Previous and Replacement Accounts Are Reversed

Reversing PID-18 and MRG-3 can restore an incorrect account number. Confirm the mapping direction before processing.

Account Change Is Processed as an Account Merge

A49 changes the identifier of an existing account. It does not authorize combining separate account records. Use the destination's identifier-change operation.

Downstream Financial Records Are Not Updated

A billing application may update the account header while charges, claims, or payment references retain the previous number. Reconcile all affected records after processing.

HL7 ADT A49 vs A41, A44, A45, and A50

HL7 provides separate events for merging accounts, moving account information, moving visits, changing account numbers, and changing visit numbers. A49 specifically corrects an existing account identifier. A41 combines duplicate account records, while A44 moves account information between patient identities. A45 moves visit information between accounts, and A50 changes a visit identifier.

Choosing the correct event is essential because the receiving system may perform substantially different operations depending on the trigger code.

HL7 EventDescriptionMain Operation
A41Merge Account - Patient Account NumberMerge duplicate accounts
A44Move Account Information - Patient Account NumberMove account information between patients
A45Move Visit Information - Visit NumberMove a visit between accounts
A49Change Patient Account NumberCorrect an account identifier
A50Change Visit NumberCorrect a visit identifier

A49 vs A41: Account Change and Account Merge

A49 replaces an account identifier without merging separate accounts. A41 consolidates duplicate account records into one surviving account.

A49 vs A44: Identifier Change and Account Move

A49 changes the account number while preserving the account's patient association. A44 moves account information from one patient identity to another.

A49 vs A45: Account Number and Visit Association

A49 changes the identifier of an account. A45 moves visit information from an incorrect account association to the correct account.

A49 vs A50: Account and Visit Identifier Changes

A49 changes PID-18 using MRG-3. A50 changes PV1-19 using MRG-5. The events operate at different levels of patient administration.

Best Practices for Reliable HL7 A49 Integration

Reliable A49 processing requires accurate account identifier mapping, verified patient ownership, and consistent downstream reconciliation. Healthcare organizations should define which applications can initiate account number changes and which systems must receive the resulting notifications.

Integration teams should test identifier collisions, duplicate messages, out-of-order events, and accounts containing active visits or financial transactions. Historical identifiers should remain traceable, and production monitoring should distinguish message acceptance from successful reconciliation across downstream applications.

Verify Patient and Account Ownership

Confirm that the previous account belongs to the patient identified in PID-3. An A49 message should not change the patient identity associated with the account.

Preserve Old-to-New Mapping Direction

Use MRG-3 for the previous account number and PID-18 for the replacement. Validate complete identifiers and assigning authorities.

Maintain Historical Account References

Retain previous account numbers in an appropriate audit or cross-reference mechanism so historical financial transactions remain traceable.

Prevent Identifier Collisions

Verify that the replacement account number is not already assigned to a different account within the same identifier namespace.

Reconcile Billing and Encounter Records

Confirm that visits, charges, claims, payments, and other dependent records remain associated with the corrected account identifier after processing.

Frequently Asked Questions About HL7 ADT A49 Messages

What does A49 mean in HL7?

A49 is an HL7 ADT event called Change Patient Account Number. It communicates that an incorrectly assigned account number has been replaced with a correct identifier. The underlying account remains the same, and the message does not instruct receiving applications to merge separate account records.

What is the difference between HL7 A49 and A41?

A49 changes the identifier of an existing patient account. A41 merges two account records into one surviving account. The events are not interchangeable because an identifier change and an account merge have different effects on clinical and financial records.

Which HL7 fields are important in A49?

The defining fields are PID-18, which contains the correct replacement account number, and MRG-3, which contains the incorrect previous account number. PID-3 identifies the patient, while MSH-9 and MSH-10 identify and track the message.

What is the HL7 A49 message structure?

In HL7 Version 2.5, A49 uses the ADT_A30 message structure. The core segments are MSH, EVN, PID, and MRG. SFT and PD1 may also appear according to the selected HL7 version and implementation profile.

Does HL7 A49 change visit numbers?

Normally, no. A49 changes the patient account identifier without changing subordinate visit identifiers. Existing visits become associated with the corrected account number. If visit identifiers must also change, the implementation must explicitly define and validate the corresponding identifier mappings.

Can Mirth Connect process HL7 A49 messages?

Yes. Mirth Connect can receive, validate, transform, and route A49 messages between healthcare applications. Production implementations should verify patient ownership, account identifier domains, duplicate processing, and downstream financial reconciliation before applying an account number change.

Need Help With HL7 ADT A49 Integration?

Patient account number corrections require reliable coordination between registration systems, EHRs, billing platforms, and revenue cycle applications. Taction Software supports HL7 interface development, Mirth Connect implementation, patient accounting integration, and healthcare interoperability.

HL7 Patient Account Number Integration

We help healthcare organizations implement A49 interfaces with accurate account identifier mapping, validation, and downstream reconciliation.

Mirth Connect Development and Integration

Our engineers develop Mirth Connect channels for account identifier changes, including secure routing, transformations, acknowledgment handling, and exception monitoring.

EHR and Revenue Cycle Integration

We support integration between EHRs, registration systems, patient accounting platforms, and billing applications using approved administrative workflows.

Production Monitoring and Troubleshooting

We help investigate rejected A49 messages, identifier collisions, duplicate notifications, and inconsistent downstream account references.

Need help with HL7 account number changes? Explore HL7 Integration and Taction Software's EHR integration services to discuss your requirements.

ShareLinkedInXEmail

Need an HL7 ADT A49 Interface Built or Fixed?

Tell us your registration or patient accounting system, receiving applications, HL7 version, and transport method. Our engineers will scope PID-18 and MRG-3 validation, collision checks, Mirth Connect channels, acknowledgments, and billing reconciliation for your account number workflow.

  • Free 30-minute technical consultation
  • A49 account mapping and ACK review
  • NDA available upon request
  • Response within 24 hours

Talk to an HL7 Expert

Share your ADT^A49 interface requirements and our team will respond within 24 hours.

Loading verification…