---
id: object/page/22
type: object
title: Page 22 "Customer List"
summary: Page 22 "Customer List" in Base Application (Microsoft.Sales.Customer). 2 public procedures, 2 events. Present since at least BC23, still in BC30, changed in BC24-25, BC28.
tier: official
language: en
tags:
  - page
  - base application
versions:
  introduced: null
  last_changed: "28"
  deprecated: null
review:
  state: derived
  by: null
  at: null
  flags: []
generated:
  at: "2026-10-11T00:31:51.816Z"
  pipeline: 0.2.0
  prompts: {}
  input_hash: b8aa31bdc50940e3e80f0f8574beb5ef3bc0fcde58fd5afecf014e2cb71de7d2
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Sales/Customer/CustomerList.Page.al
    title: src/Layers/W1/BaseApp/Sales/Customer/CustomerList.Page.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/analysis-assist
    title: Analyze data in lists with Copilot (preview)
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/analysis-mode
    title: Analyze list page and query data using data analysis
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/finance-how-to-set-up-cash-customers
    title: Set Up Cash Customers
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/sales-how-register-new-customers
    title: Register new customers by creating a Customer Card
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/ui-create-number-series
    title: Create number series
    date: null
    commit: null
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/analysis-assist
    - https://learn.microsoft.com/dynamics365/business-central/analysis-mode
    - https://learn.microsoft.com/dynamics365/business-central/finance-how-to-set-up-cash-customers
    - https://learn.microsoft.com/dynamics365/business-central/sales-how-register-new-customers
    - https://learn.microsoft.com/dynamics365/business-central/ui-create-number-series
  objects: []
  features: []
  topics:
    - topic/business-central/analytics-business-intelligence-and-repo/ad-hoc-data-analysis
    - topic/business-central/business-functionality/sales
    - topic/business-central/business-functionality/set-up-business-central
    - topic/business-central/business-functionality/set-up-business-central/set-up-finance
    - topic/business-central/business-functionality/set-up-business-central/set-up-sales
    - topic/business-central/copilot-and-agent-capabilities/analysis-assist
    - topic/dev-itpro/development/data-analytics-and-reporting
    - topic/dev-itpro/development/programming-in-the-al-language/tables-and-data/using-query-objects
  localizations: []
  videos: []
  posts: []
  guidelines: []
  changes:
    - change/bcapps/9583
object_type: page
object_id: 22
name: Customer List
caption: Customers
namespace: Microsoft.Sales.Customer
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in:
  - "24"
  - "25"
  - "28"
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids:
  - docs/learn-smb-docs/business-central/analysis-assist.md
  - docs/learn-smb-docs/business-central/analysis-mode.md
  - docs/learn-smb-docs/business-central/finance-how-to-set-up-cash-customers.md
  - docs/learn-smb-docs/business-central/sales-how-register-new-customers.md
  - docs/learn-smb-docs/business-central/ui-create-number-series.md
counts:
  fields: 0
  procedures: 7
  events: 2
  subscribers: 0
  controls: 46
  actions: 84
relations:
  out: 2
  referenced_by: 0
  pages: 1
  extended_by: 6
  event_subscribers: 3
  calls: 11
  called_by: 5
  implements: 0
---

# Page 22 "Customer List"

> Page 22 "Customer List" in Base Application (Microsoft.Sales.Customer). 2 public procedures, 2 events. Present since at least BC23, still in BC30, changed in BC24-25, BC28.

Base Application · Microsoft.Sales.Customer · captioned "Customers" · BC23-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Sales/Customer/CustomerList.Page.al) · facts from BC29

## Properties

| Property | Value |
|---|---|
| Caption | Customers |
| SourceTable | Customer |
| PageType | List |
| UsageCategory | Lists |
| ApplicationArea | Basic, Suite, Service |

## Fields on this page

Layout controls in source order, grouped by the container they sit in. Shows: the table field a control is bound to (or its expression as written); ToolTip: the control's own, else the bound field's (marked).

