---
id: object/table/92
type: object
title: Table 92 "Customer Posting Group"
summary: Table 92 "Customer Posting Group" in Base Application (Microsoft.Sales.Customer). 17 fields, 11 public procedures, 1 events. Present since at least BC23, still in BC30, changed in BC24, BC26, BC28.
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: de7575d9d8934860c6a52bed57020683ca90f61c151340d528f1c72a50a56924
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Sales/Customer/CustomerPostingGroup.Table.al
    title: src/Layers/W1/BaseApp/Sales/Customer/CustomerPostingGroup.Table.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/finance-how-enable-application-ledger-entries-different-currencies
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/set-up-business-central/set-up-finance
  localizations:
    - localization/au
    - localization/ca
    - localization/es
    - localization/it
    - localization/mx
    - localization/nz
    - localization/ru
    - localization/us
  videos: []
  posts: []
  guidelines: []
object_type: table
object_id: 92
name: Customer Posting Group
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"
  - "26"
  - "28"
source_major: "29"
obsolete: null
countries:
  - au
  - ca
  - es
  - it
  - mx
  - nz
  - ru
  - us
ms_search_form_ids: []
counts:
  fields: 17
  procedures: 16
  events: 1
  subscribers: 0
relations:
  out: 15
  referenced_by: 37
  pages: 2
  extended_by: 0
  event_subscribers: 0
  calls: 2
  called_by: 0
  implements: 0
---

# Table 92 "Customer Posting Group"

> Table 92 "Customer Posting Group" in Base Application (Microsoft.Sales.Customer). 17 fields, 11 public procedures, 1 events. Present since at least BC23, still in BC30, changed in BC24, BC26, BC28.

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

Learn documents this table through its pages: [Page 148 "Customer Posting Group Card"](../page/148.md) (1 Learn page).

## Properties

| Property | Value |
|---|---|
| Caption | Customer Posting Group |
| 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 | Code | Code[20] | Specifies the identifier for the customer posting group. This is what you choose when you assign the group to an entity or document. | NotBlank |
| 2 | Receivables Account | Code[20] | Specifies the general ledger account to use when you post receivables from customers in this posting group. | TableRelation [Table 15 "G/L Account"](../table/15.md) (G/L Account) |
| 7 | Service Charge Acc. | Code[20] | Specifies the general ledger account to use when you post service charges for customers in this posting group. | TableRelation [Table 15 "G/L Account"](../table/15.md) (G/L Account) |
| 8 | Payment Disc. Debit Acc. | Code[20] | Specifies the general ledger account to use when you post payment discounts granted to customers in this posting group. | TableRelation [Table 15 "G/L Account"](../table/15.md) (G/L Account) |
| 9 | Invoice Rounding Account | Code[20] | Specifies the general ledger account to use when you post amounts that result from invoice rounding when you post transactions for customers. | TableRelation [Table 15 "G/L Account"](../table/15.md) (G/L Account) |
| 10 | Additional Fee Account | Code[20] | Specifies the general ledger account to use when you post additional fees from reminders and finance charge memos for customers in this posting group. | TableRelation [Table 15 "G/L Account"](../table/15.md) (G/L Account) |
| 11 | Interest Account | Code[20] | Specifies the general ledger account to use when you post interest from reminders and finance charge memos for customers in this posting group. | TableRelation [Table 15 "G/L Account"](../table/15.md) (G/L Account) |
| 12 | Debit Curr. Appln. Rndg. Acc. | Code[20] | Specifies the general ledger account to use when you post rounding differences. These differences can occur when you apply entries in different currencies to one another. | TableRelation [Table 15 "G/L Account"](../table/15.md) (G/L Account) |
| 13 | Credit Curr. Appln. Rndg. Acc. | Code[20] | Specifies the general ledger account to use when you post rounding differences. These differences can occur when you apply entries in different currencies to one another. | TableRelation [Table 15 "G/L Account"](../table/15.md) (G/L Account) |
| 14 | Debit Rounding Account | Code[20] | Specifies the general ledger account to use when you post rounding differences from a remaining amount. | TableRelation [Table 15 "G/L Account"](../table/15.md) (G/L Account) |
| 15 | Credit Rounding Account | Code[20] | Specifies the general ledger account to use when you post rounding differences from a remaining amount. | TableRelation [Table 15 "G/L Account"](../table/15.md) (G/L Account) |
| 16 | Payment Disc. Credit Acc. | Code[20] | Specifies the general ledger account to use when you post reductions in payment discounts granted to customers in this posting group. | TableRelation [Table 15 "G/L Account"](../table/15.md) (G/L Account) |
| 17 | Payment Tolerance Debit Acc. | Code[20] | Specifies the general ledger account to use when you post payment tolerance and payments for sales. This applies to this particular combination of business group and product group. | TableRelation [Table 15 "G/L Account"](../table/15.md) (G/L Account) |
| 18 | Payment Tolerance Credit Acc. | Code[20] | Specifies the general ledger account to use when you post payment tolerance and payments for sales. This applies to this particular combination of business group and product group. | TableRelation [Table 15 "G/L Account"](../table/15.md) (G/L Account) |
| 19 | Add. Fee per Line Account | Code[20] | Specifies the general ledger account that additional fees are posted to. | TableRelation [Table 15 "G/L Account"](../table/15.md) (G/L Account) |
| 20 | Description | Text[100] | Specifies the description for the customer posting group. |  |
| 21 | View All Accounts on Lookup | Boolean | Specifies that all possible accounts are shown when you look up from a field. If the check box is not selected, then only accounts related to the involved account category are shown. |  |

