Cibc Eft 80 Byte File Layout Peoplesoft

Posted on

Download a full free working trial of our ACH Software to test with your bank Help and Setup pages for Canadian 005 EFT Standard, 1464 byte format, and the Toronto Dominion 80 byte format. When designing eft file document, it is important to use style settings and tools. 1 explained kaas il me dit que je suis belle youtube restore world at arms guide 78315 markelfingen emisor de radio frec.

SEE MY YOUTUBE VIDEO ON THIS TOPIC HERE: https://youtu.be/pu7eLHE9if8

Since SAP Business One 9.0 I had been hearing about new EFT capabilities built right into the system and I had a client request this feature so I decided to really dig into the subject. So after a LOT of investigation and testing I will summarize in plain English what I found.

(NOTE: my focus here is on EFT files, NOT bank reconciliation files but SBO can do this as well. I will attempt to note this whenever possible.)

SAP Business One Has a Really Well Thought Out EFT System

It’s hard to find and understand but it is well thought out once you get the hang of it. It can do EFT files for payment, import files for bank reconciliation and generate CSV files in specific format for any other file type you would want to work with. I was using it specifically for an EFT outgoing payment file to a bank for payments.

The Electronic File System is Two Part

It is not documented very well but you need two SAP add-ons to make this system work properly. One to edit the files called Electronic File Manager (EFM Format Definition) and then one to generate the payment file from the Payment Wizard (Payment). Both should come with a standard installation, in this screenshot I’m using SBO 9.0 PL15.

Built into SBO all you need to define is the file format for the payment method (Administration >> Setup >> Banking >> Payment Methods) for it to be activated with your particular payment method. Of course you need to define the payment method as default for the vendors (this can be done with DTW) and then you are good to go with the payment wizard. If you are having issues with the actual upload to the “File Formats – Setup” just right click the row and click “Assign Format Project…” to assign your file.

The System is Based on Crystal Reports

The EFM uses a very nice Crystal Reports data source setup. You can import and export datasources to Crystal to make modifications, re-import them easily (with automatic link updates) and generally craft your output data using CR grouping and formatting. There is a limited set of formatting formula options within the EFM tool though.

The Actual File Export is Hard to Find!

I made my file and installed it without any issues but finding the actual output was damned near impossible. Once I found it though, the system was pretty tight, letting you generate test files and even recompile the information source before exporting. SO, if you spot missing bank information or the bank rejects the file for some reason you can make the changes and regenerate the file before exporting.

Once you find the little button then you are good to go, but I had no idea where to find it! Here is what the screen looks like:

The button is on the very last page of the Payment Wizard form at the bottom and is only visible when the “Payment” add-on is running.

Documentation is Hard to Find

You will find an ooolllddd expert empowerment session which is referenced but it doesn’t really have the information you are looking for (2007A time period). But if you look hard enough you will stumble across a couple of good references. Here are some links:

Reference #1
Reference #2

You can also use the EFM help file which has a lot of information specifically for formatting and editing within the editor but good overall reference once you find it. Activate the add-on called “EFM Format Definition” from SBO, then relaunch the client. Once installed and running go to Tools >> Electronic File Manager: Format Definition to run the editor. Once in the editor click Help >> Online Help or F1.

There is a Great Sample to Start With

In Reference #2 there is a .BPP file which is a great starting point to understand the structure, I don’t think two banks will be exactly the same so you will likely be adapting it from scratch any way you approach it.

There is NO Standard Layout

From what I can see, each bank (I’m located in Canada, maybe USA or other is different) has their own type of file format definitions that differ slightly (or majorly depending on your bank).

Here are the formats that come with the system:

(NOTE: Minus the 80Byte which is my own)

So if any of those formats fit your definition exactly then you are in luck and it will save you a ton of work. If not, then you will have to get the file format definition from your bank. Also as a side note, banks may or may not be willing to really help you out with the formatting and testing, depends on the bank and branch, etc.

Summary

With the two add-ons in place and the reference materials you load up your EFM program and use the template as a starting point, from there you can just add sections and subsections based on your bank documentation. Upload the file and associate it with the payment method of choice (must be bank transfer) and then set as default for vendors. As you are using the payment wizard the steps will be the same, once you get to the very end and the run has been executed, just look for the button in the lower left area to generate your file. Upload to your bank et voilà!

EFT payments are common payment methods for any company. EFT stands for Electronic Fund Transfer. These are commonly used for domestic payments.

EFT files are generated by executing the Automatic Payment Program. These files are generated as .dat or .txt files. These files are downloaded in directory, encrypted and sent to the bank via MIM job. The bank decrypts the file, reads and sends back bank reconciliation file.

DMEE(Data medium Exchange Engine) is used to generate EFT payment files in the format specified by the bank. This blog will cover the implementation of EFT format for multiple currencies using DMEE.

Getting started with DME:

Prerequisites:

How to create a DME tree?

The biggest challenge here is to choose an appropriate tree for the format and customize the same. Below are some tips and tricks which can be used for choosing an appropriate tree:

  • If you are using country-specific format, choose a tree for a particular country from standard trees.
  • Configure the standard tree in FBZP.
  • Execute a payment run and generate the file with the standard tree.
  • Compare the output with the format specified by the bank.
  • If this format is close to what is specified by the bank. You can go ahead and copy the same tree to generate the file and tweak it as per requirements.
  • No standard tree can fulfill all the requirements of the bank, there will still be changes in mapping and levels which we shall discuss in the later section.

How to copy a standard format?

Execute transaction code OBPM1:

SAP delivers standard structures which can be copied and customized as per the format specified by the bank. Transaction OBPM1 allows to copy a standard tree to ‘Z’ tree and use the same. Customizing standard tree is dangerous. Below is the screenprint from transaction code OBPM1

