---
id: object/page/9309
type: object
title: Page 9309 "Purchase Credit Memos"
summary: Page 9309 "Purchase Credit Memos" in Base Application (Microsoft.Purchases.Document). 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: 012070f1fe4dde4b6943fdecae7fcd2e68290892642880c86d509008a4878a99
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Purchases/Document/PurchaseCreditMemos.Page.al
    title: src/Layers/W1/BaseApp/Purchases/Document/PurchaseCreditMemos.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/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-record-purchases
    title: Record purchases with purchase invoices
    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/purchasing-how-process-purchase-returns-cancellations
    - https://learn.microsoft.com/dynamics365/business-central/purchasing-how-record-purchases
  objects: []
  features: []
  topics:
    - topic/business-central/analytics-business-intelligence-and-repo/ad-hoc-data-analysis
    - topic/business-central/business-functionality/purchasing
    - 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/9549
object_type: page
object_id: 9309
name: Purchase Credit Memos
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: []
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/purchasing-how-process-purchase-returns-cancellations.md
  - docs/learn-smb-docs/business-central/purchasing-how-record-purchases.md
counts:
  fields: 0
  procedures: 5
  events: 1
  subscribers: 0
  controls: 38
  actions: 25
relations:
  out: 2
  referenced_by: 0
  pages: 0
  extended_by: 1
  event_subscribers: 0
  calls: 6
  called_by: 1
  implements: 0
---

# Page 9309 "Purchase Credit Memos"

> Page 9309 "Purchase Credit Memos" in Base Application (Microsoft.Purchases.Document). 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/PurchaseCreditMemos.Page.al) · facts from BC29

## Properties

| Property | Value |
|---|---|
| Caption | Purchase Credit Memos |
| 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 Cr. Memo No. | [Vendor Cr. Memo 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 location where the items are to be shipped. This field acts as the default location for new lines. You can update the location code for individual lines as needed. |
|  | 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. The program calculates the date using the Payment Terms Code and Document Date fields. |
|  | 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> |
|  | 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> |
|  | Applies-to Doc. Type | [Applies-to Doc. Type](../table/38.md#fields) | Specifies the type of the posted document that this document or journal line will be applied to when you post, for example to register payment. <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 credit memos. |
| FactBoxes | Documents | part [Page 1178 "Doc. Attachment List Factbox"](../page/1178.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 |
|---|---|---|---|
| Credit Memo | 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) |
|  | Vendor | View or edit detailed information about the vendor on the purchase document. | [Page 26 "Vendor Card"](../page/26.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. |  |
| 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 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. |  |
| Sales | Vendor - Top 10 List (Obsolete) <small>obsolete Pending 28.0; #if not CLEAN28</small> | View a list of the vendors from whom you purchase the most or to whom you owe the most. | [Report 311 "Vendor - Top 10 List"](../report/311.md) |
|  | Vendor - Purchase List | — | [Report 309 "Vendor - Purchase List"](../report/309.md) |
|  | Purchase Statistics | — | [Report 312 "Purchase Statistics"](../report/312.md) |
| Finance | Vendor - Balance to Date | — | [Report 321 "Vendor - Balance to Date"](../report/321.md) |
|  | Vendor - Trial Balance | — | [Report 329 "Vendor - Trial Balance"](../report/329.md) |
|  | Vendor - Detail. Trial Balance | — | [Report 304 "Vendor - Detail Trial Balance"](../report/304.md) |
|  | Vendor - Summary Aging (Obsolete) <small>obsolete Pending 28.0; #if not CLEAN28</small> | View, print, or save a summary of the payables owed to each vendor, divided into three time periods. The report can be used to prepare liquidity analyses. | [Report 305 "Vendor - Summary Aging"](../report/305.md) |
|  | Aged Accounts Payable (Obsolete) <small>obsolete Pending 28.0; #if not CLEAN28</small> | View an overview of when your payables to vendors 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 322 "Aged Accounts Payable"](../report/322.md) |
|  | Vendor - Payment Receipt | — | [Report 411 "Vendor - Payment Receipt"](../report/411.md) |

## Events published

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

## Procedures

4 local procedures, no public ones.

## Triggers

OnAfterGetRecord, OnAfterGetCurrRecord, OnOpenPage

## Relations

- card page [Page 52 "Purchase Credit Memo"](../page/52.md)
- source table [Table 38 "Purchase Header"](../table/38.md)

## Extended by

- [Page extension 4419 "EXR Purchase Credit Memos"](../pageextension/4419.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) (5 calls: `PostDocument → IsEnabled`, `PostDocument → ShowPostedConfirmationMessageCode`, `ShowPostedConfirmationMessage → ShowConfirm`, …)
- [Codeunit 1320 "Lines Instruction Mgt."](../codeunit/1320.md) (2 calls: `CheckPurchaseCheckAllLinesHaveQuantityAssigned → PurchaseCheckAllLinesHaveQuantityAssigned`, `PostDocument → PurchaseCheckAllLinesHaveQuantityAssigned`)
- [Codeunit 1535 "Approvals Mgmt."](../codeunit/1535.md) (2 calls: `SetControlAppearance → CanCancelApprovalForRecord`, `SetControlAppearance → HasOpenApprovalEntries`)
- [Codeunit 1543 "Workflow Webhook Management"](../codeunit/1543.md) (1 call: `SetControlAppearance → GetCanRequestAndCanCancel`)
- [Codeunit 1630 "Office Management"](../codeunit/1630.md) (1 call: `OnOpenPage → IsAvailable`)
- [Page 140 "Posted Purchase Credit Memo"](../page/140.md) (1 call: `PostDocument → (object)`)

## Called by

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

## Recent changes

- 2026-08-04 [#9549 636017 Move Purchases report action tooltips to report objects](../../changes/bcapps/9549.md) (main, BC30, refactor)

## Across versions

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

## 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)
- [Process returns or cancellations](https://learn.microsoft.com/dynamics365/business-central/purchasing-how-process-purchase-returns-cancellations)
- [Record purchases with purchase invoices](https://learn.microsoft.com/dynamics365/business-central/purchasing-how-record-purchases)

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