## Keys

- Key1: Code (clustered)

## Events published

- `OnAfterGetReceivablesAccount(var CustomerPostingGroup: Record "Customer Posting Group"; var Result: Code[20])` (integration): Raises an event after getting the receivables account to allow customization of the returned account.

## Procedures

- `GetReceivablesAccount(): Code[20]`: Gets the receivables G/L account for posting customer balances.
- `GetPmtDiscountAccount(Debit: Boolean): Code[20]`: Gets the payment discount G/L account for debit or credit postings.
- `GetPmtToleranceAccount(Debit: Boolean): Code[20]`: Gets the payment tolerance G/L account for debit or credit postings.
- `GetRoundingAccount(Debit: Boolean): Code[20]`: Gets the rounding G/L account for debit or credit postings.
- `GetApplRoundingAccount(Debit: Boolean): Code[20]`: Gets the application rounding G/L account for currency adjustments.
- `GetInvRoundingAccount(): Code[20]`: Gets the invoice rounding G/L account and validates its posting group.
- `GetServiceChargeAccount(): Code[20]`: Gets the service charge G/L account for posting finance charge service fees.
- `GetAdditionalFeeAccount(): Code[20]`: Gets the additional fee G/L account for posting reminder and finance charge fees.
- `GetAddFeePerLineAccount(): Code[20]`: Gets the additional fee per line G/L account for posting line-based reminder fees.
- `GetInterestAccount(): Code[20]`: Gets the interest G/L account for posting finance charge interest.
- `SetAccountVisibility(var PmtToleranceVisible: Boolean; var PmtDiscountVisible: Boolean; var InvRoundingVisible: Boolean; var ApplnRoundingVisible: Boolean)`: Sets visibility flags for optional posting group account fields based on setup.

Plus 4 local procedures.

## Triggers

OnDelete

## Relations

- lookup page [Page 110 "Customer Posting Groups"](../page/110.md)
- Add. Fee per Line Account: TableRelation [Table 15 "G/L Account"](../table/15.md)
- Additional Fee Account: TableRelation [Table 15 "G/L Account"](../table/15.md)
- Credit Curr. Appln. Rndg. Acc.: TableRelation [Table 15 "G/L Account"](../table/15.md)
- Credit Rounding Account: TableRelation [Table 15 "G/L Account"](../table/15.md)
- Debit Curr. Appln. Rndg. Acc.: TableRelation [Table 15 "G/L Account"](../table/15.md)
- Debit Rounding Account: TableRelation [Table 15 "G/L Account"](../table/15.md)
- Interest Account: TableRelation [Table 15 "G/L Account"](../table/15.md)
- Invoice Rounding Account: TableRelation [Table 15 "G/L Account"](../table/15.md)
- Payment Disc. Credit Acc.: TableRelation [Table 15 "G/L Account"](../table/15.md)
- Payment Disc. Debit Acc.: TableRelation [Table 15 "G/L Account"](../table/15.md)
- Payment Tolerance Credit Acc.: TableRelation [Table 15 "G/L Account"](../table/15.md)
- Payment Tolerance Debit Acc.: TableRelation [Table 15 "G/L Account"](../table/15.md)
- Receivables Account: TableRelation [Table 15 "G/L Account"](../table/15.md)
- Service Charge Acc.: TableRelation [Table 15 "G/L Account"](../table/15.md)

