---
id: object/page/9301
type: object
title: Page 9301 "Sales Invoice List"
summary: Page 9301 "Sales Invoice List" in Base Application (Microsoft.Sales.Document). 2 public procedures, 1 events. Present since at least BC23, still in BC30.
tier: official
language: en
tags:
  - page
  - base application
versions:
  introduced: null
  last_changed: null
  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: 4787b45eaf1be17612c6aa7c73c2dba22814d72823f271ba5c9894b7b92f341c
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Sales/Document/SalesInvoiceList.Page.al
    title: src/Layers/W1/BaseApp/Sales/Document/SalesInvoiceList.Page.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/ad-hoc-analysis-finance
    title: Ad-hoc analysis of finance data
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/ad-hoc-analysis-inventory
    title: Ad-hoc analysis of inventory data
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/ad-hoc-analysis-sales
    title: Ad-hoc analysis of sales data
    date: null
    commit: null
    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-use-edocuments
    title: Use e-documents in sales
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/sales-analytics-overview
    title: Sales analytics
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/sales-how-invoice-sales
    title: Invoice sales
    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
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/ad-hoc-analysis-finance
    - https://learn.microsoft.com/dynamics365/business-central/ad-hoc-analysis-inventory
    - https://learn.microsoft.com/dynamics365/business-central/ad-hoc-analysis-sales
    - 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-use-edocuments
    - https://learn.microsoft.com/dynamics365/business-central/sales-analytics-overview
    - https://learn.microsoft.com/dynamics365/business-central/sales-how-invoice-sales
    - https://learn.microsoft.com/dynamics365/business-central/sales-how-register-new-customers
  objects: []
  features: []
  topics:
    - topic/business-central/analytics-business-intelligence-and-repo/ad-hoc-data-analysis
    - topic/business-central/business-functionality/finance/financial-analytics
    - topic/business-central/business-functionality/finance/set-up-and-use-e-documents
    - topic/business-central/business-functionality/inventory/inventory-analytics
    - topic/business-central/business-functionality/sales
    - topic/business-central/business-functionality/sales/sales-analytics
    - 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: []
object_type: page
object_id: 9301
name: Sales Invoice List
caption: Sales Invoices
namespace: Microsoft.Sales.Document
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in: []
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids:
  - docs/learn-smb-docs/business-central/ad-hoc-analysis-finance.md
  - docs/learn-smb-docs/business-central/ad-hoc-analysis-inventory.md
  - docs/learn-smb-docs/business-central/ad-hoc-analysis-sales.md
  - 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-use-edocuments.md
  - docs/learn-smb-docs/business-central/sales-analytics-overview.md
  - docs/learn-smb-docs/business-central/sales-how-invoice-sales.md
  - docs/learn-smb-docs/business-central/sales-how-register-new-customers.md
counts:
  fields: 0
  procedures: 5
  events: 1
  subscribers: 0
  controls: 45
  actions: 28
relations:
  out: 2
  referenced_by: 0
  pages: 0
  extended_by: 3
  event_subscribers: 0
  calls: 6
  called_by: 1
  implements: 0
---

# Page 9301 "Sales Invoice List"

> Page 9301 "Sales Invoice List" in Base Application (Microsoft.Sales.Document). 2 public procedures, 1 events. Present since at least BC23, still in BC30.

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

## Properties

| Property | Value |
|---|---|
| Caption | Sales Invoices |
| SourceTable | Sales Header |
| PageType | List |
| UsageCategory | Lists |
| ApplicationArea | Basic, Suite |

