Business day batch node

This node primarily determines the business date on which the batch will be processed.

It uses the date and time of the incoming transmission and, based on either a day of the week or a time of day look up in the deadline table, adjusts it to the actual processing business date. This adjustment accounts for holidays.

Gateway provides the business day workflow with the date and time of when the transmission was received. Business Rules Server receives this information in separate data fields called ibmFileDateReceived and ibmFileTimeReceived. They are converted into a single data field, which is the day of week joined with the time. For example, 51000 is 10:00 Friday morning.

This date field is used with the product code, ibmValProductId, to look up the business day of week in the DepositProductDeadline table. The following table shows an example of an inbound product deadline table.

Table 1. Example inbound product deadline batch table
Product code

(absolute)

Starting day and time

(start range)

Ending day and time

(end range)

Normal business day
ACH 10000 20130 1
ACH 20131 30130 2
ACH 30131 40130 3
ACH 40131 50130 4
ACH 50131 60130 5
ACH 60131 72359 1

In this example, a transmission received at 51000 (10:00 Friday morning) is processed on Friday; the same day it came in. A transmission with a date of 60200 (2:00 AM Saturday) is moved to Monday.

Once the business day is determined, it is used to adjust the transmission date to an actual working business date. The node moves the date either forward or backward, as necessary.
Note: The date can be moved backward as many as two business days.

The node then uses this date, along with the participant information for the immediate destination routing transit (RT) number, ibmValClDestinationRT, to determine if the date is a holiday. If so, the date is moved forward to the next business date.

Node descriptor

<?xml version="1.0"?>
<nodeDescriptor name="BusinessDayBatchNode" type="BusinessDayNode">
  <assignments>
    <assignment field="ibmValProductId"       value="DFLT" type="string"  executionPoint="onEntry" conditions="notCurrent"/>
    <assignment field="ibmNprBdCategory"      value="0"    type="string"  executionPoint="onEntry" conditions="notCurrent"/>
    <assignment field="ibmSortPattern"        value="1"    type="decimal" executionPoint="onEntry" conditions="notCurrent"/>
    <assignment field="ibmNprBdSite"          value="0"    type="decimal" executionPoint="onEntry" conditions="notCurrent"/>
    <assignment field="ibmValDepositPriority" value="0"    type="decimal" executionPoint="onEntry" conditions="notCurrent"/>
  </assignments>
  <tasks>
    <task name="DepositProductDeadlineBatchTask"/>
  </tasks>
</nodeDescriptor>

Tables

Table 2. Inbound product deadline batch table
Field name Field type Data type Length Description
ibmValProductId key char 4 The product code that was assigned by the Inbound product look up FTM node.
ibmIntDeadlineLow key char 5 The beginning of the day and time range.
ibmIntDeadlineHigh key char 5 The end of the day and time range.
ibmIntBusinessDay payload char 1 The business day of the week.
ibmIntBusinessDayPrefix payload char 6 Used for Billing purposes.
ibmIntBusinessDayPrefixCurrHol payload char 6 When the current day is a holiday, this prefix is used instead of ibmIntBusinessDayPrefix.
ibmIntBusinessDayPrefixPrevHol payload char 6 When the previous day is a holiday, this prefix is used instead of ibmIntBusinessDayPrefix.