---
id: object/table/981
type: object
title: Table 981 "Payment Registration Buffer"
summary: Table 981 "Payment Registration Buffer" in Base Application (Microsoft.Bank.Payment). 19 fields, 6 public procedures, 4 events. Present since at least BC23, still in BC30, changed in BC24, BC27-28.
tier: official
language: en
tags:
  - table
  - 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: c5a6b34d207e808dfb5bef952672ffa9a893ddae4a5e265e6aa51bbcc9700eed
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Bank/Payment/PaymentRegistrationBuffer.Table.al
    title: src/Layers/W1/BaseApp/Bank/Payment/PaymentRegistrationBuffer.Table.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/ui-let-system-suggest-values
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/general-business-functionality
  localizations: []
  videos: []
  posts: []
  guidelines: []
object_type: table
object_id: 981
name: Payment Registration Buffer
namespace: Microsoft.Bank.Payment
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in:
  - "24"
  - "27"
  - "28"
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids: []
counts:
  fields: 19
  procedures: 16
  events: 4
  subscribers: 0
relations:
  out: 2
  referenced_by: 0
  pages: 2
  extended_by: 0
  event_subscribers: 0
  calls: 0
  called_by: 0
  implements: 0
---

# Table 981 "Payment Registration Buffer"

> Table 981 "Payment Registration Buffer" in Base Application (Microsoft.Bank.Payment). 19 fields, 6 public procedures, 4 events. Present since at least BC23, still in BC30, changed in BC24, BC27-28.

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

Learn documents this table through its pages: [Page 981 "Payment Registration"](../page/981.md) (1 Learn page).

## Properties

| Property | Value |
|---|---|
| Caption | Payment Registration Buffer |
| DataClassification | CustomerContent |

## Fields

Explanation: the field's ToolTip in the code; without one, the ToolTip of a page control bound to the field (marked via the page); without that, its Caption (marked caption) when that differs from the name.

| No. | Name | Type | Explanation | Notes |
|---|---|---|---|---|
| 1 | Ledger Entry No. | Integer | — |  |
| 2 | Source No. | Code[20] | Specifies the number of the source document that the entry originates from. |  |
| 3 | Document Type | Enum "Gen. Journal Document Type" | Specifies the type of document that the payment relates to. | enum [Enum 6 "Gen. Journal Document Type"](../enum/6.md) |
| 4 | Document No. | Code[20] | Specifies the number of the document that the payment relates to. |  |
| 5 | Description | Text[100] | Specifies the invoice transaction that the payment relates to. |  |
| 6 | Due Date | Date | Specifies the payment due date on the related document. |  |
| 7 | Name | Text[100] | Specifies the name of the customer or vendor that the payment relates to. |  |
| 8 | Remaining Amount | Decimal | Specifies the amount that remains to be paid on the document. |  |
| 9 | Payment Made | Boolean | Specifies if you have received or made payment for the document. |  |
| 10 | Date Received | Date | Specifies the date when the payment was made. |  |
| 11 | Amount Received | Decimal | Specifies the amount that is paid in the bank account. |  |
| 12 | Original Remaining Amount | Decimal | — |  |
| 13 | Rem. Amt. after Discount | Decimal | Specifies the remaining amount after the payment discount is deducted. |  |
| 14 | Pmt. Discount Date | Date | Specifies the date on which the amount in the entry must be paid for a payment discount to be granted. |  |
| 15 | Limit Amount Received | Boolean | — |  |
| 16 | Payment Method Code | Code[10] | — |  |
| 17 | Bal. Account Type | enum "Payment Balance Account Type" | — | enum [Enum 96 "Payment Balance Account Type"](../enum/96.md) |
| 18 | Bal. Account No. | Code[20] | — | TableRelation [Table 15 "G/L Account"](../table/15.md), [Table 270 "Bank Account"](../table/270.md) (if ("Bal. Account Type" = const("G/L Account")) "G/L Account" else if ("Bal. Account Type" = const("Bank Account")) "Bank Account") |
| 19 | External Document No. | Code[35] | Specifies a document number that refers to the customer's or vendor's numbering system. |  |

## Keys

- Key1: Ledger Entry No. (clustered)
- Key2: Due Date

## Events published

- `OnPopulateTableOnBeforeInsert(var PaymentRegistrationBuffer: Record "Payment Registration Buffer"; CustLedgerEntry: Record "Cust. Ledger Entry")` (integration): Integration event raised before inserting a payment registration buffer record during table population. Enables custom modifications to buffer data before record insertion.
- `OnPopulateTableOnAfterCustLedgerEntrySetFilters(var CustLedgerEntry: Record "Cust. Ledger Entry"; var PaymentRegistrationBuffer: Record "Payment Registration Buffer")` (integration): Integration event raised after applying filters to customer ledger entries during table population. Enables custom filter modifications for payment registration processing.
- `OnRestoreUserValuesOnBeforeModify(var PaymentRegistrationBuffer: Record "Payment Registration Buffer"; var TempSavePmtRegnBuf: Record "Payment Registration Buffer" temporary)` (integration): Integration event raised before modifying a payment registration buffer record during user value restoration. Enables custom logic before restoring user-entered payment values.
- `OnBeforeGetDueDateStyle(var PaymentRegistrationBuffer: Record "Payment Registration Buffer"; var ReturnValue: Text; var IsHandled: Boolean)` (integration): Integration event raised before determining the due date style for payment registration display. Enables custom styling logic for due date visualization.

## Procedures

- `PopulateTable()`
- `Navigate()`
- `Reload()`
- `GetPmtDiscStyle(): Text`
- `GetDueDateStyle(): Text`
- `GetWarning(): Text`

Plus 6 local procedures.

## Relations

- Bal. Account No.: TableRelation [Table 15 "G/L Account"](../table/15.md) (conditional)
- Bal. Account No.: TableRelation [Table 270 "Bank Account"](../table/270.md) (conditional)

## Pages and codeunits on this table

- [Page 981 "Payment Registration"](../page/981.md) (source table)
- [Page 983 "Payment Registration Details"](../page/983.md) (source table)
- [Codeunit 980 "Payment Registration Mgt."](../codeunit/980.md) (codeunit runs on it)

## Across versions

- Present in: BC23-30
- Changed (declaration) in: BC24, BC27-28

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). 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: "table", object_name: "Payment Registration Buffer")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
