FedWire Parser

Parse FedWire payment messages

1
Understanding Fedwire Messages
TL;DR

Fedwire is the Federal Reserve's real-time gross settlement (RTGS) system for high-value, time-critical US domestic payments — processing over $4 trillion daily.

What is Fedwire?

Fedwire (formally the Fedwire Funds Service) is the real-time gross settlement (RTGS) system operated by the Federal Reserve Banks of the United States. It enables participating financial institutions to send and receive same-day, final, and irrevocable payments in US dollars. Unlike batch-processed ACH payments, each Fedwire transfer is settled individually and immediately in central bank money.

Fedwire is the backbone of the US high-value payment system. It handles time-critical transactions including real estate closings, corporate mergers and acquisitions, securities settlements, interbank lending (federal funds), and urgent commercial payments. With average daily volume exceeding $4 trillion, Fedwire is one of the largest payment systems in the world.

Approximately 6,000 financial institutions participate in Fedwire, including commercial banks, credit unions, and US branches of foreign banks. Each participant maintains a reserve account at the Federal Reserve, and Fedwire transfers move funds directly between these accounts — providing settlement finality backed by the central bank.

Message Structure

Fedwire messages use a tag-based format where each data element is identified by a four-digit tag number enclosed in curly braces. Tags are grouped into functional categories covering transfer details, financial institutions, and party information.

Fedwire Message Tag Structure A structured diagram showing the key Fedwire message tags organized into three groups: Transfer Information (1500-2000 series), Financial Institutions (3100-3400 series), and Party Information (4000-4200 series), with field descriptions for each tag. Transfer Information {1500} Type/Subtype 10=Funds, 30=Basic {1510} Input Message Accountability Data {1520} IMAD Date + Source + Seq {2000} Amount 12-digit, cents Financial Institutions {3100} Sender FI ABA routing number + Name (mandatory) {3400} Receiver FI ABA routing number + Name (mandatory) Party Information {4000} Intermediary FI Optional — used for multi-hop routing {4100} Beneficiary FI Account-holding bank for beneficiary {4200} Beneficiary Account number + Name/Address (D=account | F=free-form identifier)

Key Tags

TagNameRequiredDescription
{1500}Type/Subtype CodeYesIdentifies the transfer type: 10 (funds transfer), 30 (basic), 16 (settlement)
{1510}Input Message Accountability DataYesDate, source, and sequence number for tracking
{1520}IMADYesInput Message Accountability Data — unique identifier
{2000}AmountYesTransfer amount in cents, 12-digit zero-padded
{3100}Sender Financial InstitutionYesOriginating bank ABA routing number and name
{3400}Receiver Financial InstitutionYesReceiving bank ABA routing number and name
{4200}BeneficiaryConditionalAccount number, name, and address of the ultimate recipient
{6000}Originator to Beneficiary InfoNoFree-form reference information (4 lines x 35 characters)

RTGS vs Batch Processing

Understanding the difference between Fedwire (RTGS) and ACH (batch) is essential:

Real-Time Gross Settlement (RTGS) means each Fedwire transfer is processed individually the moment it is submitted. The sender’s reserve account at the Federal Reserve is debited and the receiver’s account is credited simultaneously — settlement is final and irrevocable. There is no netting, no batching, and no waiting.

Batch processing (ACH) collects transactions over a period and processes them together. Net positions are calculated (total debits minus total credits for each bank), and only the net amounts are settled. This is more efficient for high-volume, low-value transactions but introduces delay.

FeatureFedwire (RTGS)ACH (Batch)
SettlementIndividual, real-timeNet batch, scheduled
FinalityImmediate and irrevocableRevocable within limits
SpeedMinutesSame-day to next-day
Cost per transaction$0.50 - $30+$0.20 - $1.50
Typical useHigh-value, urgentHigh-volume, recurring

Common Use Cases

  • Real estate closings: Wire transfers for property purchases where same-day settlement finality is legally required
  • Securities settlement: Delivery-versus-payment for treasury securities, agency MBS, and corporate bonds
  • Federal funds: Overnight interbank lending where banks borrow or lend reserves to meet requirements
  • Corporate treasury: Large-value vendor payments, tax remittances, and intercompany transfers
  • International correspondent banking: Dollar leg of cross-border payments originating from SWIFT MT103 messages
  • Margin calls: Same-day collateral movements for derivatives clearing and securities lending

Try These Examples

Valid Fedwire Transfer Valid

A valid Fedwire funds transfer with Type/Subtype Code {1500} = 30 (basic funds transfer), Input Message Accountability Data {1520}, Amount {2000} of $250,000.00, Sender FI {3100} with ABA routing number and name, Receiver FI {3400}, and Beneficiary {4200} with account number and structured name/address.

{1500}30 {1510}1000 {1520}20240315MMQFMP8S000001 {2000}000000025000000 {3100}091000019ORIGINATOR BANK NA {3400}021000089BENEFICIARY BANK NA {3600}CTR {4200}D12345678901234ACME CORPORATION*123 MAIN STREET*NEW YORK*NY*US*10001*
Invalid Fedwire (Missing Sender FI) Invalid

This Fedwire message is missing the mandatory {3100} Sender Financial Institution tag. The Sender FI identifies the bank originating the wire and is required for every Fedwire funds transfer. Without it, the Federal Reserve cannot process or route the payment.

{1500}30 {1520}20240315MMQFMP8S000002 {2000}000000010000000 {3400}021000089BENEFICIARY BANK NA {4200}D12345678901234JANE DOE*456 OAK AVE*CHICAGO*IL*US*60601*