## 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/36.md#fields) | Specifies the number of the involved entry or record, according to the specified number series. |
|  | Sell-to Customer No. | [Sell-to Customer No.](../table/36.md#fields) | Specifies the number of the customer. |
|  | Sell-to Customer Name | [Sell-to Customer Name](../table/36.md#fields) | Specifies the name of the customer. |
|  | External Document No. | [External Document No.](../table/36.md#fields) | Specifies a document number that refers to the customer's or vendor's numbering system. <small>from the table field</small> |
|  | Sell-to Post Code | [Sell-to Post Code](../table/36.md#fields) | Specifies the postal code of the customer's main address. <small>from the table field</small> |
|  | Sell-to Country/Region Code | [Sell-to Country/Region Code](../table/36.md#fields) | Specifies the country/region code of the customer's main address. <small>from the table field</small> |
|  | Sell-to Contact | [Sell-to Contact](../table/36.md#fields) | Specifies the name of the contact person at the customer's main address. <small>from the table field</small> |
|  | Bill-to Customer No. | [Bill-to Customer No.](../table/36.md#fields) | Specifies the number of the customer that you send or sent the invoice or credit memo to. <small>from the table field</small> |
|  | Bill-to Name | [Bill-to Name](../table/36.md#fields) | Specifies the name of the customer that you send or sent the invoice or credit memo to. <small>from the table field</small> |
|  | Bill-to Post Code | [Bill-to Post Code](../table/36.md#fields) | Specifies the postal code of the customer's billing address. <small>from the table field</small> |
|  | Bill-to Country/Region Code | [Bill-to Country/Region Code](../table/36.md#fields) | Specifies the country/region code of the customer's billing address. <small>from the table field</small> |
|  | Bill-to Contact | [Bill-to Contact](../table/36.md#fields) | Specifies the name of the contact person at the customer's billing address. <small>from the table field</small> |
|  | Ship-to Code | [Ship-to Code](../table/36.md#fields) | Specifies a code for an alternate shipment address if you want to ship to another address than the one that has been entered automatically. This field is also used in case of drop shipment. <small>from the table field</small> |
|  | Ship-to Name | [Ship-to Name](../table/36.md#fields) | Specifies the name of the customer at the address that the items are shipped to. <small>from the table field</small> |
|  | Ship-to Post Code | [Ship-to Post Code](../table/36.md#fields) | Specifies the postal code of the address that the items are shipped to. <small>from the table field</small> |
|  | Ship-to Country/Region Code | [Ship-to Country/Region Code](../table/36.md#fields) | Specifies the country/region code of the address that the items are shipped to. <small>from the table field</small> |
|  | Ship-to Contact | [Ship-to Contact](../table/36.md#fields) | Specifies the name of the contact person at the address that the items are shipped to. <small>from the table field</small> |
|  | Posting Date | [Posting Date](../table/36.md#fields) | Specifies the date when the posting of the sales document will be recorded. <small>from the table field</small> |
|  | Shortcut Dimension 1 Code | [Shortcut Dimension 1 Code](../table/36.md#fields) | Specifies the code for Shortcut Dimension 1, which is one of two global dimension codes that you set up in the General Ledger Setup window. <small>from the table field</small> |
|  | Shortcut Dimension 2 Code | [Shortcut Dimension 2 Code](../table/36.md#fields) | Specifies the code for Shortcut Dimension 2, which is one of two global dimension codes that you set up in the General Ledger Setup window. <small>from the table field</small> |
|  | Location Code | [Location Code](../table/36.md#fields) | Specifies the code for the location from where the items are shipped. When you select the customer and the customer has a location assigned, the value is taken from the Customer card. If the customer has no location, but a Responsibility Center is populated, the location code is taken from the Respo... <small>from the table field</small> |
|  | Quote No. | [Quote No.](../table/36.md#fields) | Specifies the number of the sales quote that the sales invoice was created from. You can track the number to sales quote documents that you have printed, saved, or emailed. |
|  | Salesperson Code | [Salesperson Code](../table/36.md#fields) | Specifies the name of the sales person who is assigned to the customer. |
|  | Assigned User ID | [Assigned User ID](../table/36.md#fields) | Specifies the ID of the user who is responsible for the document. <small>from the table field</small> |
|  | Currency Code | [Currency Code](../table/36.md#fields) | Specifies the currency of amounts on the sales document. <small>from the table field</small> |
|  | Document Date | [Document Date](../table/36.md#fields) | Specifies the date when the related document was created. <small>from the table field</small> |
|  | Campaign No. | [Campaign No.](../table/36.md#fields) | Specifies the number of the campaign that the document is linked to. |
|  | Status | [Status](../table/36.md#fields) | Specifies whether the document is open, waiting to be approved, has been invoiced for prepayment, or has been released to the next stage of processing. <small>from the table field</small> |
|  | Payment Terms Code | [Payment Terms Code](../table/36.md#fields) | Specifies a formula that calculates the payment due date, payment discount date, and payment discount amount. <small>from the table field</small> |
|  | Due Date | [Due Date](../table/36.md#fields) | Specifies when the sales invoice must be paid. <small>from the table field</small> |
|  | Payment Discount % | [Payment Discount %](../table/36.md#fields) | Specifies the payment discount percentage granted if the customer pays on or before the date entered in the Pmt. Discount Date field. |
|  | Shipment Method Code | [Shipment Method Code](../table/36.md#fields) | Specifies the delivery conditions of the related shipment, such as free on board (FOB). <small>from the table field</small> |
|  | Shipping Agent Code | [Shipping Agent Code](../table/36.md#fields) | Specifies the code for the shipping agent who is transporting the items. <small>from the table field</small> |
|  | Shipping Agent Service Code | [Shipping Agent Service Code](../table/36.md#fields) | Specifies the code for the service, such as a one-day delivery, that is offered by the shipping agent. <small>from the table field</small> |
|  | Package Tracking No. | [Package Tracking No.](../table/36.md#fields) | Specifies the shipping agent's package number. <small>from the table field</small> |
|  | Shipment Date | [Shipment Date](../table/36.md#fields) | Specifies when items on the document are shipped or were shipped. A shipment date is usually calculated from a requested delivery date plus lead time. <small>from the table field</small> |
|  | Job Queue Status | [Job Queue Status](../table/36.md#fields) | Specifies the status of a job queue entry or task that handles the posting of sales invoices. |
|  | Amount | [Amount](../table/36.md#fields) | Specifies the sum of amounts on all the lines in the document. This will include invoice discounts. <small>from the table field</small> |
|  | Amount Including VAT | [Amount Including VAT](../table/36.md#fields) | Specifies the sum of amounts, including VAT, on all the lines in the document. This will include invoice discounts. <small>from the table field</small> |
|  | Posting Description | [Posting Description](../table/36.md#fields) | Specifies additional posting information for the document. After you post the document, the description can add detail to vendor and customer ledger entries. <small>from the table field</small> |
|  | Your Reference | [Your Reference](../table/36.md#fields) | Specifies the customer's reference. The content will be printed on sales documents. <small>from the table field</small> |
| FactBoxes | Documents | part [Page 1178 "Doc. Attachment List Factbox"](../page/1178.md) | — |
|  | Control1902018507 | part [Page 9082 "Customer Statistics FactBox"](../page/9082.md) | — |
|  | Control1900316107 | part [Page 9084 "Customer Details FactBox"](../page/9084.md) | — |
|  | IncomingDocAttachFactBox | part [Page 193 "Incoming Doc. Attach. FactBox"](../page/193.md) | — |

## Actions

| Group | Action | ToolTip | Runs |
|---|---|---|---|
| Invoice | Statistics | View statistical information, such as the value of posted entries, for the record. | [Page 160 "Sales Statistics"](../page/160.md) |
|  | Customer Statistics | View statistical information, such as the value of posted entries, for the sell-to customer on the sales document. | [Page 151 "Customer Statistics"](../page/151.md) |
|  | Comments | View or add comments for the record. | [Page 67 "Sales Comment Sheet"](../page/67.md) |
|  | Dimensions | View or edit dimensions, such as area, project, or department, that you can assign to sales and purchase documents to distribute costs and analyze transaction history. |  |
|  | 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. |  |
|  | Customer | View or edit detailed information about the customer. | [Page 21 "Customer Card"](../page/21.md) |
| Navigation | Posted Sales Invoices | Open the list of posted sales invoices to view details or make adjustments. | [Page 143 "Posted Sales Invoices"](../page/143.md) |
| Release | Release | Release the document to the next stage of processing. You must reopen the document before you can make changes to it. |  |
|  | Reopen | Reopen the document to change it after it has been approved. Approved documents have the Released status and must be opened before they can be changed. |  |
| Request Approval | Send Approval Request | Request approval of the document. |  |
|  | Cancel Approval Request | Cancel the approval request. |  |
| Posting | Test Report | View a test report so that you can find and correct any errors before you perform the actual posting of the journal or document. |  |
|  | Post | Finalize the document or journal by posting the amounts and quantities to the related accounts in your company books. |  |
|  | Post Batch | Post several documents at once. A report request window opens where you can specify which documents to post. |  |
|  | Post and Send | Finalize and prepare to send the document according to the customer's sending profile, such as attached to an email. The Send document to window opens first so you can confirm or select a sending profile. |  |
|  | Remove From Job Queue | Remove the scheduled processing of this record from the job queue. |  |
|  | Preview Posting | Review the different types of entries that will be created when you post the document or journal. |  |
| Finance Reports | Statement | — | [Report 153 "Customer Statement"](../report/153.md) |
|  | 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) |
| 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 the customer's total cost, sale, and profit over time, for example, to analyze earnings trends. The report shows amounts for original and adjusted cost, sales, profit, invoice discount, payment discount, and profit percentage in three adjustable periods. | [Report 112 "Sales Statistics"](../report/112.md) |

## Events published

- `OnPostDocumentBeforeNavigateAfterPosting(var SalesHeader: Record "Sales Header"; var PostingCodeunitID: Integer; var IsHandled: Boolean)` (integration)

## Procedures

- `ShowPreview()`: Shows a preview of the posting result for the selected invoice.
- `PostDocument(PostingCodeunitID: Integer)` (protected)

Plus 2 local procedures.

## Triggers

OnAfterGetCurrRecord, OnAfterGetRecord, OnOpenPage

## Relations

- card page [Page 43 "Sales Invoice"](../page/43.md)
- source table [Table 36 "Sales Header"](../table/36.md)

## Extended by

- [Page extension 30112 "Shpfy Sales Invoice List"](../pageextension/30112.md)
- [Page extension 4414 "EXR Sales Invoice List"](../pageextension/4414.md)
- [Page extension 8058 "Sales Invoice List"](../pageextension/8058.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 1330 "Instruction Mgt."](../codeunit/1330.md) (3 calls: `ShowPostedConfirmationMessage → ShowConfirm`, `ShowPostedConfirmationMessage → ShowPostedConfirmationMessageCode`, `ShowPostedConfirmationMessage → ShowPostedDocument`)
- [Codeunit 1535 "Approvals Mgmt."](../codeunit/1535.md) (2 calls: `SetControlAppearance → CanCancelApprovalForRecord`, `SetControlAppearance → HasOpenApprovalEntries`)
- [Codeunit 81 "Sales-Post (Yes/No)"](../codeunit/81.md) (2 calls: `ShowPreview → MessageIfPostingPreviewMultipleDocuments`, `ShowPreview → Preview`)
- [Codeunit 1320 "Lines Instruction Mgt."](../codeunit/1320.md) (1 call: `PostDocument → SalesCheckAllLinesHaveQuantityAssigned`)
- [Codeunit 1543 "Workflow Webhook Management"](../codeunit/1543.md) (1 call: `SetControlAppearance → GetCanRequestAndCanCancel`)
- [Codeunit 9179 "Application Area Mgmt. Facade"](../codeunit/9179.md) (1 call: `PostDocument → IsFoundationEnabled`)

## Called by

- [Codeunit 1302 "Customer Mgt."](../codeunit/1302.md) (1 call: `DrillDownOnUnpostedInvoices → (object)`)

## Across versions

- Present in: BC23-30
- Changed (declaration) in: none

## Documented on Microsoft Learn

- [Ad-hoc analysis of finance data](https://learn.microsoft.com/dynamics365/business-central/ad-hoc-analysis-finance)
- [Ad-hoc analysis of inventory data](https://learn.microsoft.com/dynamics365/business-central/ad-hoc-analysis-inventory)
- [Ad-hoc analysis of sales data](https://learn.microsoft.com/dynamics365/business-central/ad-hoc-analysis-sales)
- [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)
- [Use e-documents in sales](https://learn.microsoft.com/dynamics365/business-central/finance-how-use-edocuments)
- [Sales analytics](https://learn.microsoft.com/dynamics365/business-central/sales-analytics-overview)
- [Invoice sales](https://learn.microsoft.com/dynamics365/business-central/sales-how-invoice-sales)
- [Register new customers by creating a Customer Card](https://learn.microsoft.com/dynamics365/business-central/sales-how-register-new-customers)

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: "Sales Invoice List")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
