There are several ways to record a vendor invoice and payment in SAP. Although there are several ways to post a payment, the most common of them is the Automated Payment Program (APP, transaction code F110).
The payment process does not finish with posting of a payment document. You need to inform the bank about your intentions too. The most common way to do so nowadays is to transmit a payment file to the bank.
Payment file is information about payments that you want to make: account numbers of your company and recipient (payee), amount, date, your reference, sometimes remittance information. There are multiple file formats in the world. Just to name a few: MT101, MT103, PAYMUL, XML-based pain.001 and so on. Your bank may even require their own file format, or flavour of the standard.
There are multiple ways to produce a payment file in SAP. Let’s look into them.
Classic printing program
This method goes back to times when the most common way to transmit a payment to the bank was a piece of paper: payment order or even a cheque could be produced with this method. SAP no longer recommends using this method, but all old programs are still in place. You can use them if you want.
In order to use these classic programs for payments generated by APP, you need to assign the program to the payment method. There is a number of the programs, but all of their names start with RFFO* that simplifies the search.
You then assign a program variant in the Automatic Payment Program. This variant contains program-specific parameters that should be used for printing. This “printing” may include the file generation.
This method of the payment file generation is not flexible, which is an obvious downside. You have to copy the existing program into your own namespace if you want to make any change to the standard logic.
Payment Medium Workbench
This method uses the more flexible approach to generate a payment file. If you want to use it, you need to determine your own Payment Medium Workbench (PMW) format and all its surroundings in transactions OBPM1 to OBPM4.
Once the format is created, you can assign it to your payment method.
PMW can produce either paper payment documents or files. In the latter case you need to select checkbox “Payment medium without docs” and select “File” or “XML” in the dropdown menu in transaction OBPM1.
The actual file generation logic is controlled via functional modules that you assign to your format in transactions OBPM1 and OBPM3. The further company code and house bank specific details are controlled via the variant of the program SAPFPAYM that you create and assign in transaction OBPM4.
SAP delivers a number of formats that includes globally accepted SWIFT MT101, MT103 and so on. They are also configurable, but details of configuration are different for each payment format. It is not subject of this article.
However, if default logic of the system is not sufficient for your purposes, you can change it by copying functional modules for the format creation into your own namespace and assigning your modules in OBPM1 or OBPM3. The latter place is preferred, although not all changes are possible to make there.
In case of brand new format you need to develop, you can write your own functional modules using the standard ones as example.
The downside of this method is that you still need to use ABAP to make changes in SAP standard logic or to create your own. Even understanding the configuration possibilities of the format may require you to read the ABAP code.
Data Medium Exchange Engine
As you can see, PMW formats give you enough flexibility to configure your payment method. However, if ABAP is not your strong side, there is even more flexible and user-friendly solution for you: Data Medium Exchange Engine.
To “switch on” the engine, you tick the checkbox “Mapping using DME Engine” in the format settings in OBPM1. In this case, all “plug-in” points for your functional modules in OBPM1 and OBPM3 remain in place. However, the main configuration is now controlled by the format tree of type PAYM that you maintain in transaction DMEE.
The DME Engine gives you a lot of flexibility to construct your own file or amend SAP standard. There is very little need to use ABAP coding when using DMEE, however there is still a possibility to use Functional Modules to calculate the value of certain DMEE tree nodes.
Once you created the DMEE tree and created a variant for SAPFPAYM, you assign it to your house bank and payment method in transaction OBPM4. Don’t forget to assign your PMW format to the payment method too.
What method of payment file generation do you use?