Actual Cost of Sales for purchased goods

Finding out Actual Cost for Sales Order

In this post I will show how to find out actual cost for materials sold to customer. It will be for process where we purchase the goods that we sell and these goods are valuated with moving average price.

The business flow will be the following:

  1. Sales order creation for externally purchased material.
  2. Creating Purchase Order towards vendor
  3. Goods receipt for the Purchase Order
  4. Invoice Receipt for the Purchase order
  5. Posting Delivery Cost towards Customer Sales order
  6. Delivery creation towards Customer
  7. Invoice towards Customer
  8. Checking the actual Cost of Sales for the sales order created

Creating the sales order

I have created a customer sales order with material R1000. This material we will have to purchase from a vendor in order to sell it as we hold no stock at the moment.

The material:

The material is set up with Moving Average price which is 75 at the moment.

In the sales order we have list price of 120 per 1 PC and Cost of 75 (the moving average from the material master). Therefore that leaves us with Profit Margin 37,5% at the moment. At this point we don’t know the actual cost or the actual margin for this sales order, this is just the planned margin.

Purchase order towards the vendor

I have now run the MRP and released the purchase proposal and can create the order towards the


In the purchase order I put price of 82 per 1 PC and send it off to the vendor.

Goods & Invoice receipt for the Purchase Order

Now that we have the order created we can receive it, post the goods into the warehouse and also post the invoice from the vendor.

This is straight forward:

Goods receipt:

Invoice receipt:

And here we can see the responding journal entries for those postings:

Now that the goods are in the warehouse and invoice is received we will enter one more vendor invoice for transportation costs.

Invoice for transportation costs

To be able to post transportation invoice for Sales Order can use the Post Invoice Without Purchase Order reference and assign the cost to a sales order using the cost distribution option:

Here we assigned G/L account and Sales order/item. Note that this same option allows us to assign the cost to project, service order, cost center etc.

Now that’s done we can go ahead and create delivery and invoice the customer.

Delivery & invoicing the customer

Nothing interesting in the delivery & goods issue.

Invoicing is pretty straightforward also. Notice we get the same pricing/cost elements as we had in the sales order.

Now that we have issued the goods to the customer and also invoiced them we can find out the real costs and contribution margins for this sales order.

Actual costs on the sales order

To find out the actual costs and contribution margin for this sales order we can use the work center Cost and Revenue.

We will find out Sales Order here and we can use reports to find out details about the order:

Lets select report named Profit Detail by Contribution Margin Scheme for Sales Order Item:

And here we are. This is the Invoiced Profit which we’ve seen before. Total Cost of Sales were 375.

This here is the earned profit. This will take into account the actual payment to vendor and also the extra 50 we posted against the sales order for the transportation. This gives us total cost of 460. This comes from 82 per 5 pc-s and 50 for the transportation: 82 x 5+50 = 460.

Of course as with all reports we can add more details, for example we can add Journal Entries to see exactly where each amount is coming from.

This is it, hope you have enjoyed the reading.

If you want to read about produced(standard cost control) items when you can read it from here –

Activating and consuming a Web service from SAP Business ByDesign

In the video above I will show You how to:

  • find all available web services in ByDesign
  • all the necessary steps in activating the service for consumption – creating communication system, creating communication scenario, creating communication arraignment
  • querying and actually using the Web Service


For more technical information read the following post – how to consume SAP ByDesign Web services with NodeJS

Hope you enjoy the video and if You have any questions or want to know more, don’t hesitate to contact me.


SAP ByDesign SOAP based web services consumption in NodeJS

Here is a small example how to consume SAP BYD SOAP services in NodeJS.

I’m going to use this service

This QueryJournalEntryIn service is for reading journal entries from BYD system.
Example SOAPUI request:

Doing the same thing with NodeJS, express middlware and node-soap npm package.
We are still using the WSDL query but instead of using the default queries provided by the WSDL we can define our own just like in SOAPUI.


In the example above i’m also making multiple queries to SOAP service since I only need few specific document types:



And now e get response back from ByDesign:

That’s it. If any questions, please leave a comment below.

SAP Business ByDesign Supply Chain Management Free Course @

Starting at 10.10.2017 at is the new SCM course by SAP.

Course summary as coped from the OpenSap webpage:
SAP Business ByDesign is SAP’s cloud-based ERP solution for SMEs, and enables you to manage your entire business with a single cloud ERP solution. It’s ideally suited for upper mid-market companies and subsidiaries of large corporations (2-tier approach).

In this fourth openSAP course on SAP Business ByDesign, you’ll learn the basics of supply chain management, and how the processes are tightly integrated within the different areas of SAP Business ByDesign, such as sales, purchasing, and financials. Our team of experts will explain how to model your company and how to set up the supply chain. You’ll get insights on how the planning, buying, and selling activities work. This will be followed by a deep dive into product manufacturing, and you’ll learn about some additional processes like returns, repairs, and third-party processes. To round off the course, we’ll give you a comprehensive overview of additional sales interfaces and how product costing and the solution’s reporting capabilities can help you make more informed decisions for your business.

