> Markdown version of [Business Logic](https://vaadin.com/docs/next/building-apps/business-logic). Section index: [llms.txt](https://vaadin.com/docs/next/building-apps/llms.txt)

# Business Logic

In a Vaadin application, views don’t implement business logic themselves. They call *application services*, which carry out business operations, and define the transaction and security boundaries around them. For the reasoning behind this, see [Conceptual Layers](https://vaadin.com/docs/next/building-apps/architecture/layers.md).

Start with [Add a Service](https://vaadin.com/docs/next/building-apps/business-logic/add-service.md), which shows how to design an application service and call it from a view. The [Background Jobs](https://vaadin.com/docs/next/building-apps/business-logic/background-jobs.md) deep dive covers work that runs outside the request of a user, such as long-running operations, scheduled jobs, and follow-up work triggered by events.

To store data, see [Persistence](https://vaadin.com/docs/next/building-apps/forms-data/persistence.md). To protect services from unauthorized calls, see [Protect Services](https://vaadin.com/docs/next/building-apps/security/protect-services.md).

## <a id="topics"></a>Topics

- [Add a Service](https://vaadin.com/docs/next/building-apps/business-logic/add-service.md): Learn how to add an application service to a Vaadin application.
- [Background Jobs](https://vaadin.com/docs/next/building-apps/business-logic/background-jobs.md): How to handle background jobs.
