Appearance
270 CSV Schema
This document defines the CSV format for generating 270 (Health Care Eligibility/Benefit Inquiry) files. Upload a CSV with member information to generate properly formatted EDI 270 transactions.
Quick Start
- Download a sample template
- Fill in your data (one row per member/service type combination)
- Upload to EDI Paisan's 270 Generator
- Download your generated 270 file
CSV Structure
Each row represents one eligibility inquiry — a combination of member + service type. To check multiple service types for the same member, use multiple rows.
Row Types
| Scenario | Rows Needed |
|---|---|
| 1 subscriber, 1 service type | 1 row |
| 1 subscriber, 3 service types | 3 rows |
| 1 subscriber + 2 dependents, 1 service each | 3 rows |
| 1 subscriber + 1 dependent, 2 services each | 4 rows |
Required Fields
These fields must have values in every row:
| Column | Description | Example |
|---|---|---|
PayerID | Payer's identifier (from payer list) | BCBS01 |
PayerName | Payer organization name | Blue Cross Blue Shield |
MemberID | Subscriber's member/policy ID | MEM123456789 |
MemberLastName | Member's last name | Smith |
MemberFirstName | Member's first name | John |
MemberDOB | Member's date of birth (MM/DD/YYYY) | 03/15/1985 |
ServiceTypeCode | Service type to check (see codes) | 30 |
Why These Are Required
- PayerID/PayerName: Identifies who to send the inquiry to
- MemberID: Primary lookup key for the payer
- Member Name/DOB: Verification against payer records
- ServiceTypeCode: Specifies what coverage to check
Optional Fields
Member Information
| Column | Description | Example | Notes |
|---|---|---|---|
MemberMiddleName | Middle name or initial | Robert | |
MemberSuffix | Name suffix | Jr | JR, SR, III, etc. |
MemberGender | Gender code | M | M=Male, F=Female, U=Unknown |
MemberAddress | Street address | 123 Main St | |
MemberCity | City | Chicago | |
MemberState | State code | IL | 2-letter state code |
MemberZip | ZIP code | 60601 | 5 or 9 digits |
MemberRelationship | Relationship to subscriber | 18 | See relationship codes |
Subscriber Information (when different from member)
Use these when the inquiry is for a dependent (child, spouse) and you need to include subscriber info:
| Column | Description | Example |
|---|---|---|
SubscriberID | Subscriber's member ID | MEM123456789 |
SubscriberLastName | Subscriber's last name | Smith |
SubscriberFirstName | Subscriber's first name | John |
SubscriberMiddleName | Subscriber's middle name | Robert |
SubscriberDOB | Subscriber's DOB | 03/15/1985 |
SubscriberGender | Subscriber's gender | M |
When to use: If MemberRelationship is anything other than 18 (Self), include subscriber fields.
Service Inquiry Details
| Column | Description | Example | Notes |
|---|---|---|---|
CoverageLevel | Individual or family | IND | IND=Individual, FAM=Family |
IndustryCode | Medical/Dental/Vision | | Leave blank for medical |
ServiceDateFrom | Service date or range start | 01/15/2024 | MM/DD/YYYY |
ServiceDateTo | Service date range end | 01/31/2024 | MM/DD/YYYY |
Provider Information
| Column | Description | Example | Notes |
|---|---|---|---|
ProviderNPI | Requesting provider's NPI | 1234567890 | 10 digits |
ProviderName | Provider organization name | ABC Medical Group | |
ProviderTaxID | Provider's tax ID | 123456789 | 9 digits (EIN) |
Tracking
| Column | Description | Example | Notes |
|---|---|---|---|
TraceNumber | Your reference number | TRACE001 | Returned in 271 for matching |
GroupNumber | Employer group number | GRP123 | If known |
PolicyNumber | Policy/contract number | POL456 | If different from MemberID |
Service Type Codes
The ServiceTypeCode field specifies what coverage to check:
Common Codes
| Code | Description | Use Case |
|---|---|---|
30 | Health Benefit Plan Coverage | General eligibility check — start here |
1 | Medical Care | General medical services |
2 | Surgical | Surgery coverage |
3 | Consultation | Specialist visits |
4 | Diagnostic X-Ray | Imaging coverage |
5 | Diagnostic Lab | Lab work coverage |
33 | Chiropractic | Chiropractic services |
35 | Dental Care | Dental coverage |
47 | Hospital | Hospital services (general) |
48 | Hospital - Inpatient | Inpatient admission |
50 | Hospital - Outpatient | Outpatient services |
51 | Hospital - ER (Accident) | Emergency - accident |
52 | Hospital - ER (Medical) | Emergency - medical |
86 | Emergency Services | ER coverage |
88 | Pharmacy | Prescription drug coverage |
98 | Professional (Physician) Visit | Office visits |
UC | Urgent Care | Urgent care coverage |
Additional Codes
| Code | Description |
|---|---|
6 | Radiation Therapy |
7 | Anesthesia |
8 | Surgical Assistance |
12 | Durable Medical Equipment |
14 | Renal Supplies in the Home |
23 | Diagnostic Dental |
24 | Periodontics |
25 | Restorative |
26 | Endodontics |
27 | Maxillofacial Prosthetics |
28 | Adjunctive Dental Services |
34 | Dental Crowns |
36 | Dental Accident |
37 | Orthodontics |
38 | Prosthodontics |
39 | Oral Surgery |
40 | Preventive Dental |
42 | Home Health Care |
43 | Home Health Prescriptions |
44 | Home Health Visits |
45 | Hospice |
46 | Respite Care |
49 | Hospital - Room and Board |
53 | Hospital - Ambulatory Surgical |
54 | Long Term Care |
55 | Major Medical |
56 | Medically Related Transportation |
57 | Air Transportation |
58 | Cabulance |
59 | Licensed Ambulance |
60 | General Benefits |
61 | In-vitro Fertilization |
62 | MRI/CAT Scan |
63 | Donor Procedures |
64 | Acupuncture |
65 | Newborn Care |
66 | Pathology |
67 | Smoking Cessation |
68 | Well Baby Care |
69 | Maternity |
70 | Transplants |
71 | Audiology Exam |
72 | Inhalation Therapy |
73 | Diagnostic Medical |
74 | Private Duty Nursing |
75 | Prosthetic Device |
76 | Dialysis |
77 | Otological Exam |
78 | Chemotherapy |
79 | Allergy Testing |
80 | Immunizations |
81 | Routine Physical |
82 | Family Planning |
83 | Infertility |
84 | Abortion |
85 | AIDS |
87 | Podiatry |
89 | Free Standing Prescription Drug |
90 | Mail Order Prescription Drug |
91 | Brand Name Prescription Drug |
92 | Generic Prescription Drug |
93 | Podiatry - Nursing Home Visits |
94 | Podiatry - Office Visits |
95 | Podiatry - Surgery |
96 | Psychotherapy |
97 | Social Work |
99 | Other Medical |
A0 | Combined Medical and Dental |
A1 | Physicians Visit - Office |
A2 | Physicians Visit - Home |
A3 | Physicians Visit - Inpatient |
A4 | Psychiatric |
A5 | Psychiatric - Room and Board |
A6 | Psychotherapy - Inpatient |
A7 | Psychotherapy - Outpatient |
A8 | Psychiatric - Outpatient |
A9 | Rehabilitation |
AA | Rehabilitation - Inpatient |
AB | Rehabilitation - Outpatient |
AC | Occupational Therapy |
AD | Physical Medicine |
AE | Speech Therapy |
AF | Skilled Nursing Care |
AG | Skilled Nursing Care - Room and Board |
AH | Substance Abuse |
AI | Alcoholism |
AJ | Drug Addiction |
AK | Vision |
AL | Frames |
AM | Routine Eye Exam |
AN | Lenses |
AO | Routine Exam |
AQ | Non-Medically Necessary Physical |
AR | Experimental Drug Therapy |
BA | Independent Medical Evaluation |
BB | Partial Hospitalization (Psychiatric) |
BC | Day Care (Psychiatric) |
BD | Cognitive Therapy |
BE | Massage Therapy |
BF | Pulmonary Rehabilitation |
BG | Cardiac Rehabilitation |
BH | Pediatric |
BI | Nursery |
BJ | Skin |
BK | Orthopedic |
BL | Cardiac |
BM | Lymphatic |
BN | Gastrointestinal |
BP | Endocrine |
BQ | Neurology |
BR | Eye |
Tip: If checking general eligibility, use code 30 (Health Benefit Plan Coverage). This returns overall plan information.
Relationship Codes
The MemberRelationship field uses standard X12 relationship codes:
| Code | Relationship |
|---|---|
18 | Self (subscriber is the member) |
01 | Spouse |
19 | Child |
20 | Employee |
21 | Unknown |
39 | Organ Donor |
40 | Cadaver Donor |
53 | Life Partner |
G8 | Other Relationship |
Default: If MemberRelationship is blank, the system assumes 18 (Self).
Validation Rules
The generator validates your CSV before creating the 270 file:
Format Validation
| Field | Rule | Error Message |
|---|---|---|
MemberDOB | Must be MM/DD/YYYY | "MemberDOB must be in MM/DD/YYYY format" |
ServiceDateFrom | Must be MM/DD/YYYY | "ServiceDateFrom must be in MM/DD/YYYY format" |
MemberGender | Must be M, F, or U | "MemberGender must be M, F, or U" |
ProviderNPI | Must be 10 digits | "ProviderNPI must be 10 digits" |
MemberState | Must be 2 letters | "MemberState must be 2-letter state code" |
MemberZip | Must be 5 or 9 digits | "MemberZip must be 5 or 9 digits" |
Required Field Validation
| Condition | Error Message |
|---|---|
| Missing PayerID | "Row X: PayerID is required" |
| Missing MemberID | "Row X: MemberID is required" |
| Missing MemberLastName | "Row X: MemberLastName is required" |
| Missing MemberFirstName | "Row X: MemberFirstName is required" |
| Missing MemberDOB | "Row X: MemberDOB is required" |
| Missing ServiceTypeCode | "Row X: ServiceTypeCode is required" |
Dependent Validation
| Condition | Error Message |
|---|---|
| Relationship not "18" but missing SubscriberID | "Row X: SubscriberID required for dependent inquiries" |
| Relationship not "18" but missing SubscriberLastName | "Row X: SubscriberLastName required for dependent inquiries" |
Date Validation
| Condition | Warning Message |
|---|---|
| ServiceDateFrom in the past | "Row X: Service date is in the past" |
| ServiceDateTo before ServiceDateFrom | "Row X: ServiceDateTo must be after ServiceDateFrom" |
| MemberDOB in the future | "Row X: MemberDOB cannot be in the future" |
Sample Templates
Basic Eligibility Check
Single subscriber, general coverage check:
csv
PayerID,PayerName,MemberID,MemberLastName,MemberFirstName,MemberDOB,ServiceTypeCode
BCBS01,Blue Cross Blue Shield,MEM123456789,Smith,John,03/15/1985,30Multiple Service Types
Check multiple coverage types for one member:
csv
PayerID,PayerName,MemberID,MemberLastName,MemberFirstName,MemberDOB,ServiceTypeCode
BCBS01,Blue Cross Blue Shield,MEM123456789,Smith,John,03/15/1985,30
BCBS01,Blue Cross Blue Shield,MEM123456789,Smith,John,03/15/1985,88
BCBS01,Blue Cross Blue Shield,MEM123456789,Smith,John,03/15/1985,35Checks: General coverage (30), Pharmacy (88), and Dental (35)
Subscriber with Dependent
Check eligibility for subscriber and their child:
csv
PayerID,PayerName,MemberID,MemberLastName,MemberFirstName,MemberDOB,MemberRelationship,SubscriberID,SubscriberLastName,SubscriberFirstName,SubscriberDOB,ServiceTypeCode
BCBS01,Blue Cross Blue Shield,MEM123456789,Smith,John,03/15/1985,18,,,,30
BCBS01,Blue Cross Blue Shield,MEM123456790,Smith,Emma,05/20/2015,19,MEM123456789,Smith,John,03/15/1985,30Row 1: Subscriber (John Smith), Row 2: Dependent (Emma Smith, child)
Full Example with All Fields
csv
PayerID,PayerName,MemberID,MemberLastName,MemberFirstName,MemberMiddleName,MemberDOB,MemberGender,MemberAddress,MemberCity,MemberState,MemberZip,MemberRelationship,SubscriberID,SubscriberLastName,SubscriberFirstName,SubscriberDOB,ServiceTypeCode,CoverageLevel,ServiceDateFrom,ProviderNPI,ProviderName,TraceNumber
BCBS01,Blue Cross Blue Shield,MEM123456789,Smith,John,Robert,03/15/1985,M,123 Main St,Chicago,IL,60601,18,,,,,30,IND,02/01/2024,1234567890,ABC Medical Group,TRACE001
AETNA01,Aetna,AET987654321,Johnson,Mary,Ann,06/22/1990,F,456 Oak Ave,Boston,MA,02101,18,,,,,30,IND,02/01/2024,1234567890,ABC Medical Group,TRACE002
BCBS01,Blue Cross Blue Shield,MEM123456790,Smith,Emma,,05/20/2015,F,123 Main St,Chicago,IL,60601,19,MEM123456789,Smith,John,03/15/1985,30,IND,02/01/2024,1234567890,ABC Medical Group,TRACE003Batch Processing Tips
Grouping Recommendations
For efficiency, the generator groups inquiries:
- By Payer — All inquiries to the same payer go in one interchange
- By Provider — All inquiries from the same provider NPI stay together
- By Subscriber — Subscriber and their dependents are grouped
Trace Numbers
- Use unique
TraceNumbervalues for each row - The trace number appears in the 271 response
- Helps you match responses to original inquiries
File Size Limits
| Tier | Max Rows | Max Inquiries per 270 |
|---|---|---|
| Free | 50 | 50 |
| Pro | 500 | 500 |
| Enterprise | Unlimited | 1,000 per file |
Error Handling
CSV Parse Errors
| Error | Cause | Solution |
|---|---|---|
| "Unexpected end of input" | Missing closing quote | Check quoted fields |
| "Invalid CSV format" | Inconsistent column count | Ensure all rows have same columns |
| "Empty file" | No data rows | Add at least one data row |
Validation Errors
Validation errors prevent file generation. Fix all errors before retrying.
Warnings
Warnings don't block generation but may indicate data quality issues. Review and fix if necessary.
Generated 270 Structure
Your CSV generates a 270 with this structure:
ISA... (Interchange Header)
GS*HS... (Functional Group - HS = Eligibility)
ST*270... (Transaction Set Header)
BHT*0022*13*... (Beginning of Hierarchical Transaction)
HL*1**20*1~ (Information Source - Provider)
NM1*1P*... (Provider Name/NPI)
HL*2*1*21*1~ (Information Receiver - Payer)
NM1*PR*... (Payer Name/ID)
HL*3*2*22*1~ (Subscriber)
TRN*1*{TraceNumber}*... (Trace Number)
NM1*IL*... (Subscriber Name/ID)
DMG*D8*{DOB}*{Gender}~ (Demographics)
DTP*291*D8*{Date}~ (Service Date)
EQ*{ServiceTypeCode}~ (Eligibility Inquiry)
HL*4*3*23*0~ (Dependent, if any)
TRN*1*{TraceNumber}*...
NM1*03*... (Dependent Name)
...
SE... (Transaction Set Trailer)
GE... (Functional Group Trailer)
IEA... (Interchange Trailer)Downloadable Templates
- Basic Template (3 columns) — Minimum required fields
- Standard Template (12 columns) — Common fields
- Full Template (all columns) — All available fields
Related Documentation
- 270 Eligibility Inquiry — Understanding 270 structure
- 271 Eligibility Response — Understanding responses
- Eligibility Summaries — Reading eligibility data