All the weeks are complemented by demonstrations in the systems. These will help you link what you’ve learned in the theory to your daily work activities. To make your learning experience even more exciting, you’ll be able to download a few additional exercises to try out the solution on the free tenants yourself.

Looking forward to the course and see You there!

Setting up printer and printing labels

Tutorial on how to set up Cloud Print Manager for ByDesign and how to use it.

Cloud Print Manager for ByDesign is a stand alone application that you can install on your Windows machine to print documents from SAP ByD. It can work on local machine but in production should be installed on a print server. In this tutorial I’m installing the application on Windows 10 machine.

First thing download the plugin from SAP ByDesign WC:Application and User management->Business Flexibility->Download Center

Install the software on your machine but don’t start it yet.

First we need to create new user for the printing service. Theoretically you can use also your own user with admin rights.

To create a user, first find computer management and click on System tools.

Now select Local Users and Groups:

Now select users:

Select new user and enter the user details. Remove User must change password at next logon tick.

Make the user admin:

Now we should have a user ready.

After the user we need to find service for the Cloud Print Manager.

You can find the service by searching services.msc:

From the service list find SAP Cloud Print Services and Watcher.

Enter the logon details:

Now we need to go to the SAP ByDesign system and create print queue and assign user to that queue and set the password for the user. You can do that from WC:Application and User management->Input/Output management->Print queues.

Now we are ready to log to the Cloud Print manager.


First you need to make sure that the SAP Cloud Print Service is running and is green. If its green, configure your SAP ByD system.

Runtime System->New

Enter your login details using the user previously created in the ByD system. Make sure you untick the Business User if its technical user, it will not work otherwise.

This is it, we are now ready to start printing.

For testing purposes I configured the Cloud Print manager to save documents to file:

To test it I created a label at the moment of Inbound delivery.

This is the standard ByD stock label.


I can now use the bar code from that label to enter data in other production processes.

Read also:


Actual Costs in SAP Business ByDesign – price control standard

Quick overview of how actual costs for materials are handled in SAP BYD for materials with standard price control.

Material RMS10000 is semi-finished product which is used to produce finished good VT10002.

Both materials are handled by standard price in the system.

To produce RMS10000 we are buying another raw material RM10000 to use it as a component.

Business transactions which are needed to calculate actual cost and new standard price for VT10002:

  1. Purchase order of RM10000
  2. Production order of RMS10000
  3. Production order of VT10002
  4. Sales order/invoice of VT10002

Before calculating the actual cost for VT10002 the sales invoice is costed adn the contribution margin is calculated by the standard price in the system. In order to know the actual cost of sales(COGS) we need to calculate the actual cost taking into consideration the cost of raw materials, cost of labour and resources and the allocated overhead costs(general office costs etc) which happened while producing VT10002.

Here’s how to do the actual costing in the system:

Creating the cost estimate

WC: Inventory Valuation->Material cost rollup

Create new run and include the materials you want to calculate the cost for. You can run it in test mode to check the outcome.

Here we see the actual costs occurred for producing the RMS10000. This includes cost of RM10000, labour and overhead of general administration costs.

You can now go to WC:Inventory valuation->Material Cost Estimate release and release the cost estimate.

After the release of the cost estimate its possible to run the inventory cost update

WC: Inventory valuation->Update Inventory Costs

Create the update and test it and then post it.

You can check the postings made to the inventory valuation:

Here you will see that the old standard value of the VT10000 was 35 and the new calculated actual cost is 57,31.

This change will also reflect as a new standard cost in the material master:

Also now its possible to see the actual cost of sales for the sales invoice for material VT10002. It’s available in WC: Cost and Revenue->Reports->Profit Overview by Product

In the report you can see the actual contribution margin of the sales invoice.


Batch specific conversions for batch handled materials

I recently needed a functionality for a customer in SAP BYD similar to ECC MILL-CUT add-on factor batches. This means that I wanted to handle material in batches and with factors. This functionality is needed when you deal for example with a product where you sell and produce it by meters and batches but you never know how big one batch will be. It can be 5x123m or 8x194m and its still same product.

I was able to achieve this functionality in SAP BYD as following.

1. Material where batch specific Quantity Conversion is enabled for each => m3. (its a wood product).

Its needed because in reality I never know how many m3 one pc of the product will be. The length of one piece can be 1m or 5.342m. I need to set the length and therefore calculate the m3 when I enter the batch level and not on the material level.

2. When doing goods receipt for the batch (it applies also when you make confirmation for production task for example) I will enter the batch number and specify the conversion for 1 ea of the material.

Here I can enter that 1 ea == 2,358m

Now i’m able to enter the factor for the quantity as following:

