ISO8583 Simulator¶
A modern, high-performance ISO 8583 message simulator with CLI, Python SDK, and LLM-powered features.
Features¶
- Message Handling: Parse, build, and validate ISO 8583 messages at 180k+ TPS
- Multi-Network Support: VISA, Mastercard, AMEX, Discover, JCB, UnionPay
- EMV/Chip Card Data: Full Field 55 TLV parsing and building
- LLM Integration: AI-powered message explanation and generation
- Multiple Interfaces: Python SDK, CLI, and interactive Jupyter notebooks
Quick Start¶
from iso8583sim.core.parser import ISO8583Parser
from iso8583sim.core.builder import ISO8583Builder
from iso8583sim.core.types import ISO8583Message
# Build a message
builder = ISO8583Builder()
message = ISO8583Message(
mti="0100",
fields={
0: "0100",
2: "4111111111111111",
3: "000000",
4: "000000001000",
11: "123456",
41: "TERM0001",
42: "MERCHANT123456 ",
}
)
raw = builder.build(message)
# Parse a message
parser = ISO8583Parser()
parsed = parser.parse(raw)
Installation¶
pip install iso8583sim
# With LLM features
pip install iso8583sim[anthropic] # Claude
pip install iso8583sim[openai] # GPT
pip install iso8583sim[llm] # All providers
# With Cython performance extensions
pip install iso8583sim[perf]
Documentation Overview¶
| Section | Description |
|---|---|
| Getting Started | Installation and quick tutorial |
| Architecture | Design decisions and module structure |
| Core Module | Parser, builder, validator, and types |
| Networks | VISA, Mastercard, and other card networks |
| LLM Features | AI-powered message explanation and generation |
| CLI Reference | Command-line interface usage |
| API Reference | Auto-generated API documentation |
Performance¶
Benchmarks on Apple Silicon (M-series), Python 3.12:
| Operation | Pure Python | With Cython |
|---|---|---|
| Parse | ~105k TPS | ~182k TPS |
| Build | ~150k TPS | ~150k TPS |
| Roundtrip | ~49k TPS | ~63k TPS |
See the Performance Guide for optimization techniques.
License¶
MIT License - see LICENSE for details.