Exposing Web Resources in Dynamics NAV & Business Central

By Jon Immel | November 25, 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 same can be accomplished in Dynamics 365 Business Central (BC) today. The most common use is code unit and pages. The blog will cover how to use and set up web services in Dynamics NAV/BC.

What Can You Do With Web Services?

Common usage of 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/BC. 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/BC, expose it via web services, and connect it to your e-commerce website. Below are instructions for setting up web services in NAV and Business Central with screenshots for each system.

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’

Search

Click ‘New’

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

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.

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

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.

How to Set Up Web Services in Dynamics 365 Business Central

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’

Click ‘New’

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

After clicking the “Publish” button, you can follow the above steps and example in the NAV instructions just the same for Business Central!

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 Business Central, 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!