Skip to Content


In the ABAP Forum, there are couple of questions unanswered related to LSMW using standard program RFBIBL00 to post the FI documents. That inspried me to write this Blog.

Step 1: Maintain Object Attributes
For creating the FI document with the RFBIBL00 using LSMW, we have to select the object 0100, method 0000 and program RFBIBL00.


Step 2: Maintain Source Structures
We will create total two structures: One for header and another for item. We could have at least two line items in the FI document. So, we need to upload at least 2 records per document. To upload 2 records, we should able to pass those two records in the mapping as well as in the conversion.

Create a structure with name ZFI_HEAD for the Header (BKPF).


Under the ZFI_HEAD, create another structure ZFI_ITEM for items (BSEG). Put cursor on the ZFI_HEAD and press the create button to create lower level structure ZFI_ITEM.


Step 3: Maintain Source Fields
We need to have one link field which will link the Header record with the Item record which system will use later to link the records from both different files.

These are the fields for the ZFI_HEAD structure:


These are the fields for the ZFI_ITEM structure:


Step 4: Maintain Structure Relations
Here we will define the structure relationship between source structure (BGR00, BBKPF, BBSEG, etc) and target structure (ZFI_HEAD, ZFI_ITEM, etc).


Step 5: Maintain Field Mapping and Conversion Rules
Assign all the fields from the ZFI_HEAD to respective fields from BBKPF and ZFI_ITEM to respective fields from BBSEG. Don’t assign the CNT field to any of the field.
Make sure we pass correct formatted date (YYYMMDD) to the BBKPF.


Step 6: Maintain Fixed Values, Translations, User-Defined Routines
We don’t to maintain anything in field.

Step 7: Specify Files
Create 2 files: 1 for header, 1 for Item. Sequence of the fields in the Structure must be same as the fields in the file. You can download my test files: Header and Item.

Create a header file.


Create another file for the Items in the same fashion.

You can change the names of the Read and Conversion files.


Step 8: Assign Files
Assign the files to the structures.



Step 9: Read data
Read the files specified in the Step 7

Step 10: Display read data
Displaying read data

Step 11: Convert Data
Run the convert data report to convert the input data to .conv file

Step 12: Display Converted Data

Step 13: Run program
Run program RFBIBL00 to create a session.




  • To use the BBTAX structure also in the RFBIBL00, we need to create another structure (e.g. FI_TAX) under the ZFI_HEADER and same level of ZFI_ITEM.
  • As ZFI_ITEM (BBSEG) and FI_TAX (BBTAX) are at the same level so, we can use the same CNT field to link them.
  • Create a Separate file as we have created for the header and item.


  • BWITH is the subitem level data for the FI document. With-holding tax data is attached to the line item. So, we need to create a child structure under the ZFI_ITEM.
  • Since we have created the structure at child level, we need another field to link the item data to the withholding tax data.
  • Create a separate field as we have created for the header and item.


I’m on Google+. Follow me on Google+ .

