A comprehensive Python library for working with X12 EDI (Electronic Data Interchange) files, commonly used in healthcare for claims processing, eligibility verification, and other administrative transactions.
Install the X12 EDI Tools library using pip:
pip install x12-edi-tools
Parses X12 files into Python objects.
from x12_edi_tools.x12_parser import X12Parser
parser = X12Parser()
parsed_data = parser.parse("path/to/x12_file.edi")
print(parsed_data)
Generates X12 files from Python objects.
from x12_edi_tools.x12_generator import X12Generator
generator = X12Generator()
x12_content = generator.generate(data_dict)
with open("output.edi", "w") as f:
f.write(x12_content)
Validates X12 files against standard formats and custom rules.
from x12_edi_tools.x_12_validator import X12Validator
validator = X12Validator()
is_valid, errors, warnings = validator.validate("path/to/x12_file.edi")
print("Validation errors:", errors)
Processes dental claims (837D transactions).
from x12_edi_tools.dental_claim_processor import DentalClaimProcessor
processor = DentalClaimProcessor()
claims = processor.process("path/to/837D_file.edi")
for claim in claims:
print(f"Claim ID: {claim.claim_id}, Patient: {claim.patient_name}")
Handles eligibility inquiries and responses (270/271 transactions).
from x12_edi_tools.eligibility_checker import EligibilityChecker
checker = EligibilityChecker()
request = checker.create_270_request(patient_data)
response = checker.process_271_response(response_data)
print(f"Patient eligible: {response.is_eligible}")
Parses remittance advice (835) transactions.
from x12_edi_tools.remittance_advise_parser import RemittanceAdviceParser
parser = RemittanceAdviceParser()
remittance = parser.parse("path/to/835_file.edi")
print(f"Total paid: ${remittance.total_paid}")
Converts X12 data to and from other formats like JSON and CSV.
from x12_edi_tools.x_12_converter import X12Converter
converter = X12Converter()
json_data = converter.to_json("path/to/x12_file.edi")
csv_data = converter.to_csv("path/to/x12_file.edi")
Encrypts and decrypts X12 data for secure transmission and storage.
from x12_edi_tools.x_12_encryptor import X12Encryptor
encryptor = X12Encryptor("your-secret-key")
encrypted_data = encryptor.encrypt("path/to/x12_file.edi")
decrypted_data = encryptor.decrypt(encrypted_data)
Facilitates integration of X12 data with databases.
from x12_edi_tools.x_12_database_integrator import X12DatabaseIntegrator
integrator = X12DatabaseIntegrator("database_connection_string")
integrator.store_transaction("path/to/x12_file.edi")
transactions = integrator.retrieve_transactions(date_range)
Provides detailed logging of X12 operations for auditing and troubleshooting.
from x12_edi_tools.x_12_logger import X12Logger
logger = X12Logger("path/to/log/directory")
logger.log_parse("837", "path/to/837_file.edi", parse_result)
logger.log_generate("835", "path/to/835_file.edi", generation_data)
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License.
Don Johnson - dj@codetestcode.io
Project Link: https://github.com/donjohnson/x12-edi-tools