cancel
Showing results for 
Search instead for 
Did you mean: 

SAP BCM error No batch found for the incoming header id

Former Member
0 Kudos

Hi Experts,

I am integrating SAP BCM with Swift Network through SAP PI.

On sending a SWIFT FIN message to the ES CollectivePaymentOrderNotification_async at SAP BCM, we have a error at SAP BCM:

<FAULT_DETAIL> 

- <SAPPLCO_EXCHANGE_LOG_DATA>

<CONTROLLER />

<SEVERITY>error</SEVERITY>

<TEXT>No batch found for the incoming header id *******</TEXT>

<URL />

<ID>100(BNK_COM_CORE)</ID>

</SAPPLCO_EXCHANGE_LOG_DATA>

- <SAPPLCO_EXCHANGE_LOG_DATA>

<CONTROLLER />

<SEVERITY>error</SEVERITY>

<TEXT>Batch error</TEXT>

<URL />

<ID>013(BNK_COM_INTF)</ID>

</SAPPLCO_EXCHANGE_LOG_DATA>

</FAULT_DETAIL>

Could you please let me know what this error "No batch found for the incoming header id *******" about.

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Sudeep,

Can you attach the payload that you're passing to CollectivePaymentOrderNotification_In? The ID part of your payload should correspond to the Batch ID that you sent from your outbound FIN.

Basically, the error message is saying that there is no corresponding batch payment found for your given header id value in your CPON payload.

Here is a sample CPON payload:

<n0:CollectivePaymentOrderNotification_async xmlns:n0="http://sap.com/xi/SAPGlobal20/Global">

          <MessageHeader>

                    <ID>1000031914</ID>

                    <CreationDateTime>2011-04-25T11:11:11</CreationDateTime>

          </MessageHeader>

          <CollectivePaymentOrderNotification>

                    <ID>1000031914</ID>

                    <ExecutionStatusCode>FIN_RCVD</ExecutionStatusCode>

                    <ExecutionStatusNote>EN</ExecutionStatusNote>

                    <RejectionReason>

                              <Code>RCVD</Code>

                              <Note>EN</Note>

                    </RejectionReason>

          </CollectivePaymentOrderNotification>

</n0:CollectivePaymentOrderNotification_async>

This ID value should be the same value that you sent to your partner financial institution.

Regards,

Erwin

Former Member
0 Kudos

     Erwin,

The swift partner is sending TransmissionReport (FTA) as the acknowledgement for MT100 payroll file.

    

The header id as indicated in the error "No batch found for the incoming header id *******" is being sent in the ID field is the SenderReference field, which is the filename in the case:

-      <CollectivePaymentOrderNotification>
                <ID schemeID="" schemeAgencySchemeAgencyID="" schemeAgencyID="">MT1001234</ID>
                <ExecutionStatusCode>FIN</ExecutionStatusCode>
                <ExecutionStatusNote>NetworkAcked</ExecutionStatusNote>
       </CollectivePaymentOrderNotification>
           
   Since the SenderReference being sent from the Swift partner is the MT100 payroll file name that was sent to them, In ECC, the CollectivePaymentOrderNotification service is treating this value as RENUM of table REGUT to post notification.
   However, in table REGUT, field RENUM is not the file name.