Multiple Invoices are combined into an invoice list however, more than one invoice list is created.
Invoice List Splits occur because of different header partners (bill-to parties and payers, table VBPA) or, primarily due to different header fields (table VBRK).
The 1st step in resolving issues with invoice splits is to simply compare ALL header fields, i.e. the entries in tables VBRK and VBPA. You can use transaction SE16 or SE17 to compare the entries in these tables for invoices or invoice lists.
Especially the following header fields could cause invoices to split into multiple invoice lists.
1) Billing Date for the invoice list (VBRK-FKDAT_RL)
Different Billing Dates for the invoice list from the original invoices will automatically cause invoices to split into multiple invoice lists. This is standard functionality. The primary way to avoid this is to enter a date as a default billing date in transaction VF21 or to modify the report from transaction VF24.
If you do not enter a default billing date and the dates from the individual invoices different than the invoice lists will be split into as many invoice lists as there are different dates.
2) Translation Date (VBRK-KURRF_DAT, new as of release 4.0)
The exchange rate date is determined in the order header by the pricing date. This date can be copied into the invoice or, redetermined at the time of invoice creation based on the copy control settings. The implementation of note 168850 will avoid this problem. You can also check that note 115528 is installed if you are on 4.0B.
3) Origin sls.tax no. (VBRK-STCEG_H)
The implementation of note 141978 will avoid this problem if the split would not be justifiable.
4) All other header fields may also cause a split with the exception of:
The relevant coding can be found in program LV60AF0X,
FORM XVBRK_BEARBEITEN: ... LOOP AT XVBRK. BELEG = XVBRK-VBELN. XVBRK-NETWR = 0. "aus Vergleich ausnehmen XVBRK-MWSBK = 0. "aus Vergleich ausnehmen XVBRK-VBELN = SPACE. " " XVBRK-RFBSK = VBRK-RFBSK. " " XVBRK-ERNAM = VBRK-ERNAM. " " XVBRK-AEDAT = VBRK-AEDAT. " " XVBRK-ERDAT = VBRK-ERDAT. " " XVBRK-ERZET = VBRK-ERZET. " " ...
The only possibility to avoid a split caused by different entries in table VBRK with the exception of the fields listed above is to initialize the entries in an own data transport routine in the copy control of the affected billing document types. Of course, the information stored in these fields will then be lost in the invoice list.