You must be Logged on to comment or reply to a post.
  • I would ensure all dates were formatted correctly in the input file (eg. YYYYMMDD), instead of having to do it explicitly in the LSMW. This is a potential source of error, and should be avoided. Better to clean up & format all source data beforehand, adhering to SAP Data Dictionary formats.

    In other words: keep your input files as clean and compliant as possible, instead of using ABAP to do the job.


    • ...and, before I forget (and before somebody else corrects me): input formats for dates are user-dependent... thus, make sure the user settings are coherent and consistent (same goes for the famous decimal point setting!)


      • You are right Trond. That date format must be in the YYYYMMDD format. But I wanted to show how to write the conversion rule for the date because we always need to convert the date from user specific format to YYYYMMDD, if it is not in SAP Specific format.


        Naimesh Patel

        • How to post One-Time Vendor FI Invoices using legacy data file?  LSMW with RFBIBL00 is not working...any bapi/idoc except BDC.    One-Time Vendor FI Invoices posting using FB01....let me know.
  • Hi,

    When I am able to run the batch input session created, the following error occurs for BSEG-DMBTR.

    BSEG-DMBTR does not exist in the screen SAPMF05A 300

    I have mapped DMBTR with the relevant field in Item Level Structure.

    I tried to run this report in the foreground, then the amount in local currency field is getting blank, whereas my file contains the data of amount and the same is also showing in "Display Converted Data" Step.

    Any valueable inputs will be appreciated,



    • You have to map the ZFI_BSEG-DMBTR to the BBSEG-WRBTR in Step 5.
      In my example, I was having the same currency as the local currency. So, I have created DMBTR in the structure ZFI_BSEG (line item) and mapped it with the both BBSEG-DMBTR and BBSEG-WRBTR.

      Naimesh Patel

      • Hi Naimesh,

        Thanks very much for your quick update. I have identified the same and it is perfectly uploading in the foreground.

        However, there is an issue when I try to run this in the background. (SM35). It says Field BSEG-HKONT is not an input field. The Procedure recommended is:

        "Correct the incorrect transaction. You can do this using the option Process in foreground".

        I have mapped the fields NEWKO and HKONT in BSEG as follows:


        Any valid inputs will be highly appreciated.

        Thanks in advance,



        • I guess, you would have to only pass the Next Line account (either from Customer, Vendor, GL) to the BBSEG-NEWKO. Based on the Posting Key, system will populate HKONT or KUNNR or LIFNR.

          Naimesh Patel

          • Hi Naimesh,

            Thanks for your update. I will update the threat if there is any possible resolution to this background issue. Anyway, I am happy with the foreground at the moment. 🙂



          • Hello,


            I have same issue.

            Anyway an excellent document. I have tested it, Checks and Upload ist fine.

            I will take a look on BSEG-HKONT.


            Thanky you very much for this super documentation.

            all the best Erwin

      • Hi Naimesh,


        In step 5, while doing auto mapping, BKPF-GJAHR is not reflecting. Also field BSEG BSCHL is not reflection. is there any step or way i am missing.


        Please guide.


  • Hi,
    I created the lsmw using the steps given by you.But
    while running the direct input i am getting the error like 'Editing was terminated'.
    I developed this in SAP 4.7 version.
    can u tell me the process to solve this or steps.


  • Hi,
    I'm getting error when clicking the "read data" phase as follows:
    "Ensure field sequence is correct for data for mutiple source structures"
    I do have mutiple source structures as for header & item files with the same field sequence as per the Mapping and Conversion Rules.
    can anyone have an idea what should i do to overcome this error?
    Thanks in advance


  • Hi! I appreciate the time you take to share this information with us.

    I compared this information with my LSMW Project. I don't see any difference. But I saw in steps "read data" and "convert data" the system don't read all files I assigned. It appears to be reading only the header file.

    Could you help me????

    I can email you the screens, TXT files ... and the export of the project I created.

    Best regards and thank you so much!!!


    • Hello Marianela,

      Have you took the CNT field in both the structures as shown in Step 3? This CNT field is required to link the Header and Detail when it read the data.

      Naimesh Patel

  • Hi !

    This is just an observation.

    By creating suitable identifiers at the header / item / sub-item levels, apart from the counters, and having equivalent unique values in the input file, one can do away with having mulitple input files and have just a single file.

  • Not able to use LSMW program for One-Time Vendor FI Invoices posting (FB01), can someone help?  without BDC..any other method (using bapi/idoc)...etc.  Looks like direct input cannot handle vendor address input screen for One-Time Vendor FI Invoices post. 
    email @
  • Thank you for this blog its super.

    I have followed all the steps but come across an error when trying to read data. The error i get is "Generation canceled: No field with this name".

    Have you ever encountered such, please help in this regard.

    Thank you once again...

    • Hi there,

      This method is works, i just wanna stress the point that the link field is vital and should not be overlooked in any way however is the a solution for this scenario which works with only 1 text file which includes both hearder items and Line Items???

      thank you...

  • Hi Naimesh,

    Thanks for such a nice document. I have followed the instructions but I am getting problem when I do read data (step 8). Against one header record its reading all the segment record. for example if i have 10 segment line items it will read all 10 items for each header record. can you please help.



  • Hi Naimesh,


    First of all thanks for such a nice document. Even after so many years it is quite explanatory & useful.


    I am also reproducing the same scenario for posting a Accounting Document & I have cleared all the steps except the last one:


    Step 13: Run program

    Run program RFBIBL00 to create a session.


    Here I am finding some issues like:


    If I choose Data transfer type as 'D' with Extended log as 'X', I am getting following message:

    Batch Input Documents



    FB032                    Program must run in batch since more than 20 documents are to be posted

    FB013                    ....Editing was terminated


    However, if the number of document is less than 20, they are processed correctly.



    If I choose Data Transfer type as 'B' then also in the Batch session SM35, I am getting following error message:


    "Field BSEG-VALUT. does not exist in the screen SAPMF05A 0300"




    In the above two scenarios how I can use LSMW to post documents.





  • Great article.

    I have additional fields in header and line items. Can I just add them to the file or do I need to follow a specific order (which?).


    Also, is it posible to add a custom field (z-field)? IF not, is there a workaround or different option to do so?




  • Hi Naimesh,

    It seems I came into the blog quite late, and the links to the header and Item sample files are lost already. Can you please provide updated links for these files?

    Also, can you please indicate what should be changed, if we want to 'Park' documents instead of posting it?

  • Hi,

    Ty for the post, actually i am not able to access to the example files .  I dont know how to add the second position in the item file. Or how the legacy will know which header correspond to which line item.

    Could you help me with that?


    Many thanks

    • Solved! I added the value at the end of the file:



      31.01.18 AB S001 2018 31.01.18 01 EUR 2000013 Prueba 0000000000
      31.02.18 AB S001 2018 31.02.18 02 EUR 2000014 Prueba 0000000001


      39 300563 A 7000 Prueba2 0000000000
      40 999999 7000 Prueba2 0000000000
      39 300563 A 9000 Prueba3 0000000001
      40 999999 9000 Prueba3 0000000001

  • When we start periodic program for LSMW we selected "Keep batch input folder(s)" but created batch input have "deletion indicator". So after process in SM35 batch input session has been deleted.

    Why is "keep batch input folder" is not working with rfbibl00?

  • Hi Naimesh,


    First of all thanks for such a nice document. I have a doubt while performing these steps for AP Balance Upload thru Direct Input Method.

    This is my file.


    2019 758346_SA 03/31/2019 03/16/2019 INR 758346_SA SA

    Line Item:

    2019 31 119983 9431 NT30 3/16/2019 758346_SA

    i am keeping the BELNR field as blank for the Document number to generate thru internal number assignment for the concerned document type.

    But while executing the program, i am getting the following error."Document 0 2019 already exists in company code"

    what should be the possible solution for this.