## Referenced by

37 fields in 36 objects relate to this table (TableRelation or CalcFormula).

- [Table 960 "Alt. Customer Posting Group"](../table/960.md): Alt. Customer Posting Group, Customer Posting Group
- [Table 110 "Sales Shipment Header"](../table/110.md): Customer Posting Group
- [Table 112 "Sales Invoice Header"](../table/112.md): Customer Posting Group
- [Table 114 "Sales Cr.Memo Header"](../table/114.md): Customer Posting Group
- [Table 1381 "Customer Templ."](../table/1381.md): Customer Posting Group
- [Table 1692 "Posted Bank Deposit Line"](../table/1692.md): Posting Group
- [Table 18 "Customer"](../table/18.md): Customer Posting Group
- [Table 181 "Posted Gen. Journal Line"](../table/181.md): Posting Group
- [Table 21 "Cust. Ledger Entry"](../table/21.md): Customer Posting Group
- [Table 295 "Reminder Header"](../table/295.md): Customer Posting Group
- [Table 297 "Issued Reminder Header"](../table/297.md): Customer Posting Group
- [Table 30102 "Shpfy Shop"](../table/30102.md): Customer Posting Group
- [Table 30152 "Shpfy Catalog"](../table/30152.md): Customer Posting Group
- [Table 302 "Finance Charge Memo Header"](../table/302.md): Customer Posting Group
- [Table 304 "Issued Fin. Charge Memo Header"](../table/304.md): Customer Posting Group
- [Table 36 "Sales Header"](../table/36.md): Customer Posting Group
- [Table 379 "Detailed Cust. Ledg. Entry"](../table/379.md): Posting Group
- [Table 382 "CV Ledger Entry Buffer"](../table/382.md): CV Posting Group
- [Table 4405 "EXR Top Customer Report Buffer"](../table/4405.md): Customer Posting Group
- [Table 4763 "Whse Demo Data Setup"](../table/4763.md): Cust. Posting Group
- [Table 5107 "Sales Header Archive"](../table/5107.md): Customer Posting Group
- [Table 5475 "Sales Invoice Entity Aggregate"](../table/5475.md): Customer Posting Group
- [Table 5495 "Sales Order Entity Buffer"](../table/5495.md): Customer Posting Group
- [Table 5505 "Sales Quote Entity Buffer"](../table/5505.md): Customer Posting Group
- [Table 5507 "Sales Cr. Memo Entity Buffer"](../table/5507.md): Customer Posting Group
- [Table 5802 "Value Entry"](../table/5802.md): Source Posting Group
- [Table 5900 "Service Header"](../table/5900.md): Customer Posting Group
- [Table 5990 "Service Shipment Header"](../table/5990.md): Customer Posting Group
- [Table 5992 "Service Invoice Header"](../table/5992.md): Customer Posting Group
- [Table 5994 "Service Cr.Memo Header"](../table/5994.md): Customer Posting Group
- [Table 6010 "Service Header Archive"](../table/6010.md): Customer Posting Group
- [Table 6660 "Return Receipt Header"](../table/6660.md): Customer Posting Group
- [Table 751 "Standard General Journal Line"](../table/751.md): Posting Group
- [Table 81 "Gen. Journal Line"](../table/81.md): Posting Group
- [Table 83 "Item Journal Line"](../table/83.md): Source Posting Group
- [Table 86 "Exch. Rate Adjmt. Reg."](../table/86.md): Posting Group

## Pages and codeunits on this table

- [Page 110 "Customer Posting Groups"](../page/110.md) (source table)
- [Page 148 "Customer Posting Group Card"](../page/148.md) (source table)

## 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 48 "PostingSetupManagement"](../codeunit/48.md) (10 calls: `GetAddFeePerLineAccount → LogCustPostingGroupFieldError`, `GetAdditionalFeeAccount → LogCustPostingGroupFieldError`, `GetApplRoundingAccount → LogCustPostingGroupFieldError`, …)
- [Codeunit 570 "G/L Account Category Mgt."](../codeunit/570.md) (2 calls: `CheckGLAccount → CheckGLAccount`, `LookupGLAccount → LookupGLAccount`)

## Across versions

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

## Countries that replace it

[AU](../../localizations/au.md), [CA](../../localizations/ca.md), [ES](../../localizations/es.md), [IT](../../localizations/it.md), [MX](../../localizations/mx.md), [NZ](../../localizations/nz.md), [RU](../../localizations/ru.md), [US](../../localizations/us.md)

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