---
title: "Codeunit 426 Payment Tolerance Management"
author: "Jonas Paprotka"
url: https://jonas-paprotka.de/ref/codeunit/426-payment-tolerance-management/
type: codeunit
id: 426
name: "Payment Tolerance Management"
app: "Base Application"
namespace: Microsoft.Finance.ReceivablesPayables
versions: "17-28"
build: 28.5.54151.54365
source: "https://jonas-paprotka.de/ref/codeunit/426-payment-tolerance-management/source/29/"
checked: 2026-09-20
subject: "Microsoft Dynamics 365 Business Central"
license: "Content © 2026 Jonas Paprotka. Quote freely with attribution and a link."
---

# Codeunit 426 Payment Tolerance Management

Jonas Paprotka, https://jonas-paprotka.de/ref/codeunit/426-payment-tolerance-management/

| | |
| --- | --- |
| App | Base Application |
| Namespace | Microsoft.Finance.ReceivablesPayables |
| Versions | 17-28 |
| Source file | Finance/ReceivablesPayables/PaymentToleranceManagement.Codeunit.al |

## Procedures

| Name | Parameters | Returns | Access | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- | --- |
| PmtTolCust | (var Record Cust. Ledger Entry) | Boolean | public | 17-28 | - | - |
| PmtTolVend | (var Record Vendor Ledger Entry) | Boolean | public | 17-28 | - | - |
| PmtTolGenJnl | (var Record Gen. Journal Line) | Boolean | public | 17-28 | - | - |
| PmtTolPmtReconJnl | (var Record Bank Acc. Reconciliation Line) | Boolean | public | 17-28 | - | - |
| CalcGracePeriodCVLedgEntry | (DateFormula) | - | public | 17-28 | - | - |
| CalcTolCustLedgEntry | (Record Customer) | - | public | 17-28 | - | - |
| DelTolCustLedgEntry | (Record Customer) | - | public | 17-28 | - | - |
| CalcTolVendLedgEntry | (Record Vendor) | - | public | 17-28 | - | - |
| DelTolVendLedgEntry | (Record Vendor) | - | public | 17-28 | - | - |
| DelPmtTolApllnDocNo | (Record Gen. Journal Line, Code[20]) | - | public | 17-28 | - | - |
| CalcRemainingPmtDisc | (var Record CV Ledger Entry Buffer, var Record CV Ledger Entry Buffer, var Record CV Ledger Entry Buffer, Record General Ledger Setup) | - | public | 17-28 | - | - |
| CalcMaxPmtTolerance | (Enum Gen. Journal Document Type, Code[10], Decimal, Decimal, Decimal, var Decimal) | - | public | 17-28 | - | - |
| CheckCalcPmtDisc | (var Record CV Ledger Entry Buffer, var Record CV Ledger Entry Buffer, Decimal, Boolean, Boolean) | Boolean | public | 17-28 | - | - |
| CheckCalcPmtDiscCVCust | (var Record CV Ledger Entry Buffer, var Record Cust. Ledger Entry, Decimal, Boolean, Boolean) | Boolean | public | 17-28 | - | - |
| CheckCalcPmtDiscCust | (var Record Cust. Ledger Entry, var Record Cust. Ledger Entry, Decimal, Boolean, Boolean) | Boolean | public | 17-28 | - | - |
| CheckCalcPmtDiscGenJnlCust | (Record Gen. Journal Line, Record Cust. Ledger Entry, Decimal, Boolean) | Boolean | public | 17-28 | - | - |
| CheckCalcPmtDiscCVVend | (var Record CV Ledger Entry Buffer, var Record Vendor Ledger Entry, Decimal, Boolean, Boolean) | Boolean | public | 17-28 | - | - |
| CheckCalcPmtDiscVend | (var Record Vendor Ledger Entry, var Record Vendor Ledger Entry, Decimal, Boolean, Boolean) | Boolean | public | 17-28 | - | - |
| CheckCalcPmtDiscGenJnlVend | (Record Gen. Journal Line, Record Vendor Ledger Entry, Decimal, Boolean) | Boolean | public | 17-28 | - | - |
| SetSuppressCommit | (Boolean) | - | public | 17-28 | - | - |
| CallPmtDiscTolWarning | (Date, Code[20], Code[20], Code[10], Decimal, Decimal, Decimal, var Boolean, Enum Payment Tolerance Account Type) | Boolean | public | 20-28 | - | - |
| CallPmtTolWarning | (Date, Code[20], Code[20], Code[10], var Decimal, Decimal, Enum Payment Tolerance Account Type) | Boolean | public | 20-28 | - | - |
| ABSMinTol | (Decimal, Decimal, Decimal) | Decimal | public | 20-28 | - | - |
| GetApplicationRoundingPrecisionForAppliesToDoc | (Code[10], var Decimal, var Decimal, Code[20]) | - | public | 20-28 | - | - |
| GetAmountRoundingPrecision | (var Decimal, var Decimal, Boolean, Code[20]) | - | public | 20-28 | - | - |
| SetSuppressWarning | (Boolean) | - | public | 20-28 | - | - |
| CheckAccountType | (Record Gen. Journal Line, Enum Gen. Journal Account Type) | - | public | 20-28 | - | - |
| GetAppliesToID | (Record Gen. Journal Line) | Code[50] | public | 20-28 | - | - |
| CalcCustApplnAmount | (Record Cust. Ledger Entry, Record General Ledger Setup, var Decimal, var Decimal, var Decimal, var Decimal, var Decimal, Code[50], var Decimal) | - | internal | 28 | - | - |
| CalcVendApplnAmount | (Record Vendor Ledger Entry, Record General Ledger Setup, var Decimal, var Decimal, var Decimal, var Decimal, var Decimal, Code[50], var Decimal) | - | internal | 28 | - | - |
| PutCustPmtTolAmount | (Record Cust. Ledger Entry, Decimal, Decimal, Code[50]) | - | internal | 28 | - | - |
| PutVendPmtTolAmount | (Record Vendor Ledger Entry, Decimal, Decimal, Code[50]) | - | internal | 28 | - | - |
| DelCustPmtTolAcc | (Record Cust. Ledger Entry, Code[50]) | - | internal | 28 | - | - |
| DelVendPmtTolAcc | (Record Vendor Ledger Entry, Code[50]) | - | internal | 28 | - | - |
| ManagePaymentDiscToleranceWarningCustomer | (var Record Cust. Ledger Entry, Code[50], var Decimal, var Decimal, Code[20]) | Boolean | internal | 28 | - | - |
| ManagePaymentDiscToleranceWarningVendor | (var Record Vendor Ledger Entry, Code[50], var Decimal, var Decimal, Code[20]) | Boolean | internal | 28 | - | - |

