Search code examples
isobcdiso8583

ISO 8583 - How are BCD Values Calculated For Fields With Subfields?


Can anyone answer how BCD data is usually calculated for fields what have subfield values?

I don't mean in terms of code, as I have that part nailed down.

What I mean is say I have field X, which is to be sent containing data for 5 sub values. The field is BCD, but would each sub-value be converted to BCD and then appended to field X or would they be added to field X in the clear and then converted as a whole to BCD?

Can't find a clear answer anywhere... not even in the message spec I'm working off of oO

Cheers, Mike K


Solution

  • You have to know the format of field X and the format of subfields. Let me give you an example.

    Assuming that you would like to transmit emv data form pos to Host using a field X.
    A format for field X is described below.

    Length Attribute 3 bytes LLL Length of data to follow
    Subfield 1 var bytes First Additional subfield
    Subfield 2 var bytes Second Additional subfield
    ...
    Subfield n var bytes nth Additional subfield

    The structure of each additional subfield is as follows
    Tag Name 2 bytes
    Tag Length 1 byte
    Tag Value ..bytes