> For the complete documentation index, see [llms.txt](https://kb.bevica.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kb.bevica.com/documentation/integration/bevica_website_integration/web_integration_user_and_permissions.md).

# Web Integration User and Permissions

Set up web integration users and required permission sets.

### Website User

The website has to be assigned a full user licence in Business Central. You may need to involve your IT Admin. Refer to standard documentation: [Create Users](https://learn.microsoft.com/en-us/dynamics365/business-central/ui-how-users-permissions)

From Business Central May 2022 external integration can only be done using OAuth. For a website integration, this must be of a **Service to Service Authentication** type as documented below. Note that this is a technical document.

[Using S2S Authentication](https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/administration/automation-apis-using-s2s-authentication)

To create the necessary Azure resources will usually require setup from your IT administrators in liaison with TVT.

### *Deprecated from May 2022 - Web Service Access Key*

*The website user needs to have a ‘Web Service Access Key’ created so they can authenticate to the web services. This is tenant wide, so is shared across all companies.*

* Log into Business Central as the website user. Other users cannot see the web service access key.
* *Navigate to the **User** record for the website user*
* Select ‘Change Web Service Key’ on the ribbon
* Depending on your security policies select whether you want the key to expire or not. Click OK.
* *The ‘Web Service Access Key’ will be displayed. Pass this on securely to your web partners.*
  1. Make sure you double click on the field to select all the text!

> *TVT will also need a copy of this key so we can test as the website user to ensure the functionality is working.*

### Permissions

The website integration user will need to be assigned appropriate Permissions to be able to:

* Authenticate to Business Central (i.e. log in)
* Access the Web Services (read, insert, modify, delete as appropriate)
* Access the tables underlying the Web Services (e.g. Items)

[Assign Permissions to Users & Groups](https://learn.microsoft.com/en-gb/dynamics365/business-central/ui-define-granular-permissions)

Depending on your particular setup, the scope of permissions will need to be customised.

Whilst for initial testing you can give the Website User broad permissions, you should limit the scope of their access appropriately, and this must be done during the testing phase so any issues are ironed out.

### Licensing

Note that you must be in compliance with Business Central licensing terms. If internal users are entering orders through the website, they must be licensed as a Business Central user. Refer to the Microsoft licensing terms.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://kb.bevica.com/documentation/integration/bevica_website_integration/web_integration_user_and_permissions.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