Give an appropriate name to the tree and change description appropriately.

Eft 80 Byte File

  • Make sure the documentation module is not changed while copying
  • Use appropriate format output
  • Choose levels at which you wish to divide outputs for the file.
  • Make sure mapping using DMEE engine is selected. If this box is not selected, you may not be able to customize the format using the DME engine.

Ignore all the warnings issued while copying the format:

Select ‘copy all’

Do not make any changes while copying the format. Just ignore warnings. These are harmless warnings:

  • Execute transaction code DMEE

In this transaction, we create the copied structure again to use it for customizing using DME engine. Click on the copy.

Give the target name of the tree and copy and save. Make sure tree type is PAYM.

  • Execute transaction code OBPM2

Assign note to payee in this transaction. Mostly used for ACH payments. This is not required for EFT though.

Create a note to the payee as per requirements. Your ABAPer can create FM for customized requirements.

  • Execute transaction code OBPM3
Layout

There might be instances when your format is as expected but not displayed properly or not readable, hence you might want to assign a code to the format so that it is downloaded and is readable.

Select the code if your output format is displayed in a format other than expected.

  • Execute transaction code OBPM4:

Create a variant for the house bank as shown below:

End to end functionality:

Understand EFT bank formats:

I will talk about the most common formats for EFT since every bank will have their own specific format. More or less below is how your bank format for EFT will be:

  • Usually, EFT format will be 80-byte file layout.

The file format will comprise of:

File header

Batch header

Detail

Batch trailer

File trailer

Leveraging DME Engine:

Execute transaction code DMEE:

Click on display/change in above screen.

The tree with DME engine opens up. here you have few controls. we will discuss same below:

  • File data- this controls how the data in file will appear. You can define your special characters and control if they can be allowed or ignored. Most of the banks fail files with special characters.
  • sort/key fields- This is the beauty of DME Engine. It gives you flexibility to sort fields as you wish.

Please note: DMEE is based on structures- these structures have fields. these fields are then updated in REGUH table once payment is made.

structures in DME Engine:

  1. FPAH
  2. FPAYP
  3. FPAYHX

Levels are the level at which you want the data to appear. For example header data with record type 1; this has to be at level 1. Header data should not be repeated in the file.

Format attributes gives you the option for attaching sap script for correspondence to the nodes of the dme tree.

understanding nodes in DMEE:

There are several nodes available with different functionality to achieve the desired format.

Segment- Segment is a record type in the file. Each segment has to have a composite or an element.

Segment group- groups segments/elements under one head

composite- mostly used when one condition is applied to more than one element. this group’s all such elements

Element- This is the field in the target file. This has a mapping for the data that will be in the target file.

Technical node- The value is not output in the target file, this stores values for other nodes.

Atom- create an atom under element to have more than one mapping rule for one element.

Reference ID of the node- contains the reference of nodes. Assign unique reference id to each node when you create it

Reference to other nodes- this will refer to other nodes.

Mapping using DMEE:

Below are the properties of the tree I have copied. I have copied the standard 005 tree to ZZ005.

You can have version management, There will be changes on and off which you will have to do. You can keep versions of your structure. You can also download the structure and keep it with you for reference. We will discuss that later.

for example, my bank format says “header record is at level 1 which is a mandatory record and must have value as “5” every time. This means I can have a constant value for this element. Below is how you can map for this example:

Note in below screen print, Header record is a segment, this segment has several elements under it.

Mapping procedures:

  • constant- Use when the value in the target file is not going to change at all and a fixed value is expected.
  • Structure field- Use when a value is expected from a structure- FPAYH, FPAYP, FPAYHX. for instance, you expect beneficiary bank details.
  • Reference to tree node- Use reference ID to assign the reference to tree node. This is a reference to another node in the same tree.
  • Exit module- Use this when you want to have a custom value in target file which is not directly available in structures.
  • Own mapping (atoms)- Use when you have multiple mapping procedures for the same atom.

Below is how payment structures look like. choose the appropriate field as per your bank format.

I want record type for batch header record to appear as 1 every time a file is generated. Hence my mapping rule is constant and my value in constant is “1”

Below is how you can use the same structure for multiple currencies. You can assign only one payment format for one payment method. Hence, Below is the option to use conditions in case of multiple currencies.

If you want the value to populate in case of xyz currency, below is the argument.

In the below scenario, I have 2 originator numbers one for USD currency and one for CAD currency. I have created 2 elements as shown below. My originator numbers are constant and change only as per currency.

I have used the below condition:

If FPAYH-WAERS is a structure field; value is ‘CAD’, the argument is constant.

My condition for when I want value only in case if my currency is USD

Using source offset:

My branch transit number is ZBNKL from FPAYH. My bank wants this value to be only 5 characters and the actual value is 9 characters. Bank wants only the last 5 characters as branch transit number and does not want the first 4 characters in the target file. Below is how the mapping procedure will be:

  1. My source offset is 4
  2. attributes of this node will be source structure
  3. the length will be 5

Using aggregation mapping

Aggregation is used to inform the bank of the total amount paid in the file. The total number of records in the file at the batch level and file level. Below is how you can use aggregation.

for example; I want to display the total number of records in the file at the file level, this will be in trailer record, I will use aggregation mapping procedure as follows:

I have given a reference ID in record type node to count the number of entries for a particular record type. Below is how you can do this:

Wrap up

I have covered EFT file format and mapping procedures to achieve the format using DME Engine. It is difficult to cover everything in one blog, hence below is the link to ACH IAT format. I will soon be publishing a more detailed blog on Wire formats to generate xml files using DMEE with multiple currencies.

https://blogs.sap.com/2019/05/28/dme-ach-iat-format/

Happy SAPing.