DME Integration DME ENGINE DME Integration SAP Multiple Ways of Delivering My Knowledge in SAP...... Guntupalli Hari Krishna
DM
E I
nt
eg
ra
tio
n
D
ME
EN
GIN
E
DM
E In
tegr
atio
n
SA
P
Multiple Ways of Delivering My Knowledge in SAP...... Guntupalli Hari Krishna
DM
E I
nt
eg
ra
tio
n
Index :
1.Introduction ...........................01
2.DME Integration with SEPA,F110,PAY ROLL CYCLE
(HCM) ,PWM,ABAP,F111, FRFT_B...........06
3.DME Enhancements...................07
4.What is PWM (The Payment Medium Workbench can
be used by several components, for example FI-
AP/AR FI-TV, HR-PY, TR-CM, and TR-TM)..07
5.Outgoing DME File Process...........08
6.Incoming DME File Process............09
7.DME File Format - ACH................10
8.How to down load DME File............29
9.Swift MT940,MT945....................33
10.DME Configure .......................34
11.Pay Roll(DME) .......................62
12.What Does it means ? XML,TXT Files...70
13.DME Notes & Tables...................70
14.Transport Format Tree ...............71
How to create and configure DME
File
Easy steps to create and configure DME File
DM
E I
nt
eg
ra
tio
n
Table of Contents:
1) Introduction: Significance of DME Files
2) DME Tree structure
3) DME File Configuration Settings
4) Conclusion
Introduction:
DME stands for Data Medium Exchange
A data medium exchange (DME) is a data exchange file which is used
to send payment information of an enterprise to banks or tax
authority. Basically these files contain financial data which can
be in flat file or xml file format. Different File formats can be
created for different countries and different banks based on their
own norm which replaces conventional ABAP programs.
T-Code for DME files is: DMEE
Main components of DME File are: -
Header Data
Nodes
Data Mapping
There are some standard DME file formats, which can be changed as
per country or bank requirements. A complete new DME format can
also be created if requirement is different from pre existing
formats.
Step by Step procedure to create DME file format :
1) Go to T code DMEE. Provide tree type from available ones.
2) DME files can be generated in flat files or XML format.
3) Provide short description and documentation
4) DME tree can be divided into three components as shown
below.
5) There are some fields which are available for DME file as
shown below.
5a) Note to payee data
5b) System Fields like Date and Time
DME tree Nodes creation procedure:
Header Data:
Following header information needs to be maintained in various
tabs under header data:
Administrative Data: Provide administrative data in node first
tab.
DM
E I
nt
eg
ra
tio
n
Format Attributes: Depending on the type of file format, you
can specify other details: for flat files, you can enter delimiter
information; for XML files, you can specify further processing
(via exit module) for a file after its creation, by entering an
XSLT program.
Levels The number of levels defines the no of levels in a tree.
This tab also defines the repetition level which tells how often a
certain level may be output. If this number is exceeded, the
corresponding level cannot be output anymore. If the limit is
reached for the uppermost level in the format tree and additional
data is to be processed, a second file is generated. If the limit
is reached for lower levels, the preceding level is repeated so
that data can continue to be output for this level.
Sort Key Fields: File Data can be sorted based on given fields.
File Data: This tab provides the file row separator and segment
ending indicator.
After creating a segment group, a segment will be created. A tree
can have multiple segments as well multiple segments. Create a
segment by right click as shown below:
Node Info: Provide node information for output
Comment: This column is used to contain comments for nodes.
Maximum three lines of comments per node, this tab is visible for
all nodes except the header.
Create Elements in Sub node as shown below:
These elements can be of various types as shown in mapping
procedures.
1) Constant: This type of element is used to contain constant
value like 'DME' which is assigned in source tab as shown below:
5) This node contains structure types which can have system
fields like date, time
In source tab maintain the system field
After header segment, Data segment is created as shown below.
Data Node contains a new element which is of segment type.
6) Element can also have the results of function module as
shown below.
Mapping Procedure should be of Type Exit Module
Specify the FM name in source tab as shown below.
Create a footer segment for footer data of the file which again
contain any no. of elements as shown below.
3. Configuration of DME File
DM
E I
nt
eg
ra
tio
n
After creation of DME file, next step is to configure the DME file
for automatic payment run which requires below steps:
1) Go to T code FBZP and select 'pmnt methods in country'
2) Here different payment methods can be defined for country
as shown below:-
3) Now select specific payment method and double click on the
same. Following screen will be displayed. In payment medium
workbench, DME tree can be assigned in Format column as shown
below:
4) Click on Format settings.
5) Click on DME Engine, DME tree will be displayed.
Now DME tree format is being attached for a particular
country and a particular payment method. To generate the DME file,
you have to run the automatic payment program with this payment
method. After the payments have been successfully posted, you can
go to DME administration and with the help of DME manager download
files on your PC. DME can be attached to a print program and form
for the creation of Payment Advices.
Whenever there is an automatic payment run for the country for a
specific payment method.
Conclusion:
DME engine provides different layouts and readymade way to create
flat files or XML files for external systems. It provides speed
and flexibility over conventional ABAP programs. Files can be
modified based on country and regulations. The system can trigger
the creation of a DME file from the payment program if, for
example, you want to submit your vendor payments to your bank
electronically. For this tree type, you use the PMW) to configure
payment media.
DM
E I
nt
eg
ra
tio
n
DME Integration with SEPA,F110,PAY ROLL CYCLE (HCM) ,PWM,ABAP,F111, FRFT_B
Define DME User ID (France) Accounts Receivable and Accounts Payable
Develop Enhancements for DME Accounts Receivable and Accounts Payable
Develop Enhancements for DME Accounts Receivable and Accounts Payable
Assign Reporting Categories to DMEE Format Trees Austria
Check DME Files for Bill of Exchange Presentation Bank Accounting
Define DME User IDs Bank Accounting
Maintain Currency Codes for DME Brazil
Payment Transactions (DME/Forms) Functions and Settings for the Dual Currency Phase
DME Engine General Application Functions
Define DME Formats for Tax Reporting General Ledger Accounting
Define DME Formats for Tax Reporting General Ledger Accounting (New)
Assign Reporting Categories to DMEE Format Trees Generic
DME Files Generic Withholding Tax Reporting
Adjustments for Legal Amendments in Order of Attachment Payroll: Austria
Define amendment threshold amount/custom sort field printing Payroll: Canada
Define employee secondments Payroll: Portugal
Define LI Specific Country Code for DME File Payroll: Taiwan
Interface Data Derivation Amendments Public Sector
Interface File Layout Amendments Public Sector
DM
E I
nt
eg
ra
tio
n
Develop Enhancements for DME:
The following SAP enhancements are available for the DME area:
RFFOX001 for foreign DME (payment) - Germany
RFFOX002 for domestic DME (payment) - Germany
RFFOX003 for domestic DME (header) - Germany
RFFOX021 for domestic DME BGC - Netherlands
RFFOX022 for domestic DME ClieOp02 - Netherlands
RFFOX041 for domestic DME - Belgium
RFFOX042 for domestic DME - Belgium
RFFOX041 for DME DOM80 - Belgium
RFFOX900 for DME MT100 (payment) - international
RFFOX901 for DME MT100 (header) - international
RFFOX902 for DME MT100 (trailer) - international
RFFOX061 for SAD TA05 Switzerland (PTT)
RFFOX062 for SAD TA11 Switzerland (PTT)
RFFOX063 for BAD TA48 Switzerland (PTT)
RFFOX064 for SAD TA12 Switzerland (PTT)
RFFOX065 for SAD TA14 Switzerland (PTT)
RFFOX066 for SAD TA25 Switzerland (PTT)
RFFOX071 for DME TA826 Switzerland (Banks)
RFFOX072 for DME TA827 Switzerland (Banks)
RFFOX073 for DME TA830 Switzerland (Banks)
RFFOX074 for DME TA832 Switzerland (Banks)
RFFOX075 for LSV TA870 Switzerland (Banks)
RFFOX081 for foreign DME (payment) - France
RFFOX082 for domestic DME (payment) - France
Payment Medium Workbench
DM
E I
nt
eg
ra
tio
n
Purpose
The Payment Medium Workbench (PMW) is a tool used to configure and create payment media
sent by organizations to their house banks. This generic tool will gradually phase out the classic
payment medium programs (RFFO*) due to the range of advantages that it provides.
Superior control and verification of payment procedure
Improved performance with mass payments (> 50,000)
Better sort functions with payment advice notes
Clearer to work with than the myriad previous payment medium programs
Easier to maintain and to extend
Treasury Data Medium Administration:
A transaction code (FDTT) is used to treasury data medium administration access functions or
running programs in a SAP application more rapidly. By entering a t-code instead of using the
menu, navigation and execution are combined into a single step. Transaction code FDTT – treasury
data medium administration mainly belongs to transaction manager module. Details of sap
transaction code FDTT – treasury data medium administration is given below.
Use comment section below on this page to ask or share some more information about about
FDTT – treasury data medium administration.
FDTT
SAP Easy Access > Accounting > Financial Supply Chain Management > Treasury and Risk
Management > Transaction Manager > Money Market > Environment > FDTT - DME
Administration
FDTT
SAP Easy Access > Accounting > Financial Supply Chain Management > Treasury and Risk
Management > Transaction Manager > Foreign Exchange > Environment > FDTT - DME
Administration
FDTT
SAP Easy Access > Accounting > Financial Supply Chain Management > Treasury and Risk
Management > Transaction Manager > Debt Management > Environment > FDTT - DME
Administration
SEPA Adding the format parameter structures in the DMEE
format: 1) Go to transaction DMEE and put the tree type as ‘PAYM’ and the format tree name as
‘SEPA_CT’ and go to change mode.
2) After that change the structure name as per your business requirement:
DM
E I
nt
eg
ra
tio
n
Adding the format parameter structures in the transaction OBPM1:
1) Go to transaction OBPM1 and choose the corresponding line for your format SEPA_CT.
2) After that change the structure name as per your business requirement:
Now, while executing the DME file from the transaction FBPM, push ‘Format Parameters’ and put
the corresponding values there.
After that you need to call the particular node in the customer specific BADI implementation.
Parameters of DMEE-exit function module:
DM
E I
nt
eg
ra
tio
n
The format parameters of the SAP-Structure (See TA OBPM1, values entered in the variant of SAPFPAYM) are available in the parameter i_uparam. Parameters of a customer-Structure (entered in TA OBPM3) are not available in the DMEE-tree, they are available in exit 21 of the PMW. If you need further parameters, consider enhancing the SAP-Structure FPM_SEPA.
Nodes added in the format SEPA_CT for Ireland:
Please refer the note 1923816 for the Ireland specific nodes in DMEE formats.
Outbound DME Payment Process
Manual Outbound DME Payment Process:
1.) Payment run is executed in SAP via transaction F110..
2.) File is generated in bank specific format and stored in SAP DME Administrator.
3.) File is manually saved to local directory.
4.) User Connects using bank software or at secure website.
5.) Payment File is uploaded to bank.
6.) Payment is processed and distributed to payee.
Automatic Outbound DME Payment Process:
1.) Payment run is executed in SAP via transaction F110..
2.) File is generated in bank specific format and stored in Unix Directory.
3.) File is encryped and ftped to secure location specified by bank.
4.) Payment is processed and distributed to payee.
Incoming DME Files Process:
Incoming DME Files: Files, which are received from a third party and need to be interpreted. The
containing documents may need to be posted in the system.
Convert Format of Incoming DME File :
Use
You use this program to convert
incoming data medium exchange (DME) files to a format that the R/3 System can read and process.
Prerequisites
You have already created a
format tree in the DME Engine that models the format of the DME file you are importing.
Activities
To access the program, from the SAP Easy Access menu, choose Accounting Financial Accounting
Banks Incomings Bank Statement Convert with DME Engine.
DM
E I
nt
eg
ra
tio
n
When you run the program, fill out the following group boxes:
DMEE: Format Details
Specify which
tree type (currently, only MCSH) and format tree the program is to use to convert the incoming file.
Incoming DME File
Specify where the program is to read the incoming file from, and its name and record format.
Converted DME File
Specify where the incoming file, once converted, is to be written to, as well as a name for the converted file. If the program generates two files in the conversion process (as is the case for tree type MCSH), then you only enter one file name and the system automatically creates two files from it. For example, if you enter name.txt as the file name, the system then creates name_1.txt and name_2.txt.
Logs
If you want the program to
perform the checks for the incoming file (defined in the DMEE format tree you are using in the conversion) and to generate a log containing the results, set the Generate Check Results indicator (refer to the field help for further details).
We recommend that you always set this indicator (it is set by default), because if you deselect it and errors occur during the file check, the system still creates a converted file (which would be erroneous in this case).
You also have the option of logging all or selected data contained in the incoming file.
If you select both log options, the system displays the results in a single log.
Posting
Here, you can specify that you want the conversion program to transfer the file to another report for automatic further processing (such as posting and clearing of electronic bank statements). For more details on this option, refer to the field help.
Integration:
First, you model the external format file as a
format tree in the DME Engine. Then, when you receive an incoming DME file, you convert it to the format defined by the format tree. Currently, the DMEE supports conversion into Multi Cash format only ( tree type MCSH).
The R/3 System is then able to further process the file in Multi Cash format. In the case of electronic bank statements, this could involve
DM
E I
nt
eg
ra
tio
n
ACH Payment process with DME Engine :
ACH: Electronic payments or credits completed in standardized formats
that allow these banking transactions to be sent anywhere in the United
States.
NACHA: The National Automated Clearing House Association – The trade
association for the electronic payments, which establish the rules,
industry standards, and procedures governing the exchange of
commercial ACH Payments by depository financial institutions.
ACH Network: Funds transfer system governed by NACHA rules which
provides the clearing of electronic entries for participating financial
institutions.
Virtually every major bank is affiliated with NACHA or works with a local
clearinghouse.
AUTOMATED
DM
E I
nt
eg
ra
tio
n
Implementation
DM
E I
nt
eg
ra
tio
n
AP ACH Payment Run (Transaction F110)
Overview:
Daily AP ACH payment run
Transaction:
F110 – Automatic Payment
Hints / Tips:
Run AP ACH payments each morning for the primary vendors (vendors 100000 to 199999)
Only enter payment method “A” as a Parameter for the AP ACH payment run
Never enter more than one payment method in the parameters for a payment run
Payment method “B” is used for the PERS ACH payment (vendors 400071, 400529,
DM
E I
nt
eg
ra
tio
n
400530). Do a separate payment run for PERS
For the Daily AP ACH payment run and the twice weekly check payment run always enter
the appropriate payment method as a Free Selection for field LFB1-ZWELS (Vendor
Payment Method).
o The proposal and payment list will be easier to review because this limits invoices to only those from vendors set up for the payment method entered (A = AP ACH, C = check)
o If AP ACH and check payment runs are being executed simultaneously, this also prevents the first one executed from locking up the vendors listed in the parameter range
o Note that the proposals will not list invoices with a payment method manually entered that differs from the vendor payment method.
30 minutes after completing the payment process, a faxed and e-mailed confirmation note
should be received from Wells Fargo confirming receipt of the ACH file. Contact EBS
Support if no confirmation note arrives or if errors are reported.
ACH deposit advice emails are on a 3-hour delay.
Authorized Operational Accounting staff can view the ACH deposit advice emails online.
Emails can also be resent to the vendor, if requested.
Click here for information on Parameters (Posting Date, Docs Entered Up To, and Next P/Date)
to enter in your daily ACH runs.
Procedure:
Perform the following steps in order to complete this AP ACH payment run
Step 1: Open transaction F110
Step 2: Enter the current date as the run date (MM/DD/YYYY)
Enter “AR1ND” as the Identification
DM
E I
nt
eg
ra
tio
n
NOTE: “AR” indicates ACH payment run. “1ND” indicates primary vendors
Step 3: Click the Parameter tab and perform the following actions:
Verify that the Posting Date is the current date
Enter the previous day’s date in the Docs entered up to field
Under Payments control enter the following:
o “COP1” under Company Codes
o “A” under Pmt meths to execute an ACH run. (C is for check run)
o Tomorrow’s date under Next p/date (type these fields in)
Under Accounts enter the vendor range for primary vendors – 100000 to 199999
DM
E I
nt
eg
ra
tio
n
Step 4: Click the Free Selection tab and perform the following actions:
Under Selection Criteria, click the matchcode button for Field Name,
DM
E I
nt
eg
ra
tio
n
Select Others, click Continue:
Select Vendor master record, click Continue:
DM
E I
nt
eg
ra
tio
n
Select Payment methods (LFB1-ZWELS)
Enter “A” in the Values field
DM
E I
nt
eg
ra
tio
n
NOTE: Payment methods will display in the Field Name pull down list after adding it the first
time.
This limits the proposal to vendors records set up with payment method A. The proposal and
payment list will be shorter as the exceptions will not list invoices for vendors set up with
payment method C.
The daily AP ACH payment run and twice weekly check run for primary vendors can be run
simultaneously as the first executed won’t lock up the others vendors.
DM
E I
nt
eg
ra
tio
n
Step 5: Click the Additional Log tab and perform the following actions:
Under Required logging type, check the following fields: “Due date check”, “Pmnt method selection if not successful”, and “Line items of the payment documents”
Under Accounts required enter the vendor range for primary vendors – 100000 to
199999
DM
E I
nt
eg
ra
tio
n
Step 6: Click the Printout/data medium tab and perform the following actions:
Under Form printing/data medium exchange, for program RFFOAVIS_FPAYM enter
“AP_ACH_DPT_ADV (AP ACH Deposit Advice)
NOTE: The AP ACH Deposit Advice variant must be entered in order to generate the ACH
deposit advice and emails. If you miss this step, the payment documents and ACH file will be
created and sent. No emails and ACH deposit advices will be created. EBS Support can
generate the emails and ACH deposit advices, but you will need to put in a ticket right away.
DM
E I
nt
eg
ra
tio
n
Step 7: Click the Status tab and perform the following actions:
The Exit editing screen displays. Click Yes
The status screen now indicates “Parameters have been entered”
DM
E I
nt
eg
ra
tio
n
Step 8: Click the Proposal button . The Schedule Proposal screen displays
Click the Start immediately check box
Verify that the Create payment medium check box is blank
Click Schedule (green check mark)
DM
E I
nt
eg
ra
tio
n
The status screen now indicates “Proposal is running”
Step 9: Click the Refresh button periodically until the status indicates that the “payment
proposal has been created”
Click Display Proposal to view payments and exceptions
Click Display Proposal Log to view the proposal log
NOTE: View the proposal to determine how many items will be paid and the total outgoing
payment prior to the proposal review.
View the proposal log to determine if any errors are preventing payments.
Step 10: The AP Central Accounting Payment Processor in Operational Accounting reviews
the invoices included in the proposal using transaction S_P99_41000099 – Payment List.
NOTE: Operational Accounting uses the payment list to review documents prior to payment.
- Documents can be blocked or unblocked for payment during the review.
- Changes to documents are not reflected in the payment proposal.
- Invoices blocked should be recorded on the AP Error Tracking Log
Step 11: Inform Treasury that the AP ACH payment proposal can be viewed to determine if a
fund transfer is required. They will view the proposal using transaction S_P99_41000099 –
Payment List.
Step 12: After Operational Accounting completes the payment review, delete the payment
proposal.
Click the Edit button Proposal Delete
The Delete Proposal screen displays. Click Yes
The message displays at the bottom of the screen
NOTE: The proposal must be deleted after the payment review because changes to the
documents are not reflected in the payment proposal
Step 13: Repeat steps 8 and 9 above.
Step 14: Inform the Internal Auditors that the AP ACH payment run proposal is ready to
review. The Internal Auditors use transaction S_P99_41000099 – Payment List to review the
payment proposal.
NOTE: If the Internal Auditors identify any items to block. Operational Accounting will block the
items, delete the proposal, and rerun the proposal.
Invoices blocked should be recorded on the AP Error Tracking Log
Step 13: When the proposal has been approved, execute the payment run.
Click the Payment Run button . The Schedule Payment window displays.
Click the Create payment medium check box
Verify that the Start immediately is checked
Click Schedule (green checkmark)
The status screen indicates “Payment run is running”.
Step 14: Click the Refresh button periodically until the status indicates that the “payment run
has been carried out”.
Click Display Payment Log button to view the payment log.
Scroll to the bottom of the log to verify that Step 002 and Step 003 started and that the job
finished.
NOTE: The ACH file is generated in Step 002. The ACH deposit advice and emails are
generated in Step 003.
Contact EBS Support for assistance if either step failed to run or if errors are indicated.
Step 15: View the payment medium
Click the Environment button Payment medium DME administration
Step 16: The Data Medium Overview screen displays
Highlight the data medium row
Click Choose (magnifying glass)
Step 17: The Data Medium Attributes screen displays
Click the Bank transactions tab
The File name field displays –
In the test = /usr/local/sap/outbound/ACH_PMARCH_20120720_110711.txt
Click Display DME Contents (eyeglasses button) to view the AP ACH file
Click Documents… button to display a list of payment documents generated
NOTE: The bank interface runs every 15 minutes. If the interface picks up the AP ACH file before you Display DME Contents then nothing will display.
If you need to see a copy of the AP ACH file, contact EBS PI Support
Step 16: Click Back to exit transaction F110.
The payment run is complete once the
faxed confirmation note is received.
SWIFT:
Let’s start from basics as to what is swift is? and what role does it have? Although many of you
may be aware of this but few may not be aware of this as I was not aware of this before the need
to work on the development of the same in our project has come across. So just thought of
sharing few of my thoughts.
In this blog, I will try to express my thoughts of basics of swift and in the next blog I will cover
the technicalities about swift package like installation and configuration part.
As you are all aware of how quickly the transaction involving bank to bank take place no matter
in which part of the world you are living Unlike before, nowadays it all happens online and is
quite easy. Within the comforts of your home, you just need to login to your internet banking
account, do some clicks and
money will reach your bank account in some other country in a couple of days.
Your bank makes it possible through SWIFT!
SWIFT or the Society for Worldwide Interbank Financial Telecommunication is a
worldwide network for financial messages through which its members (i.e. financial institutions
such as banks) can exchange messages related to money transfer for their customers. The
messages are sent securely and reliably to the target member financial institution of SWIFT.
By the way, SWIFT is just a messaging service and it doesn’t facilitate actual cash transfer
between banks. For doing that, the banks that
exchange authorization message for money transfer shall have an external banking relation
between them and normally they settle the actual cash transfer
in parallel.
But the point is, once the authorization for the release of funds are sent through SWIFT, the
target bank can release the money to the end
user’s account and the bank is assured of the money from the sending bank. Sometimes, the
target bank will have a branch in the sending bank’s country or
vice versa and they may settle it within the purview of a single country.
Thus, the end user will receive the money without needing to know the hassles of exchange rate
conversion and various other formalities,
which happen in parallel between the banks. Also, the user will receive money, irrespective of
the time taken for all these.
SWIFT does not facilitate funds transfer; rather, it sends payment orders, which must be settled
by correspondent accounts that the institutions have with
each other. Each financial institution, to exchange banking transactions, must have a banking
relationship by either being a bank or affiliating itself with
one (or more) so as to enjoy those particular business features.
SWIFT means several things in the financial world. It may be a secure network for messages
between financial institutions or a set of syntax standards for financial messages (for
transmission over SWIFT Net or any other network) or a set of connection software and services,
allowing
financial institutions to transmit messages over SWIFT network.
Over 8,700 banking organizations, securities institutions and corporate customers in more than
209 countries use SWIFT for transferring financial messages, making it the most widely used
network for international financial messaging. Each financial institution registered with SWIFT
is identified by a bank identifier code
popularly known as the ‘SWIFT Code’.
Through SWIFT, transfer of funds to various countries can be completely automated; where the
core banking solution of the bank can directly communicate with
SWIFT to do the transfer. This makes the process of money transfer more efficient, secure and
with lower cost. Thus, SWIFT makes the process of
transferring funds across the globe a lot easier.
The SWIFT secure messaging network is run from two redundant data centers, one in the United
States and one in the Netherlands. These centers share information in near real-time. In case of a
failure in one of the data centers, the other is able to handle the traffic of the complete network.
SWIFT opened a third data center in Switzerland, which started operating in 2009. Since then
data from European SWIFT members
will no longer be mirrored to the US data center. The distributed architecture will partition
messaging into two messaging zones: European and Trans-Atlantic European zone messages are
stored in the Netherlands and in a part of the Switzerland operating center; Trans-Atlantic
zone messages are stored in the US and in a part of the Switzerland operating center that is
segregated from the European zone messages. Countries outside of
Europe were by default allocated to the Trans-Atlantic zone but could choose to have their
messages stored in the European zone.
SWIFT provides a centralized store-and-forward mechanism, with some transaction
management. For bank A to send a message to bank B with a copy or authorization with
institution C, it formats the message according to standard and securely sends it to SWIFT.
SWIFT guarantees its secure and reliable delivery to B after the appropriate action by C. SWIFT
guarantees are based primarily on high redundancy of hardware, software, and people.
DMEE Tree Creation:
Steps to Create a DMEE Format
1. Run transaction DMEE.
2. On the DME Engine: Initial Screen, specify the following and choose Create.
Tree type: PAYM (standard tree type for Payment) Format tree: specify the name of the tree you want to create (for example, Z_JP_EMC_XML)
3. In the next dialog box, choose the type of file ((Flat file or XML file) that you want to create.
4. On the DMEE: Create Format Tree screen, specify the following:
In the Administrative Data tab page, specify the short description for the format tree
In the Format Attributes tab page, specify the name of the format-specific structure
Note
You use format parameter structure to specify additional information or choose additional file structure formatting options while executing the DMEE format.
With a certain transaction, the user can create variants for the formatting options per house banks per payment method. To do this, run transaction SPRO and choose SAP Reference IMG. In the IMG tree, choose Financial Accounting > Accounts Receivable and Accounts Payable > Business Transactions >
Outgoing Payments > Automatic Outgoing Payments > Payment Media > Make settings for
payment medium formats for payment medium > Create/Assign Selection Variant.
In the Levels tab page, specify the levels with their repetition factors
In the above screen shot, you have specified three levels: Level 0, Level 1, and Level 2. The
repetition factor specified against each level indicates the number of times the information at
a particular level can be repeated in the DMEE file.
This means that you have all these levels in your DMEE format. The level 1 information can
come only once in the output file, but level 2 information can be repeated up to 9999999
times in the file.
In the Sort/key fields tab page, you can set the levels for the fields along with the structure
name
If sort field is selected as key field, then a change to the value in this field causes the
corresponding format level to end. You need to define the key fields correctly to ensure that
during file generation the sequence of the different levels is output as they are defined in the
format.
Example:
If you want the company code (FPAYH-ZBUKR) to be at level 1, specify it as shown in the above
screen shot. As the repetition factor for Leve1 is 1, this information is only displayed once in the
DMEE file. If you have 2 company codes, then the DMEE file would be split and two separate
output files are created for the two company codes.
If you want the payment document (FPAYH-DOC1R) to be at level 2, specify it as shown in the
example. As the repetition factor for Level 2 is 999999, level 2 information can come up to 99999
times in the DMEE file.
In the File Data tab page, you can specify the characters that you want to allow and disallow in
your DMEE file.
5. For creating new nodes, right click on the node DMEE tree: properties present on the left hand
and choose the node type (for example, element, atom, technical node) to be created.
Type of Nodes:
a) Element
An element is used to get output values in the target file for a defined tag. For each element, you specify the value or the source field to be used to fill this tag. You can define further elements and XML attributes as subnodes of an element.
b) XML Attribute
An XML attribute is used to further specify the values of an element. You can choose either a value or a source field.
c) Technical Node A technical node is an element that is not output to the target file. It stores values that are used in other tree nodes (elements, atoms) by reference to the technical node. For this reason, a technical node generally contains a reference ID.If you wish to output the contents of the technical node to the target file, then you can convert the node to an element.
Example: An account number, represented by an element, is output to the target file. The attribute determines whether it is the account number of the payer or payee.
d) Atom You need to create an atom when you define more than one mapping rule for an element.
You need to create atoms as subnodes of an element in the following scenarios: Several mapping rules exist for the element that are to be applied if certain conditions are
met
Different parts of the tag are to be filled separately with values
e) Reference ID of node A node that contains a reference ID can be referenced from other nodes in the format tree. You can specify such a reference when you define mapping rules, conditions, or aggregation. You must assign unique reference IDs (within the tree). When you delete a node that contains a reference ID, be sure that no references to this node exist.
In the Attributes tab page, specify the following:
o Under Attributes section, specify details such as name, short description, length, type and level
o Under Mapping Procedure section, select one of the following source type:
Constant
Used if any constant value is the source
Reference to tree node
Used if the node value is determined by the value of another node in the format tree. You can assign this relationship by means of a reference ID.
Aggregation
Used if the value of this node results from the aggregation of other node values.
Atom Handling
Used if the final value of an element is derived by combining the values of atoms in different ways
No Mapping
Used if no source value is assigned to the node.
Structure
Used if the source field is from the payment specific structures such as FPAYH, FPAYHX, and FPAYP. You can see the structures in transaction SE11.
Exit Module
Used if the information is retrieved by an exit module.
Steps to create exit modules:
a) Run transaction SE37.
b) In the Function Builder: Initial Screen, specify the following in the Function module field, and choose Copy
DMEE_EXIT_TEMPLATE_EXTEND_ABA (for releases 500 and above)
DMEE_EXIT_TEMPLATE_EXTENDED (for 470 release)
c) In the Copy Functional Module dialog box, specify the following and choose Copy:
Fr Function Module: Name of the standard template exit module
To Function Module: Name of the exit module that you want to create
Function Group: Name of the function group in which you want to create the exit module
d) Save and activate the function module in your package.
In the Source tab page, specify the constant or structure field from where you want to get the information.
In the Condition tab page, specify the conditions, if any In the Comment tab page, specify comments, if any
6. Similarly, you create the various nodes in the DMEE tree. 7. Save and activate your DMEE format
Customizing settings for DMEE Format (Note) Here, we use the DMEE format “CGI_XML_CT”, which has a format parameter structure, as an
example. The DMEE format CGI_XML_CT has the format parameter structure “FPM_CGI”.
Create Payment Medium Workbench (PMW) Format: 1. Run transaction OBPM1 2. Choose New Entries. 3. Enter the name of your DMEE format in the Format field, and populate the other fields as shown
below: 4. In the Dialogue Structure tree, click on Event Modules for Payment Formats
5. Attach function module name for event 05, which is used to fill the reference fields. To do this,
choose New Entries in the menu bar and select Event 05 as shown in the screen shot below:
Events of PMW: The Payment Medium Workbench contains several predefined events (positions in the coding). If during
the process flow of the PMW, such an event is reached and if a function module is assigned to this event
in the customizing (transaction OBPM1 and OBPM3), then this function module will be executed. The following events are available for the usage by SAP: Event no. Event name
00 Fill sort field
05 Fill additional reference fields
10 Check format parameters
20 Start/File header
25 File close/open
30 Order/transaction record
40 End/file trailer
Process:
1. Event 20 Function module DMEE_START is called and the DME file is opened
2. Event 05 Fills the reference fields for the REGUH records
3. Event 30
Calls the function module DMEE_PUT_ITEM in a loop for every entry of table
REGUP that corresponds to the first REGUH entry
4. Event 25
Calls the function module DMEE_NEW_FILE and checks whether a new file needs to be created according to the key field settings in the format tree definition.
5. Event 40
Calls the function module DMEE_END and closes the DMEE file If required, it prints the SAPScript form.
6. In the Dialog Structure tree, click on Text Fields for Reference Information and make any necessary changes to the number and length of text fields as shown below:
Define Payment Method for Country
1. Run transaction FBZP 2. Choose Pmnt methods in country 3. Choose New Entries and populate the fields for your country format as shown in the example below.
Here, the payment method T(Bank Transfer) of the country TH has the DMEE format CGI_XML_CT.
4. In the Payment medium group box, select Use payment medium workbench radio button and
populate the Format field with the value of name of your DMEE format
5. In the Dialog Structure, choose Note to Payee by Origin in the dialog structure and assign the note to
payee to the transaction
Note: Before specifying the Note to Payee in the above dialog box, you need to create the Note to Payee structure in transaction OBPM2 per your business requirement. Create Note to Payee
1. Run transaction OBPM2
2. Choose New Entries
3. In the subsequent screen, maintain entries as follows:
4. In the Dialog Structure box, select Default Note to Payee
5. Choose New Entries and maintain entries as follows:
6. Save the changes and assign the Note to Payee to the format using transaction FBZP.
Assign Payment Method and Country to Company Code
1. Run transaction FBZP 2. Choose Pmnt methods in country
3. Choose New Entries and populate as shown in below screen shot
4. Save your changes
Generation of DMEE File
Once you do create vendor master data, post vendor invoice, and then execute the payment run or
payment proposal or payment run (by F110), you execute the report SAPFPAYM or transaction FBPM to
generate the output DME payment file. 1. Run transaction FBPM 2. Specify the details as shown in screen shot 3. Choose Execute
Creation of Variant You can create the variant for a particular payment run date and identification.
1. Run transaction FBPM 2. Specify the following details:
F110 Run Date
Identification
Select Proposal run check box if you have only executed the proposal run ad not the payment run
Payment medium format name
3. Choose Save (Ctrl +S) to save the variant. The system displays the following screen: 4. Specify the variant name, description, and choose Save. The system saves the variant
How to down load DME File:
Data Medium Exchange (DME) - Execution Example:
Dependency: Create Invoice using payment method linked to DME.
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
EXECUTE PAYMENT RUN and DOWNLOAD FILE: Transaction F110: Run Date: Enter Today’s Date Identification: Enter a user defined value. Hit enter.
Click on the Parameters Tab: Enter Company Code Enter Payment Method linked to DME. Next P/date: Enter any date in the future. Enter Vendor Click Save:
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Click on Status tab, and then click the Status Button. Click the Proposal Button:
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
The "Create Payment Medium" check box tells the program to generate the file.
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
In this case we are generating the file from the payment proposal. This is usually left unchecked until the payment portion of the run.
Proposal has been scheduled
Click Status again and buttons next to the status button will appear.
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Click Pmt Run: Payment has been scheduled.
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Click Status Again and the buttons will re-appear.
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Click Printout and a popup message will appear.
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Click enter: The Print job is scheduled, and then press status again
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Now Navigate to Path: Environmental Payment Medium DME Administration
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Click on line with Proposal Check box (3rd Column) *Note* If you generated the file from the payment instead of the proposal, then choose the line without the proposal checkbox.
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Save to Local Directory and click enter.
The file generated from the program will now be in the local directory you have specified.
This method is mostly used to test the file formats before "go-live."
In most cases, in a "live" environment, the file will be generated to a secure location such as a unix
directory. Then encryped and ftp to the bank.
The required directory location can be determined when setting up the variant for SAP program
"SAPFPAYM."
Payroll DME:
After payroll is executed , SAP DME process will transfer payment amounts to
employee's bank account. To execute bank transfer you need to complete 2 steps
STEP 1 ) Run Preliminary DME Program.
Transaction: PC00_MXX_CDTA , XX = Country Molga
Overview: -
This program prepares the payroll results for the DME (Data Medium Exchange)
process
It uses information from the HR Master Data (infotype 0001, 0002, 0006, 0009)
and information from the payroll results (payroll program tables WPBP and BT).
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
It creates a file that contains data which complies with bank regulations.
If the values are inaccurate, you will need to correct the errors and re-run the
preliminary DME program
If the values are accurate, you will use the file as input for creating the bank
transfer txt files..
Program Input Screen
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Enter Payroll area & Personnel Number. Rest Selection Criteria can be kept default.
Click Execute
Output
Note down the Program Run Date and Identification Feature
STEP 2) Create the DME file
Transaction : PC00_MXX_FFOT , XX = Molga
Overview:
This program uses the successful file created by the preliminary DME program.
It produces a Payment Summary, a DME Accompanying Sheet, and a DME File (per
company code) for each paying bank.
The DME File may need to be uploaded into designated software that enables a bank
transfer between your company and your paying bank.
Program Input Screen
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Enter Program run date and Identification feature obtained from the pre-DME program
, Paying Company Code , Payment method ,House bank, Account ID, Currency. Execute
Output:
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Double click on the spool number
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Select a line item and click on
Review output
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Go back to the Output overview screen and double click on the TEMSE file.
Review Output
The integration points between Payroll and FI/CO :
Creating the DME (payments)- automatic (check register only)
Posting to Accounting - manual
Posting third-party Remittance – automatic
We’ll demonstrate each of the Payroll-FI/CO integration points :
1: Running the Payroll – Calculation Steps - to prepare to process payroll
2: Creating the DME – Payments to process a Payroll run
3: Post to accounting to update FI/CO with data from the Payroll run
4: Post Third-party Remittance to generate payment information for vendors
5: Posting with CATS – Cross-Application Time Sheet
Creating DME - Payments
Next, we’ll create the Data Medium Exchange (DME)
This step prepares the payroll remuneration data for ACH & check printing
You specify one of the following DME types
Payroll Check
ACH Transfer (Direct Deposit)
Wire Transfer
Payroll uses the A/P Payment Program for the ACH and check
printing processes
The check register will be updated
In contrast to A/P payments, the G/L (FI/CO) will not be updated
After doing this, your check register will be out of balance with your
outgoing payments G/L account in FI/CO. FI/CO will also be out of
balance with Payroll because no expense or liability postings will
have been transferred yet.
How to Generate the DME:
Create Pre-Program DME
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Create DME
DME Management
Run payment program to
print/generate DME
Creating DME - Payments (cont.)
The results
Payroll checks and ACH files for the direct deposit were generated
The check register has been updated and reflects the newly printed payroll
checks, but FI/CO has no payroll information!
Conclusions
You can run payroll and generate checks without transferring to FI/CO
In other words: you can successfully run the payroll, cut the payroll checks,
and distribute them to employees without updating FI/CO at all!
Post To Accounting
To solve this Payroll-FI/CO discrepancy, we’ll “manually”
execute transaction PCP0
This is an important, separate step after generating payroll and cutting
checks (DME)
PCP0 updates FI/CO – Expenses, Liabilities and Assets
It uses the employee’s home cost center to determine the cost center to
post to
It uses the mapping of wage types to symbolic accounts to G/L accounts to
determine the correct G/L account/cost element to use
I'll explain these elements and relationships in detail later
Configuring the Payment Program
As was shown in the previous section, Payroll uses the A/P
payment program to generate checks and ACH payments (DME)
You use the same configuration techniques that you use for A/P
Create House Bank and Accounts
Create Payment Methods
Assign to Accounts
Create RFFOUS_C and RFFOUS_T variants
Even if you don’t use different bank accounts for A/P payments
and payroll payments you should create a new payment method
for payroll check and ACH transfers
Enables easier reconciliation of checks, accounts, and check register to G/L
Allows you to have a greater degree of authorization to view/create/change
payroll checks
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Program RFPYHR00 requires the payroll result to be posted to a
clearing account
Pick a single clearing account for each company code and map it to the
proper symbolic accounts
Automatically journals out of the clearing account and into the proper bank
clearing account and company code-based off of the DME run in the
payment program
This program is a must-have in a cross-company code payroll scenario
Important Steps When Using RFPYHR00 :
It’s important to do things in the following order or your updates
could get out of order or you could lose your linking of checks
in the check register to line items in the G/L
1. Transfer payroll to FI/CO
2. Create DME
3. Print DME
4. Run RFPYHR00
If you run RFPYHR00 after creating the DME but before you print
the DME your payroll checks in the check register won’t be linked
to an Warning accounting document
What Does it means ? XML,TXT Files :
TXT is a file extension for a text file, used by a variety of text editors.
Text is a human-readable sequence of characters and the words they form that can
be encoded into computer-readable formats. There is no standard definition of a
text file, though there are several common formats, including ASCII (a cross-platform format), and ANSI (used on DOS and Windows platforms).
Example:
XML
eXtensible markup language. XML is a file extension for an Extensible Markup
Language (XML) file format used to create common information formats and share
both the format and the data on the World Wide Web, intranets, and elsewhere using standard ASCII text. XML is similar to HTML.
Example:
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
DME Notes & Tables:
DME Tables Used for Mapping:
FPAYH - Payment medium: Payment data
FPAYHX - Payment Medium: Prepared Data for Payment
FPAYP - Payment medium: Data on paid items
Transport Format Tree:
Transporting Format Trees
You can transport the active version of a format tree to other systems. The logical transport object for a DMEE format tree is R3TR DMEE; this contains all associated database tables. To transport a format
tree, choose either Format tree
Transport or on the initial screen of the DME Engine.
The DME Engine also supports an upload/download of format trees as an alternative to the
transport:
DME_ ENGINE
DM
E I
nt
eg
ra
tio
n
DME Integration
Upload format tree
You can upload a format tree that you have as an XML file. To do so, choose Format tree
Upload XML file on the DMEE initial screen. You then specify the file name and the
presentation server or URL address.
Download format tree
You can download a format tree and create an XML file on your PC that contains all format tree
information. To do so, choose Format tree Download XML file on the DMEE initial screen.
After you specify which version you wish to download (active or maintenance), you enter the
tree type, format tree ID, and a name for the XML file.
Thank You
for Your Time !