Table Record Layout

The first look up in the sample determines the default batch and transaction billing code, whether the product is billed by tier, and the default billing tier based on the product code. The provided sample table record layout for the inbound product look up includes fields for the availability and billing code computations since the data source is common for those calculations and the same table is used in the samples. The highlighted rows are not used in the billing code computation and can be removed by the user if availability is not configured.
Table 1. Inbound Product Table Record Layout
Field Type Field Name Data Type Length Description
Key ibmValProductId char 4 Inbound product code
Payload ibmIntAvailDollarThreshold byte 4 Availability threshold in cents (not a decimal). It is not used by the billing code calculation.
Payload ibmIntFixedAvailDays byte 2 Fixed availability days (used as a default). It is not used by the billing code calculation.
Payload ibmCLBillingCode char 5 Batch billing code
Payload ibmIntTieredProd char 1 Indicates if this is a tiered product
Payload ibmNprItemBillingCode char 5 Transaction billing code
Payload ibmIntBillingTier char 6 Billing tier
Note: If the product is not billed by tier, the batch and transaction billing code from the inbound product look up table are assigned and no further billing processing is performed. Otherwise, processing continues.
The next look up is used to determine the batch billing code by using the billing code prefix, which is an input parameter. If this look up fails, the batch billing code from the deposit products table is used to prevent errors.
Table 2. Billing Code Prefix Look up Table Record Layout
Field Type Field Name Data Type Length Description
Key ibmValBillCodePrefix char 6 Billing code prefix
Payload ibmCLBillingCode char 5 Batch billing code

The sample billing code assignment workflow uses a direct and range look up on the billing tier prefix and transaction routing transit number to determine the billing tier. If the direct look up fails, a second look up is executed against the range table. Any set of look ups that return the billing tier can be substituted for this logic.

Table 3. Direct Billing Tier Table Record Layout
Field Type Field Name Data Type Length Description
Key ibmValBillTierPrefix char 6 Billing tier prefix
Key ibmNprRT char 9 Transaction routing transit number
Payload ibmIntBillingTier byte 2 Billing tier
Table 4. Range Billing Tier Table Record layout
Field Type Field Name Data Type Length Description
Key ibmValBillTierPrefix char 6 Billing tier prefix
StartKey ibmNprRT char 9 Transaction routing transit number lower limit
EndKey ibmNprRTHigh char 9 Transaction routing transit number upper limit
Payload ibmIntBillingTier byte 2 Billing tier

The final look up in the sample billing code assignment workflow uses the billing code prefix and transaction amount (which are inputs) and the billing tier (which is calculated from the direct and range tables) to determine the transaction billing code. If no records are returned from the look up, the value retrieved from the deposit products table is used as a default.

Table 5. Tiered Billing Code Lookup Table Record Layout
Field Type Field Name Data Type Length Description
Key ibmValBillCodePrefix char 6 Billing code prefix
Key ibmIntBillingTier byte 2 Billing tier
Key ibmNprAmount char 10 Amount lower limit
Key ibmNprAmountHigh char 10 Amount upper limit
Payload ibmNprItemBillingCode char 4 Transaction billing code