Enterprise Resource Planning Blogs by SAP
Get insights and updates about cloud ERP and RISE with SAP, SAP S/4HANA and SAP S/4HANA Cloud, and more enterprise management capabilities with SAP blog posts.
Showing results for 
Search instead for 
Did you mean: 
Product and Topic Expert
Product and Topic Expert
Hi All,

As you know, there are two important integration scenarios in the Financial function, one is 'Order to Cash' (Financial - Sales&Distribution integration) and another is 'Procure to Pay' (Financial - Material Management integration).

I have introduced 'Order to Cash' in my last blog post (the URL can be found from the bottom of this blog post). In this blog post, I will walk through the simple 'Procure to Pay' process in the S/4 HANA system. Please be aware, this is just a simple introduction, ‘Procure to Pay’ has a lot of useful functions not covered in this blog post.

Image a scenario, there is a food trading company and their customer just called them to buy 50 bags of rice. But the trading company finds that they do not have enough stock. So they decide to purchase 100 bags of rice from their vendor and will pay the money to the vendor after they receive the goods.

As a step-by-step guide, I will maintain the necessary objects for the food trading company and the vendor from the beginning and then run the ‘Procure to Pay’ process. Please be aware, all the steps and data are based on the system's existing configurations, the different systems may need different works/steps.

Step 1: Define Purchase Organization

One company may have more than one purchase organization, different purchase organization takes responsibility for purchasing different materials or services.

Transaction Code: OX08

We can use the 'New Entries' button to create a new purchase organization.

In this blog post, we will use the purchase organization 'ZJC0'.

Step 2: Define Purchase Group

'Purchase Group' will be used in the material master data.

Transaction Code: OME4

We can use the 'New Entries' button to create a new purchase group.

In this blog post, we will use the purchase organization 'ZJC'.

Step 3: Define Plant

Transaction Code: OX10

We can use the 'New Entries' button to create a new plant.

In this blog post, we will use the plant 'ZJP1'.

After we create the plant, we should assign the storage location information to the plant.

Transaction Code: OX09

Step 4: Maintain FI Master Data For The Vendor

Before we can create a Business Partner with the vendor roles, we should maintain the FI master data for the new vendor.

a. Company

Path: SPRO-Enterprise Structure-Financial Accounting-Define company

Company 'ZJC3'

b. Company Code

Path: SPRO-Enterprise Structure-Financial Accounting-Edit, Copy, Delete, Check Company Code

Company Code 'ZJC3'

c. Reconciliation Account

Transaction Code: FS00

We should create a new reconciliation account for the vendor under the company code.

In this blog post, the reconciliation account is ‘100100’. As a vendor reconciliation account, the ‘Recon. Account for Acct Type’ field should select ‘Vendors’.

Step 5: Maintain Vendor Data

As mentioned in my last blog post, there is no separate transaction code (TCODE) to maintain customer and vendor data in the S/4 HANA system,  the things have been moved to Business Partner (BP). We should create a new Business Partner with Vendor roles (FLVN00, FLVN01) for this vendor.

Transaction Code: BP

The simple steps:

a. Create a new Organization

b.  Select Customer role FLVN01 from the role list.

Select the ‘Purchasing’ button from the top-right screen.

Maintain the ‘Purchase Organization’ data in the poped screen.

In my test, it looks like the screenshot below.

Data in the tabs should be maintained based on the requirements. Save the changes after you maintain the data.

c. Select FI Customer role FLVN00 from the role list.

Select the ‘Company Code’ button from the top-right screen.

Using the company code and reconciliation account which we created in step 4 in the poped screen.

Step 6: Maintain Material Master

As mentioned, the food trading company will buy 10 bags of rice from the vendor. We should create the material master data for rice.

Transaction Code: MM01

Maintain material master data can be a big work. There are a lot of fields can be used in MM01 to meet the business requirements. In this blog post, I will use the most basic functions to maintain the material master data.

a. Select Industry Sector and Material type

b. Select the views

c. Input the organization level data, using the data which we created in the previous steps.

d. Maintain basic data in the tab ‘Basic Data 1’.

Business Unit of Measure: BAG

Weight information:

e. Maintain purchasing data in the tab 'Purchasing'

f. Maintain price information in the tab ‘Accounting 1’.

This is just an example.

After we click the ‘Save’ button, the system may ask us to maintain the values of other fields, this is based on the existing system configurations.

Step 7: Link The Objects

After the objects are created, we should maintain the relationship between them. Please carefully check the assignments and make sure all the objects which just created have been linked correctly before we start the ‘Procure-to-Pay’ process. Different error messages will appear in the ‘Order to Cash’ process if the links are not maintained correctly.

