Exposing Web Services in Dynamics NAV

By Jake Oetinger | February 13, 2019

Web services are a standardized way to communicate and exchange information between separate applications. This is a more secure and lightweight method of connecting applications as opposed to directly connecting to another application’s database. Microsoft began implementing web services into NAV over 10 years ago - allowing users to publish a variety of objects, also known as exposing web services in Microsoft Dynamics NAV. The most common use is code unit and pages. The blog will cover how to use and set up web services in Dynamics NAV

What can you do with NAV web services?

Common usage of NAV web services includes e-commerce integrations, WMS handheld applications, data gathering from IoT devices, and anything that will make it easier to securely transfer real-time data to and from NAV. For example, if your company uses special pricing and you would like your e-commerce website to reflect these prices in real-time without directly connecting to your NAV database, you can create a custom code unit in NAV, expose it via web services, and connect it to your e-commerce website.

How to Set Up Web Services in Dynamics NAV

In the example below, we are going to expose a custom code unit named ‘Web Services’. To help keep your exposed functionality organized, you should create a custom code unit that will store all your exposed functions.

Search in the top right corner 'Web Services'

Expose Web Services in NAV

Click 'New'

Exposing Web Services in NAV

Fill in the ‘Object Type’, ‘Object ID’ and ‘Service Name’ fields. When you are finished, check ‘Published’.

Exposing Web Services in NAV

After you check the ‘Published’ box, you are ready to connect! The connection string will automatically generate. Take the string, in this example the SOAP URL, and integrate it into your outside application.

Exposing Web Services in NAV

Click the global icon to view the WSDL. A WSDL is an XML format that describes the service connection.

Exposing Web Services in NAV

Here we can see more detailed information about the functions available through the web service we just exposed. The service that I exposed contains a function named ‘GetCustomerSalesPrice’ that takes three string parameters; custNo, itemNo, and unitOfMeasure. The function returns a decimal value.

Exposing Web Services in NAV

Exposing Web Services in NAV

Web services are a great way to connect and securely exchange information between different applications.  I hope this helps clear up what web services offers, how it can be utilized in NAV, and how to expose a web service. If you have questions or need help with web services, please reach out to Stoneridge Software.

Related Posts


Under the terms of this license, you are authorized to share and redistribute the content across various mediums, subject to adherence to the specified conditions: you must provide proper attribution to Stoneridge as the original creator in a manner that does not imply their endorsement of your use, the material is to be utilized solely for non-commercial purposes, and alterations, modifications, or derivative works based on the original material are strictly prohibited.

Responsibility rests with the licensee to ensure that their use of the material does not violate any other rights.

Start the Conversation

It’s our mission to help clients win. We’d love to talk to you about the right business solutions to help you achieve your goals.

Subscribe To Our Blog

Sign up to get periodic updates on the latest posts.

Thank you for subscribing!