---
id: object/page/9308
type: object
title: Page 9308 "Purchase Invoices"
summary: Page 9308 "Purchase Invoices" in Base Application (Microsoft.Purchases.Document). 2 public procedures, 1 events. Present since at least BC23, still in BC30, changed in BC27.
tier: official
language: en
tags:
  - page
  - base application
versions:
  introduced: null
  last_changed: "27"
  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: 2d5e9c5f6bdbeb319ba74b2ab9d670b74092c48c82f4f998f84fa5160e72b1e0
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Purchases/Document/PurchaseInvoices.Page.al
    title: src/Layers/W1/BaseApp/Purchases/Document/PurchaseInvoices.Page.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/finance-how-to-settle-purchase-invoices-promptly
    title: Settle purchase invoices promptly
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/finance-how-use-edocuments-purchase
    title: Use E-Documents in the purchase process
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/match-purchase-invoice-drafts-to-orders
    title: Match Purchase Invoice Drafts to Purchase Orders
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/purchasing-how-process-purchase-returns-cancellations
    title: Process returns or cancellations
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/purchasing-how-purchase-products-sale
    title: Purchase items for a sale
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/purchasing-how-record-purchases
    title: Record purchases with purchase invoices
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/purchasing-how-to-combine-receipts
    title: Combine Receipts or PO Lines on a Single Invoice
    date: null
    commit: null
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/finance-how-to-settle-purchase-invoices-promptly
    - https://learn.microsoft.com/dynamics365/business-central/finance-how-use-edocuments-purchase
    - https://learn.microsoft.com/dynamics365/business-central/match-purchase-invoice-drafts-to-orders
    - https://learn.microsoft.com/dynamics365/business-central/purchasing-how-process-purchase-returns-cancellations
    - https://learn.microsoft.com/dynamics365/business-central/purchasing-how-purchase-products-sale
    - https://learn.microsoft.com/dynamics365/business-central/purchasing-how-record-purchases
    - https://learn.microsoft.com/dynamics365/business-central/purchasing-how-to-combine-receipts
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/finance/manage-payables/make-payments
    - topic/business-central/business-functionality/finance/set-up-and-use-e-documents
    - topic/business-central/business-functionality/purchasing
  localizations:
    - localization/ru
  videos: []
  posts: []
  guidelines: []
object_type: page
object_id: 9308
name: Purchase Invoices
namespace: Microsoft.Purchases.Document
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in:
  - "27"
source_major: "29"
obsolete: null
countries:
  - ru
ms_search_form_ids:
  - docs/learn-smb-docs/business-central/finance-how-to-settle-purchase-invoices-promptly.md
  - docs/learn-smb-docs/business-central/finance-how-use-edocuments-purchase.md
  - docs/learn-smb-docs/business-central/match-purchase-invoice-drafts-to-orders.md
  - docs/learn-smb-docs/business-central/purchasing-how-process-purchase-returns-cancellations.md
  - docs/learn-smb-docs/business-central/purchasing-how-purchase-products-sale.md
  - docs/learn-smb-docs/business-central/purchasing-how-record-purchases.md
  - docs/learn-smb-docs/business-central/purchasing-how-to-combine-receipts.md
counts:
  fields: 0
  procedures: 5
  events: 1
  subscribers: 0
  controls: 42
  actions: 16
relations:
  out: 2
  referenced_by: 0
  pages: 0
  extended_by: 2
  event_subscribers: 0
  calls: 5
  called_by: 1
  implements: 0
---

# Page 9308 "Purchase Invoices"

> Page 9308 "Purchase Invoices" in Base Application (Microsoft.Purchases.Document). 2 public procedures, 1 events. Present since at least BC23, still in BC30, changed in BC27.

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

## Properties

