Getting Started with Business Central Development

December 15, 2025
3 min read
By Maksymilian Meller

Table of Contents

This is a list of all the sections in this post. Click on any of them to jump to that section.

Why Business Central Development?

Microsoft Dynamics 365 Business Central has become one of the most popular ERP platforms for small and medium-sized businesses. As the ecosystem grows, so does the demand for custom extensions and integrations. Whether you’re a seasoned .NET developer or just starting your journey in the ERP world, learning AL development opens up a wealth of opportunities.

In this post, I’ll walk you through the essential steps to get your development environment up and running and build your first extension.

Setting Up Your Environment

Before writing any code, you need to prepare your tools. Here’s what you’ll need:

  • Visual Studio Code — the primary IDE for AL development
  • AL Language extension — Microsoft’s official extension for VS Code
  • Docker or a Business Central sandbox — for testing your extensions locally
  • Git — version control is essential even for solo projects

Once you have VS Code installed, open the Extensions panel and search for “AL Language.” Install it, and you’re ready to create your first project.

Creating Your First AL Project

Open the Command Palette (Ctrl+Shift+P) and select AL: Go!. This scaffolds a new AL project with the following structure:

  • app.json — project metadata and dependencies
  • src/ — your AL source files
  • .vscode/launch.json — configuration for deploying to a sandbox

The app.json file is the heart of your extension. It defines the app ID, name, version, publisher, and which Business Central version you’re targeting.

Writing a Simple Extension

Let’s create a simple page extension that adds a custom field to the Customer Card. In your src/ folder, create a new file called CustomerCardExt.al:

pageextension 50100 CustomerCardExt extends "Customer Card"
{
    layout
    {
        addafter("Phone No.")
        {
            field(PreferredContactMethod; Rec.PreferredContactMethod)
            {
                ApplicationArea = All;
                Caption = 'Preferred Contact Method';
            }
        }
    }
}

This extension adds a field right after the phone number on the Customer Card page.

Testing and Debugging

Press F5 to deploy your extension to the sandbox. VS Code will compile the AL code, package the extension, and publish it to your Business Central instance. You can then:

  • Navigate to the Customer Card to verify your new field appears
  • Use the Web Client to test the user experience
  • Set breakpoints in your AL code for debugging

Key Takeaways

  • Business Central development uses the AL language, which is a modern evolution of C/AL
  • VS Code with the AL Language extension is all you need to get started
  • Always test on a sandbox environment before deploying to production
  • Version control with Git is a must, even for small projects

In the next post, we’ll explore how to connect Business Central with Azure Functions for powerful cloud integrations.