Namespace Microsoft.Bank.DirectDebit
Provides comprehensive direct debit collection functionality for SEPA and other direct debit standards. This namespace implements the complete lifecycle of direct debit processing, from mandate management to collection execution and file generation. The architecture supports multiple payment standards through dedicated export handlers and validation routines.
Codeunit
| Name | Description |
|---|---|
| Codeunit Microsoft.Bank.DirectDebit."Imp. SEPA CAMT Gen. Jnl." | Imports SEPA CAMT (Customer Account Management) bank statement files into general journal lines. Processes XML-formatted bank statements, extracts transaction details, and populates journal entries for automated bank reconciliation and payment processing. |
| Codeunit Microsoft.Bank.DirectDebit."SEPA CT-Check Line" | Validates general journal lines for SEPA credit transfer compliance and data completeness. Performs comprehensive validation of account types, amounts, bank information, and vendor/customer/employee details before export to ensure SEPA credit transfer standard compliance. |
| Codeunit Microsoft.Bank.DirectDebit."SEPA CT-Export File" | Handles the export of SEPA credit transfer payments to XML files in compliance with SEPA standards. Processes general journal lines for credit transfers, validates payment information, and generates XML files using appropriate XMLPorts for bank submission. |
| Codeunit Microsoft.Bank.DirectDebit."SEPA CT-Fill Export Buffer" | Populates the payment export data buffer with information from general journal lines for SEPA credit transfer processing. Formats and validates data for XML export compliance. |
| Codeunit Microsoft.Bank.DirectDebit."SEPA CT-Prepare Source" | Prepares general journal line data for SEPA credit transfer XML export by copying and organizing eligible journal entries into a temporary structure for XMLPort processing. |
| Codeunit Microsoft.Bank.DirectDebit."SEPA DD-Check Line" | Validates direct debit collection entries for SEPA compliance and data completeness. Performs comprehensive validation of customer information, mandate details, bank account data, and business rules before export to ensure SEPA standard compliance. |
| Codeunit Microsoft.Bank.DirectDebit."SEPA DD-Export File" | Handles the export of SEPA direct debit collections to XML files in compliance with SEPA standards. Validates bank account information, generates XML files using appropriate XMLPorts, and manages the collection status throughout the export process. |
| Codeunit Microsoft.Bank.DirectDebit."SEPA DD-Fill Export Buffer" | Populates the payment export data buffer with information from direct debit collection entries for SEPA direct debit processing. Formats and validates data for XML export compliance. |
| Codeunit Microsoft.Bank.DirectDebit."SEPA DD-Prepare Source" | Prepares direct debit collection entry data for SEPA XML export by copying and organizing eligible entries into a temporary structure for XMLPort processing. |
Table
| Name | Description |
|---|---|
| Table Microsoft.Bank.DirectDebit."Direct Debit Collection" | Represents a collection of direct debit transactions that are grouped together for processing and export. This table serves as the header for organizing multiple direct debit entries into a single collection for efficient processing and SEPA file generation. |
| Table Microsoft.Bank.DirectDebit."Direct Debit Collection Buffer" | Temporary buffer table for processing direct debit collection entries during export and validation operations. Stores essential collection entry information for batch processing and intermediate calculations without modifying the permanent collection entry records. |
| Table Microsoft.Bank.DirectDebit."Direct Debit Collection Entry" | Represents individual direct debit transactions within a collection, linking customer ledger entries to specific direct debit mandates and managing the transaction lifecycle from creation to posting. |
| Table Microsoft.Bank.DirectDebit."SEPA Direct Debit Mandate" | Stores SEPA direct debit mandates that authorize automated collection of payments from customer accounts. Manages mandate validity periods, payment types, usage counters, and compliance with SEPA regulations. |
Page
| Name | Description |
|---|---|
| Page Microsoft.Bank.DirectDebit."Direct Debit Collect. Entries" | Displays and manages individual direct debit collection entries within a collection. Provides functionality to create, edit, validate, and export collection entries for automated customer payment processing. |
| Page Microsoft.Bank.DirectDebit."Direct Debit Collections" | Displays a list of direct debit collections with their status and basic information. Provides functionality to create, export, close, and manage direct debit collections for automated customer payment processing. |
| Page Microsoft.Bank.DirectDebit."SEPA Direct Debit Mandates" | Manages SEPA direct debit mandates that authorize automated payment collection from customers. Provides functionality to create, edit, and maintain mandate information including validity periods, payment types, and customer bank account associations. |
XmlPort
| Name | Description |
|---|---|
| XmlPort Microsoft.Bank.DirectDebit."SEPA CT pain.001.001.03" | XMLPort for exporting SEPA credit transfers in pain.001.001.03 format. Generates XML files compliant with SEPA Customer Credit Transfer Initiation standard for submission to banks for automated payment processing. |
| XmlPort Microsoft.Bank.DirectDebit."SEPA CT pain.001.001.09" | XMLPort for exporting SEPA credit transfers in pain.001.001.09 format. Generates XML files compliant with SEPA Customer Credit Transfer Initiation standard version 9 for submission to banks for automated payment processing. |
| XmlPort Microsoft.Bank.DirectDebit."SEPA DD pain.008.001.02" | XMLPort for exporting SEPA direct debits in pain.008.001.02 format. Generates XML files compliant with SEPA Customer Direct Debit Initiation standard for submission to banks for automated payment collection processing. |
| XmlPort Microsoft.Bank.DirectDebit."SEPA DD pain.008.001.08" | XMLPort for exporting SEPA direct debit collections in pain.008.001.08 format. Generates XML files compliant with SEPA Customer Direct Debit Initiation standard for submission to banks for automated collection processing. |
Report
| Name | Description |
|---|---|
| Report Microsoft.Bank.DirectDebit."Create Direct Debit Collection" | Creates direct debit collections from open customer ledger entries based on specified criteria. Filters customers and invoices, validates mandates, and automatically generates collection entries for eligible transactions within the specified date range. |
| Report Microsoft.Bank.DirectDebit."Post Direct Debit Collection" | Posts direct debit collection entries by creating general journal lines and processing payments. Handles the posting of successfully exported direct debit collections, updating mandate counters, and generating payment journal entries for bank reconciliation. |
Events
| Name | |
|---|---|
| OnAfterCheckGenJnlLine | |
| OnBeforeCheckBank | |
| OnBeforeCheckCustVendEmpl | |
| OnBeforeCheckGenJnlLine | |
| OnCheckCustVendEmplOnCaseElse | |
| OnBeforeBLOBExport | Integration event raised before BLOB export operation during credit transfer file creation. Enables custom file handling or modification of export parameters. |
| OnBeforeExtport | Integration event raised before starting SEPA credit transfer export process. Enables custom export handling or validation before standard processing. |
| OnAfterCreateNewCreditTransferEntry | Integration event raised after creating new credit transfer entry during export buffer processing. Enables custom processing or field updates after credit transfer entry creation. |
| OnAfterFillExportBuffer | Integration event raised after completing export buffer processing for SEPA credit transfer. Enables final custom processing or validation after all export data has been populated. |
| OnFillExportBufferOnAfterGetMessageID | Integration event raised after generating message ID during export buffer processing. Enables custom message ID generation or modification. |
| OnFillExportBufferOnAfterCreateNewRegister | Integration event raised after creating new credit transfer register during export processing. Enables custom processing or field updates after register creation. |
| OnFillExportBufferOnAfterSetCustomerAsRecipient | |
| OnFillExportBufferOnAfterSetVendorAsRecipient | |
| OnFillExportBufferOnAfterSetBankAsRecipient | |
| OnFillExportBufferOnAfterInsertPaymentExportData | |
| OnFillExportBufferOnBeforeInsertPaymentExportData | |
| OnFillExportBufferOnSetAsRecipient | |
| OnGetAppliesToDocEntryNumbersCaseElse | |
| OnAfterCreateTempJnlLines | Integration event raised after creating temporary journal lines. Allows subscribers to modify or enhance the temporary lines after standard processing. |
| OnBeforeCreateTempJnlLines | Integration event raised before creating temporary journal lines. Allows subscribers to provide custom logic for temporary line creation. |
| OnCopyJnlLinesOnBeforeTempGenJnlLineInsert | Integration event raised before inserting temporary journal lines during the copy process. Allows subscribers to modify journal line data or apply custom transformations. |
| OnBeforeCheckCollectionEntry | Integration event that allows customization of collection entry validation logic. |
| OnBeforeCheckCustomerPartnerType | Integration event that allows customization of customer partner type validation. |
| OnBeforeGetDirectDebitCollection | Integration event that allows customization of direct debit collection retrieval logic. |
| OnBeforeExport | Integration event that allows customization of the export process before XML generation. |
| OnExportOnAfterXMLPortExport | Integration event triggered after XML export is completed, allowing post-processing of the generated content. |
| OnBeforeGetDDExportImportSetup | Integration event that allows customization of the direct debit export/import setup retrieval process. Subscribers can provide alternative logic for determining the appropriate setup configuration. |
| OnBeforeInsertPaymentExportData | Integration event that allows customization of payment export data before insertion. Subscribers can modify export data fields or add additional validation logic. |
| OnAfterCreateTempCollectionEntries | Integration event raised after creating temporary collection entries. Allows subscribers to modify or enhance the temporary entries after creation. |
| OnBeforeCreateTempCollectionEntries | Integration event raised before creating temporary collection entries. Allows subscribers to provide custom logic for temporary entry creation. |
| OnBeforeHasPaymentFileErrors | Integration event that allows customization of payment file error checking logic. |
| OnBeforeCheckSEPA | Integration event that allows customization of SEPA validation checks. |
| OnBeforeCheckCustLedgerEntryAmountPositive | Integration event that allows customization of customer ledger entry amount validation. |
| OnBeforeDocTypeErr | Integration event that allows customization of document type validation logic. |
| OnBeforeExportSEPA | Integration event that allows customization of SEPA export processing. |
| OnBeforeTransferPKToGenJnlLine | Integration event for customizing primary key transfer to general journal line. |
| OnBeforeValidateTransferAmount | Integration event that allows customization of transfer amount validation. |
| OnCreateNewOnBeforeInsert | Integration event triggered before inserting a new collection entry. |
| OnCreateNewOnAfterInsert | Integration event triggered after inserting a new collection entry. |
| OnValidateAppliesToEntryNoOnAfterTransferCustLedgerEntryFields | Integration event triggered after transferring fields from customer ledger entry during validation. |
| OnBeforeInsert | Integration event triggered before inserting a new mandate record. |
| OnBeforeModify | Integration event triggered before modifying a mandate record. |
| OnBeforeRunSEPACheckLine | |
| OnSpecifyRemittanceTextSeparatorText | |
| OnBeforePassVariableRmtInf | |
| OnSpecifyRemittanceTextSeparatorText | |
| OnBeforePassVariableRmtInf | |
| OnAfterCreateJnlLine | Integration event raised after creating a general journal line from direct debit collection entry. Enables custom processing or field updates after journal line creation. |
| OnAfterSetGenJnlLineDim | Integration event raised after setting dimensions on general journal line during direct debit processing. Enables custom dimension handling or validation after standard dimension assignment. |
| OnBeforeCreateJnlLine | Integration event raised before creating general journal line from direct debit collection entry. Enables custom journal line creation or validation before standard processing. |
Remarks
Key architectural components include mandate management for customer authorization, collection orchestration for grouping and processing payments, SEPA-compliant XML generation for standard formats (pain.008.001.02/08 for direct debits, pain.001.001.03/09 for credit transfers), and automated status tracking throughout the process lifecycle.
The namespace integrates with core banking functionality through bank account management, customer data for mandate validation, and general journal processing for posting. Extension points include custom validation rules, specialized export formats, and integration event handling for third-party payment processors.
Dependencies include Microsoft.Bank.BankAccount for account management, Microsoft.Sales.Customer for mandate relationships, Microsoft.Finance.GeneralLedger.Journal for payment processing, and System.IO for file generation and management.