Updating Bank details for shared vendors in SAP
In SAP the Bank details for the vendor is maintained at the general data level of Vendor master. In case an organization has multiple company codes then it is possible that vendors are shared between different regions and company codes. If the vendors are in different geographic regions then we might have different Bank accounts as well. But due to limitation of maintaining the Bank data at general data level, it is not possible to use different bank accounts for different company codes.
SAP provides the Bank partner type functionality to overcome this limitation. The bank partner type could be assigned to bank accounts in vendor master and same could be used at invoicing. When payment run is done, bank accounts are picked up based on partner type. This process could be manual and could result in payment to incorrect Bank account as well.
In this document I will discuss the process to automate the process of assigning the Bank Partner type. I have successfully implemented the solution at one of the client I worked and sharing the knowledge so that this could be used by all !!
Here is the solution which could help in automating the whole process.
Use Company code as the Bank Partner type in vendor master
Create a substitution rule at the line item level using t-code OBBH which will pull the company code (BSEG-BUKRS) and vendor number (BSEG-LIFNR) from invoice document to be posted and run a query on table LFBK to fetch Bank partner type (LFBK-BVTYP). If we get a value for field BVTYP from above query then move the same to BSEG-BVTYP. If there is no value fetched for given vendor and company code combination from LFBK, then BVTYP is left blank.
The query would be:
SELECT bvtyp FROM lfbk
UP TO 1 ROWS
WHERE lifnr = bseg–lifnr
AND bvtyp = bseg–bukrs.
IF sy–subrc = 0
AND lv_bvtyp IS NOT INITIAL.
MOVE lv_bvtyp TO bseg–bvtyp.
Post invoice for vendor 132621 in company 1000. As the substitution rule is active, the bank partner type will be populated with value 1000.
When the payment run is done, the bank account for US will be picked automatically
Few points to be noted
- If two or more company codes have one bank account and other company code have different, then leave Bank partner type blank for the company codes having same account. This was when invoice is create bank partner type will be blank for those company code and correct account could be picked
- The automation fails in case 2 or more company code have same bank account and another set of two or more company codes have same account which is different from earlier one
I hope this will be useful for FI consultants looking to automate the process of assigning the Bank account depending on the company code. This will help saving a lot of effort for the business as well as reduce errors due to manual selection of bank partner type.
Comments and suggestions to improve the content are really appreciated