How tochemey/netcore8583 works
NetCore8583 is a .NET ISO 8583 message construction and parsing library; it does not perform network I/O. Its main workflow configures a MessageFactory, which creates messages from templates or parses supplied bytes into message fields; IsoMessage can then encode the result as bytes. Separate capabilities include XML and builder-based configuration, composite/custom fields, and standalone EMV BER-TLV parsing/building. Internal wiring is based on the README and sampled factory, configuration, composite, and TLV source; unsampled subsystem links are omitted where uncertain.
Main entry points: MessageFactory.cs MessageFactory · IsoMessage.cs IsoMessage · Parse Field parsers · TlvParser.cs TLV parser
Components 20
Factory configuration
- Builder API
NetCore8583/Builder - XML configuration
NetCore8583/Parse/ConfigParser.cs - MessageFactory
NetCore8583/MessageFactory.cs - Headers and templates
NetCore8583/MessageFactory.cs - Parse maps
NetCore8583/Parse
ISO message flow
- IsoMessage
NetCore8583/IsoMessage.cs - IsoValue
NetCore8583/IsoValue.cs - Message bitmap
NetCore8583/Extensions/Bitmap128.cs
Field encoding
- Field parsers
NetCore8583/Parse - ISO field types
NetCore8583/IsoType.cs - Composite fields
NetCore8583/Codecs/CompositeField.cs - Custom field codecs
NetCore8583/ICustomField.cs - Binary codecs
NetCore8583/Codecs
EMV TLV
- TLV parser
NetCore8583/Tlv/TlvParser.cs - TLV builder
NetCore8583/Tlv/TlvBuilder.cs - TLV tag model
NetCore8583/Tlv/TlvTag.cs - EMV tag dictionary
NetCore8583/Tlv/EmvTags.cs - Message TLV extensions
NetCore8583/Tlv/IsoMessageTlvExtensions.cs
Other components
- Library consumer
- ISO message bytes
Connections 26
- Library consumer → Builder API: configures
- Library consumer → XML configuration: loads config
- Builder API → MessageFactory: builds
- XML configuration → MessageFactory: configures
- MessageFactory → Headers and templates: uses
- MessageFactory → Parse maps: uses
- Library consumer → MessageFactory: creates or parses
- ISO message bytes → MessageFactory: parsed by
- MessageFactory → IsoMessage: creates or parses
- MessageFactory → Field parsers: dispatches parsing
- Field parsers → IsoValue: decodes fields
- IsoMessage → IsoValue: stores fields
- IsoMessage → Message bitmap: encodes presence
- IsoMessage → ISO message bytes: encodes to
- Field parsers → ISO field types: interprets types
- Composite fields → Field parsers: uses subfield parsers
- Custom field codecs → MessageFactory: field decoding
- Binary codecs → IsoValue: encodes values
- Library consumer → TLV parser: parses TLV
- TLV parser → TLV tag model: produces tags
- TLV parser → EMV tag dictionary: looks up descriptions
- Library consumer → TLV builder: builds TLV
- TLV builder → TLV tag model: serializes tags
- Message TLV extensions → TLV parser: parses field data
- Message TLV extensions → TLV builder: builds field data
- Message TLV extensions → IsoMessage: reads or updates