Iso8583CS 1.0.1
dotnet add package Iso8583CS --version 1.0.1
NuGet\Install-Package Iso8583CS -Version 1.0.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Iso8583CS" Version="1.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Iso8583CS --version 1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Iso8583CS, 1.0.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Iso8583CS as a Cake Addin #addin nuget:?package=Iso8583CS&version=1.0.1 // Install Iso8583CS as a Cake Tool #tool nuget:?package=Iso8583CS&version=1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Iso8583CS
A C# implementation of the ISO-8583 Protocol as a .NET Standard 2.1 Library providing the following functions:
- Function to build the ISO Message from a model derived from BaseMessage
byte[] Build<T>(T message, string MTI, params IsoFields[] notIncludeFields) where T : BaseMessage
- Function to parse the ISO Message into a model derived from BaseMessage
T Parse<T>(byte[] isoMessageBytes) where T : BaseMessage
HOW_TO_USE with simple message
For building an Iso Message, create your Message Request Class inheriting from BaseMessage class as follows:
public class SampleRequest : BaseMessage
{
[IsoField(position: IsoFields.Field002, maxLen: 19, lengthType: LengthType.LLVAR, contentType: ContentType.ANS)]
public string Field002 { get; set; }
[IsoField(position: IsoFields.Field003, maxLen: 6, lengthType: LengthType.FIXED, contentType: ContentType.N)]
public string Field003 { get; set; }
[IsoField(position: IsoFields.Field004, maxLen: 12, lengthType: LengthType.FIXED, contentType: ContentType.ANS)]
public string Field004 { get; set; }
[IsoField(position: IsoFields.Field011, maxLen: 6, lengthType: LengthType.FIXED, contentType: ContentType.N)]
public string Field011 { get; set; }
[IsoField(position: IsoFields.Field012, maxLen: 12, lengthType: LengthType.FIXED, contentType: ContentType.N)]
public string Field012 { get; set; }
[IsoField(position: IsoFields.Field017, maxLen: 4, lengthType: LengthType.FIXED, contentType: ContentType.N)]
public string Field017 { get; set; }
[IsoField(position: IsoFields.Field024, maxLen: 3, lengthType: LengthType.FIXED, contentType: ContentType.N)]
public string Field024 { get; set; }
[IsoField(position: IsoFields.Field032, maxLen: 11, lengthType: LengthType.LLVAR, contentType: ContentType.N)]
public string Field032 { get; set; }
[IsoField(position: IsoFields.Field037, maxLen: 12, lengthType: LengthType.FIXED, contentType: ContentType.AN)]
public string Field037 { get; set; }
[IsoField(position: IsoFields.Field041, maxLen: 16, lengthType: LengthType.FIXED, contentType: ContentType.AN)]
public string Field041 { get; set; }
[IsoField(position: IsoFields.Field042, maxLen: 15, lengthType: LengthType.FIXED, contentType: ContentType.AN)]
public string Field042 { get; set; }
[IsoField(position: IsoFields.Field049, maxLen: 3, lengthType: LengthType.FIXED, contentType: ContentType.AN)]
public string Field049 { get; set; }
[IsoField(position: IsoFields.Field102, maxLen: 28, lengthType: LengthType.LLVAR, contentType: ContentType.ANS)]
public string Field102 { get; set; }
[IsoField(position: IsoFields.Field103, maxLen: 28, lengthType: LengthType.LLVAR, contentType: ContentType.ANS)]
public string Field103 { get; set; }
[IsoField(position: IsoFields.Field123, maxLen: 999, lengthType: LengthType.LLLVAR, contentType: ContentType.A)]
public string Field123 { get; set; }
[IsoField(position: IsoFields.Field126, maxLen: 999, lengthType: LengthType.LLLVAR, contentType: ContentType.ANS)]
public string Field126 { get; set; }
}
For parsing an Iso Message, create your Message Response Class inheriting from BaseMessage class as follows:
public class SampleResponse : BaseMessage
{
[IsoField(position: IsoFields.Field002, maxLen: 19, lengthType: LengthType.LLVAR, contentType: ContentType.N)]
public string Field002 { get; set; }
[IsoField(position: IsoFields.Field003, maxLen: 6, lengthType: LengthType.FIXED, contentType: ContentType.N)]
public string Field003 { get; set; }
[IsoField(position: IsoFields.Field004, maxLen: 12, lengthType: LengthType.FIXED, contentType: ContentType.N)]
public string Field004 { get; set; }
[IsoField(position: IsoFields.Field011, maxLen: 6, lengthType: LengthType.FIXED, contentType: ContentType.N)]
public string Field011 { get; set; }
[IsoField(position: IsoFields.Field012, maxLen: 12, lengthType: LengthType.FIXED, contentType: ContentType.N)]
public string Field012 { get; set; }
[IsoField(position: IsoFields.Field017, maxLen: 4, lengthType: LengthType.FIXED, contentType: ContentType.N)]
public string Field017 { get; set; }
[IsoField(position: IsoFields.Field032, maxLen: 11, lengthType: LengthType.LLVAR, contentType: ContentType.N)]
public string Field032 { get; set; }
[IsoField(position: IsoFields.Field037, maxLen: 12, lengthType: LengthType.FIXED, contentType: ContentType.AN)]
public string Field037 { get; set; }
[IsoField(position: IsoFields.Field038, maxLen: 6, lengthType: LengthType.FIXED, contentType: ContentType.AN)]
public string Field038 { get; set; }
[IsoField(position: IsoFields.Field039, maxLen: 3, lengthType: LengthType.FIXED, contentType: ContentType.AN)]
public string Field039 { get; set; }
[IsoField(position: IsoFields.Field041, maxLen: 16, lengthType: LengthType.FIXED, contentType: ContentType.ANS)]
public string Field041 { get; set; }
[IsoField(position: IsoFields.Field042, maxLen: 15, lengthType: LengthType.FIXED, contentType: ContentType.ANS)]
public string Field042 { get; set; }
[IsoField(position: IsoFields.Field048, maxLen: 51, lengthType: LengthType.FIXED, contentType: ContentType.ANS)]
public string Field048 { get; set; }
[IsoField(position: IsoFields.Field049, maxLen: 3, lengthType: LengthType.FIXED, contentType: ContentType.N)]
public string Field049 { get; set; }
[IsoField(position: IsoFields.Field123, maxLen: 999, lengthType: LengthType.LLLVAR, contentType: ContentType.ANS)]
public string Field123 { get; set; }
[IsoField(position: IsoFields.Field126, maxLen: 999, lengthType: LengthType.LLLVAR, contentType: ContentType.ANS)]
public string Field126 { get; set; }
}
- Building ISO Message as a byte[]
var _iso8583 = new Iso8583();
var smplRequest = new SampleRequest
{
Field002 = "12345678910111",
Field003 = "123456",
Field004 = "000000010000",
Field011 = "126421",
Field012 = "yyMMddhhmmss",
Field017 = "MMdd",
Field024 = "200",
Field032 = "605582",
Field037 = "309722126421",
Field041 = "REMOTBANKINGSRVR",
Field042 = "REMOTBANKINPFMS",
Field049 = "356",
Field102 = "12345678910111",
Field103 = "10111213141516",
Field123 = "NSA",
Field126 = "12345678910111"
};
var smplReqBytes = _iso8583.Build<SampleRequest>(smplRequest, "1200");
- Parsing ISO Message received as byte[]
var _iso8583 = new Iso8583();
var smplResponse = _iso8583.Parse<SampleResponse>(smplResBytes);
Hope it will help
Thanks
Indrjeet
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.1
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.