| Group | Control | Shows | ToolTip |
|---|---|---|---|
| Control1 | No. | [No.](../table/18.md#fields) | Specifies the number of the customer. The field is either filled automatically from a defined number series, or you enter the number manually because you have enabled manual number entry in the number-series setup. <small>from the table field</small> |
|  | Name | [Name](../table/18.md#fields) | Specifies the customer's name that appears on all related documents. For companies, specify the company's name here, and then add the relevant people as contacts that you link to this customer. <small>from the table field</small> |
|  | Name 2 | [Name 2](../table/18.md#fields) | Specifies an additional part of the name. <small>from the table field</small> |
|  | Responsibility Center | [Responsibility Center](../table/18.md#fields) | Specifies the code for the responsibility center that will administer this customer by default. <small>from the table field</small> |
|  | Location Code | [Location Code](../table/18.md#fields) | Specifies from which location sales to this customer will be processed by default. <small>from the table field</small> |
|  | Post Code | [Post Code](../table/18.md#fields) | Specifies the post code. <small>from the table field</small> |
|  | Country/Region Code | [Country/Region Code](../table/18.md#fields) | Specifies the country/region of the address. <small>from the table field</small> |
|  | Phone No. | [Phone No.](../table/18.md#fields) | Specifies the customer's telephone number. <small>from the table field</small> |
|  | IC Partner Code | [IC Partner Code](../table/18.md#fields) | Specifies the customer's intercompany partner code. <small>from the table field</small> |
|  | Contact | [Contact](../table/18.md#fields) | Specifies the name of the person you regularly contact when you do business with this customer. <small>from the table field</small> |
|  | Salesperson Code | [Salesperson Code](../table/18.md#fields) | Specifies a code for the salesperson who normally handles this customer's account. <small>from the table field</small> |
|  | Customer Posting Group | [Customer Posting Group](../table/18.md#fields) | Specifies the customer's market type to link business transactions to. <small>from the table field</small> |
|  | Allow Multiple Posting Groups | [Allow Multiple Posting Groups](../table/18.md#fields) | Specifies if multiple posting groups can be used for posting business transactions for this customer. <small>from the table field</small> |
|  | Gen. Bus. Posting Group | [Gen. Bus. Posting Group](../table/18.md#fields) | Specifies the customer's trade type to link transactions made for this customer with the appropriate general ledger account according to the general posting setup. <small>from the table field</small> |
|  | VAT Bus. Posting Group | [VAT Bus. Posting Group](../table/18.md#fields) | Specifies the customer's VAT specification to link transactions made for this customer to. <small>from the table field</small> |
|  | Customer Price Group | [Customer Price Group](../table/18.md#fields) | Specifies the customer price group code, which you can use to set up special sales prices in the Sales Prices window. <small>from the table field</small> |
|  | Customer Disc. Group | [Customer Disc. Group](../table/18.md#fields) | Specifies the customer discount group code, which you can use as a criterion to set up special discounts in the Sales Line Discounts window. <small>from the table field</small> |
|  | Payment Terms Code | [Payment Terms Code](../table/18.md#fields) | Specifies a code that indicates the payment terms that you require of the customer. <small>from the table field</small> |
|  | Reminder Terms Code | [Reminder Terms Code](../table/18.md#fields) | Specifies how reminders about late payments are handled for this customer. <small>from the table field</small> |
|  | Fin. Charge Terms Code | [Fin. Charge Terms Code](../table/18.md#fields) | Specifies the code for the involved finance charges in case of late payment. <small>from the table field</small> |
|  | Currency Code | [Currency Code](../table/18.md#fields) | Specifies the default currency for the customer. <small>from the table field</small> |
|  | Language Code | [Language Code](../table/18.md#fields) | Specifies the language that is used when translating specified text on documents to foreign business partner, such as an item description on an order confirmation. <small>from the table field</small> |
|  | Search Name | [Search Name](../table/18.md#fields) | Specifies an alternate name that you can use to search for a customer. <small>from the table field</small> |
|  | Credit Limit (LCY) | [Credit Limit (LCY)](../table/18.md#fields) | Specifies the maximum amount of credit that you extend to the customer for their purchases before you issue warnings. The value 0 represents unlimited credit. <small>from the table field</small> |
|  | Blocked | [Blocked](../table/18.md#fields) | Specifies which transactions with the customer that cannot be processed, for example, because the customer is insolvent. <small>from the table field</small> |
|  | Privacy Blocked | [Privacy Blocked](../table/18.md#fields) | Specifies whether to limit access to data for the data subject during daily operations. This is useful, for example, when protecting data from changes while it is under privacy review. <small>from the table field</small> |
|  | Last Date Modified | [Last Date Modified](../table/18.md#fields) | Specifies when the customer card was last modified. <small>from the table field</small> |
|  | Application Method | [Application Method](../table/18.md#fields) | Specifies how to apply payments to entries for this customer. <small>from the table field</small> |
|  | Combine Shipments | [Combine Shipments](../table/18.md#fields) | Specifies if several orders delivered to the customer can appear on the same sales invoice. <small>from the table field</small> |
|  | Reserve | [Reserve](../table/18.md#fields) | Specifies whether items will never, automatically (Always), or optionally be reserved for this customer. Optional means that you must manually reserve items for this customer. <small>from the table field</small> |
|  | Ship-to Code | [Ship-to Code](../table/18.md#fields) | Specifies the code for another shipment address than the customer's own address, which is entered by default. <small>from the table field</small> |
|  | Shipping Advice | [Shipping Advice](../table/18.md#fields) | Specifies if the customer accepts partial shipment of orders. <small>from the table field</small> |
|  | Shipping Agent Code | [Shipping Agent Code](../table/18.md#fields) | Specifies which shipping company is used when you ship items to the customer. <small>from the table field</small> |
|  | Base Calendar Code | [Base Calendar Code](../table/18.md#fields) | Specifies a customizable calendar for shipment planning that holds the customer's working days and holidays. <small>from the table field</small> |
|  | Balance (LCY) | [Balance (LCY)](../table/18.md#fields) | Specifies the total amount the customer owes you, or you owe them, based on all sales and credits for the customer. A positive amount means they owe you, and a negative amount means you owe them. The amount isn't necessarily due today though. The customer's payment terms determine due dates. Select ... <small>from the table field</small> |
|  | Balance Due (LCY) | [Balance Due (LCY)](../table/18.md#fields) | Specifies the total amount that's due from the customer as of today. Consider using reminders to minimize late payments and optimize cashflow. <small>from the table field</small> |
|  | Sales (LCY) | [Sales (LCY)](../table/18.md#fields) | Specifies the total net amount of sales to the customer in LCY. <small>from the table field</small> |
|  | Payments (LCY) | [Payments (LCY)](../table/18.md#fields) | Specifies the sum of payments received from the customer. <small>from the table field</small> |
|  | Coupled to Dataverse | [Coupled to Dataverse](../table/18.md#fields) | Specifies that the customer is coupled to an account in Dataverse. <small>from the table field</small> |
| FactBoxes | PowerBIEmbeddedReportPart | part [Page 6325 "Power BI Embedded Report Part"](../page/6325.md) | — |
|  | Control99 | part [Page 5360 "CRM Statistics FactBox"](../page/5360.md) | — |
|  | Documents | part [Page 1178 "Doc. Attachment List Factbox"](../page/1178.md) | — |
|  | SalesHistSelltoFactBox | part [Page 9080 "Sales Hist. Sell-to FactBox"](../page/9080.md) | — |
|  | SalesHistBilltoFactBox | part [Page 9081 "Sales Hist. Bill-to FactBox"](../page/9081.md) | — |
|  | CustomerStatisticsFactBox | part [Page 9082 "Customer Statistics FactBox"](../page/9082.md) | — |
|  | CustomerDetailsFactBox | part [Page 9084 "Customer Details FactBox"](../page/9084.md) | — |

## Actions

| Group | Action | ToolTip | Runs |
|---|---|---|---|
| Customer | Comments | View or add comments for the record. | [Page 124 "Comment Sheet"](../page/124.md) |
| Dimensions | Dimensions-Single | View or edit the single set of dimensions that are set up for the selected record. | [Page 540 "Default Dimensions"](../page/540.md) |
|  | Dimensions-Multiple | View or edit dimensions for a group of records. You can assign dimension codes to transactions to distribute costs and analyze historical information. |  |
| Customer | Bank Accounts | View or set up the customer's bank accounts. You can set up any number of bank accounts for each customer. | [Page 424 "Customer Bank Account List"](../page/424.md) |
|  | Direct Debit Mandates | View the direct-debit mandates that reflect agreements with customers to collect invoice payments from their bank account. | [Page 1230 "SEPA Direct Debit Mandates"](../page/1230.md) |
|  | Ship-to Addresses | View or edit alternate shipping addresses where the customer wants items delivered if different from the regular address. | [Page 301 "Ship-to Address List"](../page/301.md) |
|  | Alternative VAT Registration | View or set up an alternative VAT registration number for the customer. | [Page 212 "Alt. Cust. VAT Reg."](../page/212.md) |
|  | Contact | View or edit detailed information about the contact person at the customer. |  |
|  | Item References | Set up the customer's own identification of items that you sell to the customer. Item references to the customer's item number means that the item number is automatically shown on sales documents instead of the number that you use. | [Page 5736 "Item References"](../page/5736.md) |
|  | Online Map | View the address on an online map. |  |
|  | Approvals | View a list of the records that are waiting to be approved. For example, you can see who requested the record to be approved, when it was sent, and when it is due to be approved. |  |
| Dataverse | Account | Open the coupled Dataverse account. |  |
|  | Synchronize | Send or get updated data to or from Dataverse. |  |
|  | Update Account Statistics | Send customer statistics data to Dataverse to update the Account Statistics FactBox. |  |
| Coupling | Set Up Coupling | Create or modify the coupling to a Dataverse account. |  |
|  | Match-Based Coupling | Couple customers to accounts in Dataverse based on criteria. |  |
|  | Delete Coupling | Delete the coupling to a Dataverse account. |  |
| Create | Create Account in Dataverse | Generate the account in the coupled Dataverse account. |  |
|  | Create Customer in Business Central | Generate the customer in the coupled Dataverse account. |  |
| Dataverse | Synchronization Log | View integration synchronization jobs for the customer table. |  |
| History | Ledger Entries | View the history of transactions that have been posted for the selected record. | [Page 25 "Customer Ledger Entries"](../page/25.md) |
|  | Statistics | View statistical information, such as the value of posted entries, for the record. | [Page 151 "Customer Statistics"](../page/151.md) |
|  | Sales | Shows a summary of customer ledger entries. You select the time interval in the View by field. The Period column on the left contains a series of dates that are determined by the time interval you have selected. | [Page 155 "Customer Sales"](../page/155.md) |
|  | Entry Statistics | View entry statistics for the record. | [Page 302 "Customer Entry Statistics"](../page/302.md) |
|  | Statistics by Currencies | View statistics for customers that use multiple currencies. | [Page 486 "Cust. Stats. by Curr. Lines"](../page/486.md) |
|  | Item Tracking Entries | View serial, lot or package numbers that are assigned to items. |  |
|  | Sent Emails | View a list of emails that you have sent to this customer. |  |
| Sales | Invoice Discounts | Set up different discounts that are applied to invoices for the customer. An invoice discount is automatically granted to the customer when the total on a sales invoice exceeds a certain amount. | [Page 23 "Cust. Invoice Discounts"](../page/23.md) |
|  | Prices | View or set up different prices for items that you sell to the customer. An item price is automatically granted on invoice lines when the specified criteria are met, such as customer, quantity, or ending date. |  |
|  | Line Discounts | View or set up different discounts for items that you sell to the customer. An item discount is automatically granted on invoice lines when the specified criteria are met, such as customer, quantity, or ending date. |  |
|  | Prepayment Percentages | View or edit the percentages of the price that can be paid as a prepayment. | [Page 664 "Sales Prepayment Percentages"](../page/664.md) |
|  | Recurring Sales Lines | Set up recurring sales lines for the customer, such as a monthly replenishment order, that can quickly be inserted on a sales document for the customer. | [Page 173 "Standard Customer Sales Codes"](../page/173.md) |
| Documents | Quotes | View a list of ongoing sales quotes. | [Page 9300 "Sales Quotes"](../page/9300.md) |
|  | Orders | View a list of ongoing sales orders for the customer. | [Page 9305 "Sales Order List"](../page/9305.md) |
|  | Return Orders | Open the list of ongoing return orders. | [Page 9304 "Sales Return Order List"](../page/9304.md) |
| Issued Documents | Issued Reminders | View the reminders that you have sent to the customer. | [Page 440 "Issued Reminder List"](../page/440.md) |
|  | Issued Finance Charge Memos | View the finance charge memos that you have sent to the customer. | [Page 452 "Issued Fin. Charge Memo List"](../page/452.md) |
| Documents | Blanket Orders | Open the list of ongoing blanket orders. | [Page 9303 "Blanket Sales Orders"](../page/9303.md) |
| Creation | Blanket Sales Order | Create a blanket sales order for the customer. | [Page 507 "Blanket Sales Order"](../page/507.md) |
|  | Sales Quote | Offer items or services to a customer. | [Page 41 "Sales Quote"](../page/41.md) |
|  | Sales Invoice | Create a sales invoice for the customer. | [Page 43 "Sales Invoice"](../page/43.md) |
|  | Sales Order | Create a sales order for the customer. | [Page 42 "Sales Order"](../page/42.md) |
|  | Sales Credit Memo | Create a new sales credit memo to revert a posted sales invoice. | [Page 44 "Sales Credit Memo"](../page/44.md) |
|  | Sales Return Order | Create a new sales return order for items or services. | [Page 6630 "Sales Return Order"](../page/6630.md) |
|  | Reminder | Create a new reminder for the customer. | [Page 434 "Reminder"](../page/434.md) |
|  | Finance Charge Memo | Create a new finance charge memo. | [Page 446 "Finance Charge Memo"](../page/446.md) |
| Prices Discounts | Invoice Discounts | Set up different discounts applied to invoices for the selected customer. An invoice discount is automatically granted to the customer when the total on a sales invoice exceeds a certain amount. | [Page 23 "Cust. Invoice Discounts"](../page/23.md) |
|  | Sales Price Lists | View or set up sales price lists for products that you sell to the customer. A product price is automatically granted on invoice lines when the specified criteria are met, such as customer, quantity, or ending date. |  |
|  | Sales Prices | View or set up sales price lines for products that you sell to the customer. A product price is automatically granted on invoice lines when the specified criteria are met, such as customer, quantity, or ending date. |  |
|  | Sales Discounts | View or set up different discounts for products that you sell to the customer. A product line discount is automatically granted on invoice lines when the specified criteria are met, such as customer, quantity, or ending date. |  |
|  | Price Lists (Discounts) | View or set up different discounts for products that you sell to the customer. A product line discount is automatically granted on invoice lines when the specified criteria are met, such as customer, quantity, or ending date. |  |
|  | Prices | View or set up different prices for items that you sell to the selected customer. An item price is automatically granted on invoice lines when the specified criteria are met, such as customer, quantity, or ending date. |  |
|  | Line Discounts | View or set up different discounts for items that you sell to the customer. An item discount is automatically granted on invoice lines when the specified criteria are met, such as customer, quantity, or ending date. |  |
| Request Approval | Send Approval Request | Request approval to change the record. |  |
|  | Cancel Approval Request | Cancel the approval request. |  |
| Workflow | Create Approval Workflow | Set up an approval workflow for creating or changing customers, by going through a few pages that will guide you. |  |
|  | Manage Approval Workflows | View or edit existing approval workflows for creating or changing customers. |  |
| Processing | Cash Receipt Journal | Open the cash receipt journal to post incoming payments. | [Page 255 "Cash Receipt Journal"](../page/255.md) |
|  | Sales Journal | Post any sales transaction for the customer. | [Page 253 "Sales Journal"](../page/253.md) |
|  | Apply Template | Apply a template to update one or more entities with your standard settings for a certain type of entity. |  |
|  | Apply Word Template | Apply a Word template on the selected records. |  |
|  | Send Email | Send an email to this customer. |  |
|  | Register Customer Payments | Process your customer payments by matching amounts received on your bank account with the related unpaid sales invoices, and then post the payments. | [Page 981 "Payment Registration"](../page/981.md) |
| Sales Reports | Customer - Top 10 List (Obsolete) <small>obsolete Pending 28.0; #if not CLEAN28</small> | View which customers purchase the most or owe the most in a selected period. Only customers that have either purchases during the period or a balance at the end of the period will be included. | [Report 111 "Customer - Top 10 List"](../report/111.md) |
|  | Customer - Sales List <small>obsolete Pending 28.0; #if not CLEAN28</small> | View customer sales for a period, for example, to report sales activity to customs and tax authorities. You can choose to include only customers with total sales that exceed a minimum amount. You can also specify whether you want the report to show address details for each customer. | [Report 119 "Customer - Sales List"](../report/119.md) |
|  | Sales Statistics <small>obsolete Pending 28.0; #if not CLEAN28</small> | View customers' total costs, sales, and profits over time, for example, to analyze earnings trends. The report shows amounts for original and adjusted costs, sales, profits, invoice discounts, payment discounts, and profit percentage in three adjustable periods. | [Report 112 "Sales Statistics"](../report/112.md) |
| Finance Reports | Statement | — | [Report 153 "Customer Statement"](../report/153.md) |
|  | Scheduled Statements | Schedule Customer Statements in the Job Queue. |  |
|  | Customer - Balance to Date | — | [Report 121 "Customer - Balance to Date"](../report/121.md) |
|  | Customer - Trial Balance | — | [Report 129 "Customer - Trial Balance"](../report/129.md) |
|  | Customer - Detail Trial Bal. | — | [Report 104 "Customer - Detail Trial Bal."](../report/104.md) |
|  | Customer - Summary Aging | — | [Report 105 "Customer - Summary Aging"](../report/105.md) |
|  | Customer - Detailed Aging | — | [Report 106 "Customer Detailed Aging"](../report/106.md) |
|  | Aged Accounts Receivable (Obsolete) <small>obsolete Pending 28.0; #if not CLEAN28</small> | View an overview of when customer payments are due or overdue, divided into four periods. You must specify the date you want aging calculated from and the length of the period that each column will contain data for. | [Report 120 "Aged Accounts Receivable"](../report/120.md) |
|  | Customer - Payment Receipt | — | [Report 211 "Customer - Payment Receipt"](../report/211.md) |
| Reports | Reminder | Create a new reminder for the customer. | [Report 117 "Reminder"](../report/117.md) |
| General | Customer List <small>obsolete Pending 28.0; #if not CLEAN28</small> | View various kinds of basic information for customers, such as customer posting group, discount group, finance charge and payment information, salesperson, the customer's default currency and credit limit (in LCY), and the customer's current balance (in LCY). | [Report 101 "Customer - List"](../report/101.md) |
|  | Customer Register | — | [Report 103 "Customer Register"](../report/103.md) |
|  | Customer - Top 10 List (Obsolete) <small>obsolete Pending 28.0; #if not CLEAN28</small> | View which customers purchase the most or owe the most in a selected period. Only customers that have either purchases during the period or a balance at the end of the period will be included. | [Report 111 "Customer - Top 10 List"](../report/111.md) |
| Sales | Customer - Order Summary | — | [Report 107 "Customer - Order Summary"](../report/107.md) |
|  | Customer - Order Detail | — | [Report 108 "Customer - Order Detail"](../report/108.md) |
|  | Customer - Sales List <small>obsolete Pending 28.0; #if not CLEAN28</small> | View customer sales for a period, for example, to report sales activity to customs and tax authorities. You can choose to include only customers with total sales that exceed a minimum amount. You can also specify whether you want the report to show address details for each customer. | [Report 119 "Customer - Sales List"](../report/119.md) |
|  | Sales Statistics <small>obsolete Pending 28.0; #if not CLEAN28</small> | View customers' total costs, sales, and profits over time, for example, to analyze earnings trends. The report shows amounts for original and adjusted costs, sales, profits, invoice discounts, payment discounts, and profit percentage in three adjustable periods. | [Report 112 "Sales Statistics"](../report/112.md) |
|  | Customer/Item Sales | — | [Report 113 "Customer/Item Sales"](../report/113.md) |

## Events published

- `SetCaption(var InText: Text)` (integration): Raises an event to allow customization of the customer list page caption.
- `OnAfterGetSelectionFilter(var Customer: Record Customer; var SelectionFilterForCustomer: Text)` (integration): Raises an event after getting the selection filter from the customer list.

## Trigger event subscribers

- OnAfterGetCurrRecordEvent: [Codeunit 1802 "Data Migration Notifier"](../codeunit/1802.md) OnCustomerListGetCurrRec
- OnOpenPageEvent: [Codeunit 1802 "Data Migration Notifier"](../codeunit/1802.md) OnCustomerListOpen, [Codeunit 4306 "SOA Session Filter"](../codeunit/4306.md) SetFiltersOnOpenCustomerPage

## Procedures

- `GetSelectionFilter(): Text`: Gets a filter expression representing the currently selected customers.
- `SetSelection(var Cust: Record Customer)`: Sets the customer record variable to the current page selection.

Plus 3 local procedures.

## Triggers

OnAfterGetCurrRecord, OnInit, OnOpenPage

## Relations

- card page [Page 21 "Customer Card"](../page/21.md)
- source table [Table 18 "Customer"](../table/18.md)

## Pages and codeunits on this table

- [Table 18 "Customer"](../table/18.md) (drill-down page)

## Extended by

- [Page extension 20616 "Customer List BF"](../pageextension/20616.md)
- [Page extension 41018 "Customer List Ext."](../pageextension/41018.md)
- [Page extension 42802 "SL Hist. Customer List"](../pageextension/42802.md)
- [Page extension 4438 "EXR Customer List"](../pageextension/4438.md)
- [Page extension 6451 "Serv. Customer List"](../pageextension/6451.md)
- [Page extension 8052 "Customer List"](../pageextension/8052.md)

## Calls

From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an `Object::"Name"` argument. Interface dispatch and calls through events are not counted, so the list is not complete.

- [Codeunit 1520 "Workflow Event Handling"](../codeunit/1520.md) (2 calls: `SetWorkflowManagementEnabledState → RunWorkflowOnCustomerChangedCode`, `SetWorkflowManagementEnabledState → RunWorkflowOnSendCustomerForApprovalCode`)
- [Codeunit 1535 "Approvals Mgmt."](../codeunit/1535.md) (2 calls: `OnAfterGetCurrRecord → CanCancelApprovalForRecord`, `OnAfterGetCurrRecord → HasOpenApprovalEntries`)
- [Codeunit 5330 "CRM Integration Management"](../codeunit/5330.md) (2 calls: `OnOpenPage → IsCDSIntegrationEnabled`, `OnOpenPage → IsCRMIntegrationEnabled`)
- [Codeunit 1501 "Workflow Management"](../codeunit/1501.md) (1 call: `SetWorkflowManagementEnabledState → EnabledWorkflowExist`)
- [Codeunit 1543 "Workflow Webhook Management"](../codeunit/1543.md) (1 call: `OnAfterGetCurrRecord → GetCanRequestAndCanCancel`)
- [Codeunit 1630 "Office Management"](../codeunit/1630.md) (1 call: `OnOpenPage → IsAvailable`)
- [Codeunit 46 "SelectionFilterManagement"](../codeunit/46.md) (1 call: `GetSelectionFilter → GetSelectionFilterForCustomer`)
- [Codeunit 5331 "CRM Coupling Management"](../codeunit/5331.md) (1 call: `OnAfterGetCurrRecord → IsRecordCoupledToCRM`)
- [Codeunit 7001 "Price Calculation Mgt."](../codeunit/7001.md) (1 call: `OnOpenPage → IsExtendedPriceCalculationEnabled`)
- [Page 7002 "Sales Prices"](../page/7002.md) (1 call: `ShowPrices → (object)`)
- [Page 7004 "Sales Line Discounts"](../page/7004.md) (1 call: `ShowLineDiscounts → (object)`)

## Called by

- [Codeunit 1316 "Top Ten Customers Chart Mgt."](../codeunit/1316.md) (1 call: `DrillDownOtherCustList → (object)`)
- [Codeunit 1319 "Sales by Cust. Grp. Chart Mgt."](../codeunit/1319.md) (1 call: `DrillDown → (object)`)
- [Codeunit 1326 "Top Five Customers Chart Mgt."](../codeunit/1326.md) (1 call: `DrillDownOtherCustList → (object)`)
- [Codeunit 6260 "Sust. ESG Reporting Helper Mgt"](../codeunit/6260.md) (1 call: `DrillDownOnCustomer → (object)`)
- [Page 802 "Online Map Address Selector"](../page/802.md) (1 call: `LoadCustomer → (object)`)

## Recent changes

- 2026-07-30 [#9583 636017 Move Sales report action tooltips to report objects](../../changes/bcapps/9583.md) (main, BC30, refactor)

## Across versions

- Present in: BC23-30
- Changed (declaration) in: BC24-25, BC28

## Documented on Microsoft Learn

- [Analyze data in lists with Copilot (preview)](https://learn.microsoft.com/dynamics365/business-central/analysis-assist)
- [Analyze list page and query data using data analysis](https://learn.microsoft.com/dynamics365/business-central/analysis-mode)
- [Set Up Cash Customers](https://learn.microsoft.com/dynamics365/business-central/finance-how-to-set-up-cash-customers)
- [Register new customers by creating a Customer Card](https://learn.microsoft.com/dynamics365/business-central/sales-how-register-new-customers)
- [Create number series](https://learn.microsoft.com/dynamics365/business-central/ui-create-number-series)

Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).

## Ask your agent

Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: `bcatlas_resolve_node(object_type: "page", object_name: "Customer List")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