| Property | Value |
|---|---|
| Caption | Purchase Invoices |
| SourceTable | Purchase 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/38.md#fields) | Specifies the number of the involved entry or record, according to the specified number series. |
|  | Buy-from Vendor No. | [Buy-from Vendor No.](../table/38.md#fields) | Specifies the name of the vendor who delivered the items. |
|  | Order Address Code | [Order Address Code](../table/38.md#fields) | Specifies the order address of the related vendor. <small>from the table field</small> |
|  | Buy-from Vendor Name | [Buy-from Vendor Name](../table/38.md#fields) | Specifies the name of the vendor who delivered the items. |
|  | Vendor Authorization No. | [Vendor Authorization No.](../table/38.md#fields) | Specifies the compensation agreement identification number, sometimes referred to as the RMA No. (Returns Materials Authorization). <small>from the table field</small> |
|  | Vendor Invoice No. | [Vendor Invoice No.](../table/38.md#fields) | Specifies the document number of the original document you received from the vendor. You can require the document number for posting, or let it be optional. By default, it's required, so that this document references the original. Making document numbers optional removes a step from the posting proc... <small>from the table field</small> |
|  | Buy-from Post Code | [Buy-from Post Code](../table/38.md#fields) | Specifies the post code of the vendor who delivered the items. <small>from the table field</small> |
|  | Buy-from Country/Region Code | [Buy-from Country/Region Code](../table/38.md#fields) | Specifies the city of the vendor who delivered the items. <small>from the table field</small> |
|  | Buy-from Contact | [Buy-from Contact](../table/38.md#fields) | Specifies the name of the contact person at the vendor who delivered the items. <small>from the table field</small> |
|  | Pay-to Vendor No. | [Pay-to Vendor No.](../table/38.md#fields) | Specifies the number of the vendor that you received the invoice from. <small>from the table field</small> |
|  | Pay-to Name | [Pay-to Name](../table/38.md#fields) | Specifies the name of the vendor who you received the invoice from. <small>from the table field</small> |
|  | Pay-to Post Code | [Pay-to Post Code](../table/38.md#fields) | Specifies the post code of the vendor that you received the invoice from. <small>from the table field</small> |
|  | Pay-to Country/Region Code | [Pay-to Country/Region Code](../table/38.md#fields) | Specifies the country/region code of the address. <small>from the table field</small> |
|  | Pay-to Contact | [Pay-to Contact](../table/38.md#fields) | Specifies the name of the person to contact about an invoice from this vendor. <small>from the table field</small> |
|  | Ship-to Code | [Ship-to Code](../table/38.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/38.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/38.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/38.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/38.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/38.md#fields) | Specifies the date when the posting of the purchase document will be recorded. <small>from the table field</small> |
|  | Shortcut Dimension 1 Code | [Shortcut Dimension 1 Code](../table/38.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/38.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/38.md#fields) | Specifies the code for the location where the items are to be received. When you select the vendor and the vendor has a location assigned, the value is taken from the Vendor card. If the vendor has no location, but a Responsibility Center is populated, the location code is taken from the Responsibil... <small>from the table field</small> |
|  | Purchaser Code | [Purchaser Code](../table/38.md#fields) | Specifies which purchaser is assigned to the vendor. <small>from the table field</small> |
|  | Assigned User ID | [Assigned User ID](../table/38.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/38.md#fields) | Specifies the code of the currency of the amounts on the purchase lines. <small>from the table field</small> |
|  | Document Date | [Document Date](../table/38.md#fields) | Specifies the date when the related document was created. <small>from the table field</small> |
|  | Status | [Status](../table/38.md#fields) | Specifies whether the record is open, waiting to be approved, invoiced for prepayment, or released to the next stage of processing. <small>from the table field</small> |
|  | Payment Terms Code | [Payment Terms Code](../table/38.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/38.md#fields) | Specifies when the invoice is due. |
|  | Payment Discount % | [Payment Discount %](../table/38.md#fields) | Specifies the payment discount percent granted if payment is made on or before the date in the Pmt. Discount Date field. <small>from the table field</small> |
|  | Payment Method Code | [Payment Method Code](../table/38.md#fields) | Specifies how to make payment, such as with bank transfer, cash, or check. <small>from the table field</small> |
|  | Shipment Method Code | [Shipment Method Code](../table/38.md#fields) | Specifies the delivery conditions of the related shipment, such as free on board (FOB). <small>from the table field</small> |
|  | Requested Receipt Date | [Requested Receipt Date](../table/38.md#fields) | Specifies the date that you want the vendor to deliver your order. The field is used to calculate the latest date you can order, as follows: requested receipt date - lead time calculation = order date. If you do not need delivery on a specific date, you can leave the field blank. |
|  | Your Reference | [Your Reference](../table/38.md#fields) | Specifies the vendor's reference. <small>from the table field</small> |
|  | Job Queue Status | [Job Queue Status](../table/38.md#fields) | Specifies the status of a job queue entry that handles the posting of purchase invoices. |
|  | Amount | [Amount](../table/38.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/38.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> |
| FactBoxes | Documents | part [Page 1178 "Doc. Attachment List Factbox"](../page/1178.md) | — |
|  | PowerBIEmbeddedReportPart | part [Page 6325 "Power BI Embedded Report Part"](../page/6325.md) | — |
|  | IncomingDocAttachFactBox | part [Page 193 "Incoming Doc. Attach. FactBox"](../page/193.md) | — |
|  | Control1901138007 | part [Page 9093 "Vendor Details FactBox"](../page/9093.md) | — |

## Actions

| Group | Action | ToolTip | Runs |
|---|---|---|---|
| Invoice | Statistics | View statistical information, such as the value of posted entries, for the record. | [Page 161 "Purchase Statistics"](../page/161.md) |
|  | Vendor Statistics | View statistical information, such as the value of posted entries, for the buy-from vendor on the purchase document. | [Page 152 "Vendor Statistics"](../page/152.md) |
|  | Comments | View or add comments for the record. | [Page 66 "Purch. Comment Sheet"](../page/66.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. |  |
| Invoice | 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. |  |
|  | Vendor | View or edit detailed information about the vendor on the purchase document. | [Page 26 "Vendor Card"](../page/26.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 | Post | Finalize the document or journal by posting the amounts and quantities to the related accounts in your company books. |  |
|  | Preview Posting | Review the different types of entries that will be created when you post the document or journal. |  |
|  | 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 and Print | Finalize and print the document or journal. The values and quantities are posted to the related accounts. |  |
|  | Post Batch | Post several documents at once. A report request window opens where you can specify which documents to post. |  |
|  | Remove From Job Queue | Remove the scheduled processing of this record from the job queue. |  |

## Events published

- `OnPostBeforeNavigateAfterPosting(var PurchaseHeader: Record "Purchase Header"; var PostingCodeunitID: Integer; var IsHandled: Boolean)` (integration)

## Procedures

- `Post(PostingCodeunitID: Integer)`
- `VerifyTotal(PurchaseHeader: Record "Purchase Header")`

Plus 2 local procedures.

## Triggers

OnAfterGetRecord, OnAfterGetCurrRecord, OnInit, OnOpenPage

## Relations

- card page [Page 51 "Purchase Invoice"](../page/51.md)
- source table [Table 38 "Purchase Header"](../table/38.md)

## Extended by

- [Page extension 3309 "PA Purchase Invoice List"](../pageextension/3309.md)
- [Page extension 6100 "E-Doc. Purchase Invoices"](../pageextension/6100.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 1320 "Lines Instruction Mgt."](../codeunit/1320.md) (1 call: `Post → PurchaseCheckAllLinesHaveQuantityAssigned`)
- [Codeunit 1543 "Workflow Webhook Management"](../codeunit/1543.md) (1 call: `SetControlAppearance → GetCanRequestAndCanCancel`)
- [Codeunit 9179 "Application Area Mgmt. Facade"](../codeunit/9179.md) (1 call: `Post → IsFoundationEnabled`)

## Called by

- [Codeunit 1312 "Vendor Mgt."](../codeunit/1312.md) (1 call: `DrillDownOnOutstandingInvoices → (object)`)

## Across versions

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

## Countries that replace it

[RU](../../localizations/ru.md)

## Documented on Microsoft Learn

- [Settle purchase invoices promptly](https://learn.microsoft.com/dynamics365/business-central/finance-how-to-settle-purchase-invoices-promptly)
- [Use E-Documents in the purchase process](https://learn.microsoft.com/dynamics365/business-central/finance-how-use-edocuments-purchase)
- [Match Purchase Invoice Drafts to Purchase Orders](https://learn.microsoft.com/dynamics365/business-central/match-purchase-invoice-drafts-to-orders)
- [Process returns or cancellations](https://learn.microsoft.com/dynamics365/business-central/purchasing-how-process-purchase-returns-cancellations)
- [Purchase items for a sale](https://learn.microsoft.com/dynamics365/business-central/purchasing-how-purchase-products-sale)
- [Record purchases with purchase invoices](https://learn.microsoft.com/dynamics365/business-central/purchasing-how-record-purchases)
- [Combine Receipts or PO Lines on a Single Invoice](https://learn.microsoft.com/dynamics365/business-central/purchasing-how-to-combine-receipts)

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