The assignments can be done in the path: SPRO-Enterprise Structure-Assignment

a. Assign company code to company

b. Assign plant to company code

c. Assign purchasing organization to company code

d. Assign purchasing organization to plant

Step 8: Create Purchase Requisition

We can create a purchase order based on a purchase requisition, or we can create a purchase order directly. This is dependent on different requirements.

Transaction Code: ME51N

Input the necessary fields (item, material, quantity, purchase group, plant, etc.)and save the change. After that, a new purchase requisition will be created.

The item's release strategy can be found from the tab 'Release strategy'. Please be aware, the different systems may have different release strategies.

An example:

Before we can use the purchase requisition to create a purchase order, we should make sure the item has been released.

Transaction Code: ME55

Step 9: Create Purchase Order

Transaction Code: ME21N

As mentioned, we will create a purchase order from the purchase requisition which we created in step 8.

a. Click the 'Document Overview On' button at the top left screen (if it shows 'Document Overview Off' button then ignore this step)

b. Select 'Purchase Requisitions' from the list

Input the purchase requisition document number on the new screen and click the 'Execute' button.

Drag the purchase requisition number to the 'Shopping Cart' label.

c. Header level data

Input the vendor number and other organization data which we created in the previous steps.

d. Item level data

The 'Plant' field should also be filled.

I am using value 'K' (Cost Center) in the  'Account Assignment Cat.' field in this blog post, this value should be changed based on different requirements.

e. Item detail data

After we create a new line item, we should also maintain the line item detail data for the line item.

'Account Assignment' tab:

As we are using 'K' (Cost center) as 'Account Assignment Cat.' for the line item, the fields under the tab should be filled. Controlling related configuration is out of the scope of this blog post, I will introduce it in another blog post.

'Confirmations' tab:

Before we can create the inbound delivery document, the item should be confirmed in the purchase order. Conformation control is based on customization.

After we finished the changes, we can click the 'Save' button and a new purchase order will be created.

Step 10: Create Inbound Delivery

Transaction Code: VL31N

As mentioned in step 9, the item under the purchase order should be confirmed before we can create the inbound delivery based on the purchase order.

a. Input the 'Vendor' and 'Purchase Order' information and check the 'Delivery Date' value. Click the 'Continue' button to the next screen.

b. Fill the 'Delivery quantity' field, check other fields and save the change.

Step 11: Create Good Receipt

In this test, before we can create a good receipt for the purchase order, we should maintain the purchase order's item to delivery complete.

Transaction Code: ME22N

Select the 'Deilv Compl.' checkbox and save the change.

Transaction Code: MIGO

Selecting 'Goods Receipt' and 'Purchase Order' from the dropdown lists. Fill the empty field on the right side with the purchase order number which we created in step 9.

Check the material information under the 'Material' tab.

Input the quantity value under the 'Quantity' tab.

Check the plant value under the 'Where' tab.

I will use movement type '101' in this blog post.

After we fill/check the data, click the 'Item Ok' checkbox and click the 'Post' button.

Step 12: Check FI Invoice

The FI documents will be created when we create a good receipt for the purchase order.

Transaction Code: MIGO

Selecting 'Display' and 'Material Document' from the dropdown lists. Input the material document number created in step 11 in the empty filed.

Clicking the 'FI Documents' button.

The FI documents information can be found from the popup window.

We can double click the document number to view the document.

Step 13: Create Invoice Receipt

Transaction Code: MIRO

Input the 'Invoice date' and the purchase order number which we created in step 9.

Check the values and click the 'Post' button.

The documents (MM document and A/P Invoice) will be created if there is no issue appeared in the posting.

The document can be displayed by transaction code MIR4.

Click the 'Follow-On Documents' button, the correspondence A/P invoice will be displayed.

If the A/P invoice is not cleared (automatic payment not configured) then the invoice should be cleared by transaction code F-53 ('Post Outgoing Payment').

After the posting successful finish, the 'Purchase Order History' tab will appear in the related purchase order, we can check it by transaction code ME23N.


In the blog post, we go through the simple 'Procure to Pay' process from building the master data ( ‘Purchase Organization’, ‘Purchase Group', ‘Plant’, ‘Company’, ‘Company Code’, 'Business Partner') and the transaction data (documents) from the beginning. I advise you to do the configurations and postings by yourself, this will help you to have a better understanding of ‘Procure to Pay’ processing.

My blog post for introducing the 'Order to Cash' simple process can be found from the URL below:



Best regards,

Jason Lu