I entered that I received 56 ea of this material. And the system is able to automatically calculate the m3 of this quantity.

This means that I have one row with quantity of 78,15 m3 and I can receive different batches with factors and which will add up to this one row.

Now the second batch:

Same material but one ea is different length and therefore different m3 then the first one.

Total for the row adds up nicely.

With the solution above you can produce length or volume based batch product in SAP ByDesign.

Read also about production process in BYD

Standard Cost vs Moving Average Cost in SAP BYD

Small matrix to help understand the difference between the standard and moving average cost in BYD:

 Standard CostMoving Average
Inventory CostPredetermined value that remains constant until changed manuallyAverage of current inventory value and all receipts of material into inventory
Goods ReceiptsNo effect on inventory costRecalculate inventory cost
Accounting for DifferencesDifferences resulting from business transactions and clearing runs are posted to difference accountsDifferences resulting from business transactions and clearing runs are allocated to inventory

Accounting for Differences means that when You for example post Goods Receipt for 100 and invoice comes for 120 then if You have Standard Cost as valuation method you will get the 120-100=20 difference to Difference account in accounting and if you have Moving Average then the difference of 20 will be allocated to inventory(material).

Logic for project valuation in SAP ByDesign

The logic for system to determine the valuation of project items is following in SAP BYD.

Planned services and materials which are used in the projects are valuated by predefined valuation strategies with priorities/access levels.

Strategy for services staffed with internal employees:

  1. Labour resource cost rate
  2. Service cost rate

Strategy for services staffed with external employees:

  1. Price from fixed source of supply
  2. Price from contract
  3. Price from price list
  4. Service cost rate

Strategy for material sourced externally:

  1. Price from purchase order associated with the project
  2. Price from purchase order not associated with the project (PO with the same material as in the project)
  3. Price from fixed source of supply
  4. Price from contract
  5. Price from price list

Strategy for materials sourced from stock:

  1. Inventory cost maintained for business residence maintained in project
  2. Inventory cost maintained for business residence derived by the system
  3. Average of inventory costs maintained for business residences in the company

Expenses planned in project are directly taken over as costs


Sourcing process in SAP Business ByDesign

Overview of how the sourcing process works in SAP Business ByDesign.

SAP Business ByDesign sourcing process
SAP Business ByDesign sourcing process

Sourcing process in SAP Business ByDesign starts with purchase proposals coming from the system. They can be triggered by sales orders, projects, production needs etc.

Purchase proposal can be bundled into Purchase requests. Purchase request is something that is controlled by human and is 100% verified for purchasing.

When there is no contract or price list available in the system, the system allows you to create a sourcing requests to ask vendors for price offers. You can then receive and enter these quotes into the SAP BYD system and select the best offer.

After selecting the vendor quote purchase order will be created automatically and will be sent to the supplier if configured so.

Lets take a look at the steps involved.


    1. Releasing Purchase proposals

      Select and release the purchase proposals you need to source. This can be done in the WC: Supply control: Process Purchase Proposals

Purchase proposals release
Purchase proposals release

In this WC you will find all the proposals that the system has created. They can come from different sources. Sales orders, projects, requirements from the production, self service purchase requests from employees etc.

    1. Select purchase requests for sourcing

Select one or more purchase requests to include them in the RFQ(Request for Quotation).

This can be done in the WC: Purchase requests and orders: Purchase requests

Purchase request
Purchase request
Purchase request2
Purchase request2

Select the request and then select Quick Sourcing Request.

    1. Select suppliers and send out RFQ’s

Next step allows us to choose our favorite suppliers or have the system suggest us suppliers based on the previous transactions with this material.

This will be done in the WC: Sourcing and contracting: Sourcing requests.

We will see our Sourcing Request created in the previous step here.

Sourcing request
Sourcing request
Overview of the sourcing request
Overview of the sourcing request

Now we can enter our suppliers or let the system suggest:

Sourcing request supplier selection
Sourcing request supplier selection

Send out the RFQ to the suppliers.

Send out the RFQ
Send out the RFQ
    1. Receive and enter quotes

In this step we have received the quotes from the suppliers.

First lets enter quote we got from the first supplier.

Quote from first supplier
Quote from first supplier
Quote from first supplier
Quote from first supplier

Now we have the quote from the supplier in the system. We can use this in the next step to evaluate the offers and choose the best one.

    1. Compare and select quote

Now we have two quotes and lets see which one is better.

Quote compare
Quote compare

We will choose the cheaper one and mark this as accepted. It would be possible also the ask for a new quote from the supplier that was not successful this time.

  1. Purchase order is created and sent

Once we have selected the winning quote the purchase order is created and sent out to the supplier using the information from the quote.

Purchase order is created
Purchase order is created

This completes the quick sourcing process in SAP Business ByDesign. I personally find this very convenient and effective to use.

Check out also Make-To-Order production process in SAP BYD or read what SAP Business ByDesign is all about.