## Events

| Kind | Name | Parameters | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- |
| Integration event | OnAfterCalcMaxPmtTolerance | (Option, Code[10], Decimal, Decimal, Decimal, var Decimal) | 17-28 | - | - |
| Integration event | OnBeforeCalcMaxPmtTolerance | (Option, Code[10], Decimal, Decimal, Decimal, var Decimal, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeCalcRemainingPmtDisc | (var Record CV Ledger Entry Buffer, var Record CV Ledger Entry Buffer, var Record CV Ledger Entry Buffer, Record General Ledger Setup, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeCallPmtDiscTolWarning | (Date, Code[20], Code[20], Code[10], Decimal, Decimal, Decimal, var Boolean, Option, var Integer, var Boolean, var Boolean) | 17-22 | - | - |
| Integration event | OnBeforeCheckCalcPmtDisc | (Record CV Ledger Entry Buffer, Record CV Ledger Entry Buffer, Decimal, Boolean, Boolean, var Boolean, var Boolean) | 17-26 | - | - |
| Integration event | OnBeforeCheckPmtDiscTolCust | (Date, Enum Gen. Journal Document Type, Decimal, Record Cust. Ledger Entry, Decimal, Decimal, var Boolean, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeRunModalPmtTolWarningCallPmtTolWarning | (Date, Code[20], Code[20], Code[10], var Decimal, Decimal, Option, var Integer, var Boolean) | 17-28 | - | - |
| Integration event | OnCalcTolCustLedgEntryOnBeforeModify | (var Record Cust. Ledger Entry) | 17-28 | - | - |
| Integration event | OnCalcTolVendLedgEntryOnBeforeModify | (var Record Vendor Ledger Entry) | 17-28 | - | - |
| Integration event | OnCalcCustApplnAmountOnBeforeUpdateCustAmountsForApplication | (var Record Cust. Ledger Entry, var Record Cust. Ledger Entry, var Record Cust. Ledger Entry) | 18-28 | - | - |
| Integration event | OnCalcCustApplnAmountOnAfterAppliedCustLedgEntryLoop | (var Record Cust. Ledger Entry) | 18-28 | - | - |
| Integration event | OnCalcVendApplnAmountOnBeforeUpdateVendAmountsForApplication | (var Record Vendor Ledger Entry, var Record Vendor Ledger Entry, var Record Vendor Ledger Entry) | 18-28 | - | - |
| Integration event | OnCalcVendApplnAmountOnAfterAppliedVendLedgEntryLoop | (var Record Vendor Ledger Entry) | 18-28 | - | - |
| Integration event | OnAfterDelPmtTolApllnDocNo | (var Record Gen. Journal Line, Code[20], Boolean) | 19-28 | - | - |
| Integration event | OnAfterPmtTolGenJnl | (Record Gen. Journal Line, Boolean, var Boolean) | 19-28 | - | - |
| Integration event | OnAfterPmtTolPmtReconJnl | (var Record Bank Acc. Reconciliation Line, Boolean, var Boolean) | 19-28 | - | - |
| Integration event | OnBeforeDelPmtTolApllnDocNo | (var Record Gen. Journal Line) | 19-28 | - | - |
| Integration event | OnCalcTolCustLedgEntryOnCustLedgEntryLoopIterationStart | (Record Cust. Ledger Entry, Record General Ledger Setup, var Boolean) | 19-28 | - | - |
| Integration event | OnPmtTolCustOnAfterSetCustEntryApplId | (var Record Cust. Ledger Entry, var Code[50]) | 19-28 | - | - |
| Integration event | OnPmtTolVendOnAfterSetVendEntryApplId | (var Record Vendor Ledger Entry, var Code[50]) | 19-28 | - | - |
| Integration event | OnPutCustPmtTolAmountOnAfterAppliedCustLedgEntrySetFilters | (var Record Cust. Ledger Entry, Record Cust. Ledger Entry) | 19-28 | - | - |
| Integration event | OnPutVendPmtTolAmountOnAfterVendLedgEntrySetFilters | (var Record Vendor Ledger Entry, Record Vendor Ledger Entry) | 19-28 | - | - |
| Integration event | OnGetAccountNameOnCaseElse | (Enum Payment Tolerance Account Type, Code[20], var Text) | 20-28 | - | - |
| Integration event | OnPmtTolGenJnlOnAfterCheckConditions | (Record Gen. Journal Line, var Boolean, var Boolean) | 22-28 | - | - |
| Integration event | OnBeforeCallPmtDiscTolWarning | (Date, Code[20], Code[20], Code[10], Decimal, Decimal, Decimal, var Boolean, Option, var Integer, var Boolean, var Boolean, Boolean) | 23-28 | - | - |
| Integration event | OnCalcGracePeriodCVLedgEntryOnBeforeCustLedgEntryModify | (var Record Cust. Ledger Entry, DateFormula) | 23-28 | - | - |
| Integration event | OnCalcGracePeriodCVLedgEntryOnBeforeVendLedgEntryModify | (var Record Vendor Ledger Entry, DateFormula) | 23-28 | - | - |
| Integration event | OnDelTolCustLedgEntryOnBeforeModify | (var Record Cust. Ledger Entry) | 23-28 | - | - |
| Integration event | OnDelTolVendLedgEntryOnBeforeModify | (var Record Vendor Ledger Entry) | 23-28 | - | - |
| Integration event | OnBeforeCheckPmtDiscTolVend | (Date, Enum Gen. Journal Document Type, Decimal, Record Vendor Ledger Entry, Decimal, Decimal, var Boolean, var Boolean) | 25-28 | - | - |
| Integration event | OnCalcCustApplnAmountAfterCalcRemainingAmount | (var Record Cust. Ledger Entry) | 25-28 | - | - |
| Integration event | OnCalcVendApplnAmountAfterCalcRemainingAmount | (var Record Vendor Ledger Entry) | 25-28 | - | - |
| Integration event | OnManagePaymentDiscToleranceWarningCustomerAfterCalcRemainingAmount | (var Record Cust. Ledger Entry) | 25-28 | - | - |
| Integration event | OnManagePaymentDiscToleranceWarningVendorAfterCalcRemainingAmount | (var Record Vendor Ledger Entry) | 25-28 | - | - |
| Integration event | OnPmtTolCustBeforeCalcCustApplnAmount | (var Record Cust. Ledger Entry) | 25-28 | - | - |
| Integration event | OnPmtTolVendBeforeCalcVendApplnAmount | (var Record Vendor Ledger Entry) | 25-28 | - | - |
| Integration event | OnPutCustPmtTolAmountAfterCalcAmount | (var Record Cust. Ledger Entry) | 25-28 | - | - |
| Integration event | OnPutVendPmtTolAmountAfterCalcAmount | (var Record Vendor Ledger Entry) | 25-28 | - | - |
| Integration event | OnUpdateCustAmountsForApplicationAfterCalcRemainingAmount | (var Record Cust. Ledger Entry) | 25-28 | - | - |
| Integration event | OnUpdateVendAmountsForApplicationAfterCalcRemainingAmount | (var Record Vendor Ledger Entry) | 25-28 | - | - |
| Integration event | OnPmtTolCustLedgEntryOnBeforeWarning | (var Record Cust. Ledger Entry, Record General Ledger Setup, var Decimal, var Decimal, var Decimal, var Decimal, var Decimal, Code[50], var Decimal, var Boolean, var Boolean) | 25-28 | - | - |
| Integration event | OnPmtTolVendLedgEntryOnBeforeWarning | (var Record Vendor Ledger Entry, Record General Ledger Setup, var Decimal, var Decimal, var Decimal, var Decimal, var Decimal, Code[50], var Decimal, var Boolean, var Boolean) | 25-28 | - | - |
| Integration event | OnBeforeCheckPmtTolCust | (var Enum Gen. Journal Document Type, var Record Cust. Ledger Entry, var Boolean, var Boolean) | 26-28 | - | - |
| Integration event | OnBeforeDelCustPmtTolAcc2 | (Record Cust. Ledger Entry, Code[50], var Boolean) | 26-28 | - | - |
| Integration event | OnBeforeGetCustPositiveFilter | (Enum Gen. Journal Document Type, Decimal, var Boolean, var Boolean) | 26-28 | - | - |
| Integration event | OnCalcGracePeriodCVLedgEntryOnAfterCustLedgEntrySetFilters | (var Record Cust. Ledger Entry) | 26-28 | - | - |
| Integration event | OnBeforeCheckCalcPmtDisc | (var Record CV Ledger Entry Buffer, var Record CV Ledger Entry Buffer, Decimal, Boolean, Boolean, var Boolean, var Boolean) | 27-28 | - | - |
| Integration event | OnPmtTolCustOnAfterSetPaymentTolWarning | (Record General Ledger Setup, var Boolean) | 28 | - | - |
| Integration event | OnPmtTolVendOnAfterSetPaymentTolWarning | (Record General Ledger Setup, var Boolean) | 28 | - | - |
| Integration event | OnPmtTolCustLedgEntryOnAfterSetPaymentTolWarning | (Record General Ledger Setup, var Boolean) | 28 | - | - |
| Integration event | OnPmtTolVendLedgEntryOnAfterSetPaymentTolWarning | (Record General Ledger Setup, var Boolean) | 28 | - | - |

## Source

Symbols: Microsoft.BaseApplication.symbols.437dbf0e-84ff-417a-965d-ed2bb9650972, https://dynamicssmb2.pkgs.visualstudio.com/DynamicsBCPublicFeeds/_packaging/MSSymbols/nuget/v3/index.json, highest build per major on 2026-09-20.
AL source 29: https://github.com/microsoft/BCApps, MIT, releases/29.x at a66254c3b8b5bb1cea290dc8f9d097aec4381153.

Jonas Paprotka, 2026-09-20.
