Category: Finance

  • Advanced bank reconciliation – A practical view

    Advanced bank reconciliation – A practical view

    Documentation https://learn.microsoft.com/en-us/dynamics365/finance/accounts-payable/import-bai2-er

    UBS Camt.053 Implentation guidelines Dokumente Zahlungsverkehr | UBS Schweiz

    Functional overview

    Advanced bank reconciliation provides the following functionality:

    • Import Camt.053 Bank statement (I could not get MT940 to work and did not test BAI2)
    • Match statement to existing bank transactions based on customizable matching rules
    • Create new bank transaction based on customizable matching rules
      • The offset of bank transactions is Ledger only (no customer or vendor transaction)
      • The offset account selection is linked to the statement transaction codes provided by the bank

    Process

    Overview

    • IMPORTANT: Do not import a bank statement before the previous bank statement is reconciled and posted.
    • Import (Camt.053) Bank statement
    • Create Reconciliation (Manual or automatic)
    • Run matching rules (Manual or automatic)
    • Match remaining transaction and check automatically matched transactions
    • Mark as reconciled
    • Return to statement to post the new transactions

    Bank account

    Links to “Bank statements” (for Bank statement import and posting) and “Bank reconciliation” (for reconciliation)

    Import the bank statement

    IMPORTANT: Do not import a bank statement before the previous bank statement is reconciled and posted.

    Bank account > Reconcile > Bank Statements

    Create Reconciliation

    Bank account > Reconcile > Bank statements

    Depending on the setup the statement was created automatically during import of the statement or you can create it manually here

    Reconciliation Worksheet

    • Check result
    • Match manually if needed
    • When done, “Mark as reconciled”
    • Note: If Transactions are missing, they might be in future dates. In this case go back to the Bank reconciliation overview and change the Cut-off date. After the matching is completed, return the date back to the Statement date.

    Post statement

    • Go back to bank statement
    • Check Accounting date – Must be Bank Statement Date (this posting of the new transactions will occur on this date)
    • Post

    Customizations

    The above processes did not work without some minor customization

    Customization by Electronic reporting definition

    ISO.053 without IBAN as Identifier

    Issue: the HSBC UK CAMT.053 file provideds <Routing number> + <Account number> in the <Acct>.<Id>.<Othr> field; the standard implementation expects only <Account number> in the field. This caused the error “The bank statement %1 was not imported because bank account %2 was not identified in the import file.”

    Solution: Use electronic reporting to trim the account number:
    Designer for Model mapping “ABR Camt.053 format mapping”  (NOT format)

    Differentiate “OTHR” Payments

    Issue: Direct debits are all identified as “OTHR” Payments but need to be posted in different ways. The standard only allows differentiations by Statement transaction code which ist defined by the bank.

    Solution: Using Electronic reporting add the first three characters of the EndToEndId to the Statement transaction code enabling further differentiation of the OTHR payments

    Designer for Model mapping “ABR Camt.053 format mapping”  (NOT format); format/Document/BkToCstmrStmt/Stmt/Ntry/NtryDtls/TxDtls

    CASE(@.BkTxCd.IsMatched,
    True, IF(  @.BkTxCd.Data.Domn.IsMatched,
    CONCATENATE(
    @.BkTxCd.Data.Domn.Data.Cd.Str,
    @.BkTxCd.Data.Domn.Data.Fmly.Cd.Str,
    @.BkTxCd.Data.Domn.Data.Fmly.SubFmlyCd.Str,
    IF(TEXT(@.BkTxCd.Data.Domn.Data.Fmly.SubFmlyCd.Str) = "OTHR", LEFT(@.Refs.Data.EndToEndId.Data.Str, 3), "")),
    IF(@.BkTxCd.Data.Prtry.IsMatched,
    @.BkTxCd.Data.Prtry.Data.Cd.Str,"")
    ),
    IF(format.Document.BkToCstmrStmt.Stmt.Ntry.BkTxCd.Domn.IsMatched,
    CONCATENATE(
    format.Document.BkToCstmrStmt.Stmt.Ntry.BkTxCd.Domn.Data.Cd.Str,
    format.Document.BkToCstmrStmt.Stmt.Ntry.BkTxCd.Domn.Data.Fmly.Cd.Str,
    format.Document.BkToCstmrStmt.Stmt.Ntry.BkTxCd.Domn.Data.Fmly.SubFmlyCd.Str,
    IF(TEXT(format.Document.BkToCstmrStmt.Stmt.Ntry.BkTxCd.Domn.Data.Fmly.SubFmlyCd.Str) = "OTHR", LEFT(@.Refs.Data.EndToEndId.Data.Str, 3), "")),
    IF(format.Document.BkToCstmrStmt.Stmt.Ntry.BkTxCd.Prtry.IsMatched,
    format.Document.BkToCstmrStmt.Stmt.Ntry.BkTxCd.Prtry.Data.Cd.Str,""))
    )

    Import field “AddtlNtryInf” from statement to “Description” (AdditionalEntryInfo) field

    Issue: The “Description” field (AdditionalEntryInformation) is populate by the “EndToEndId” which contains too little information in the imported Bank statement. The Bank statement file contains more information in the “AddtlNtryInf” field.

    Solution: Using Electronic reporting

    • Change the mapping of EndToEndId: Replace with AddtlNtryInf if available (this will map to BankStmtISOReportEntry.AdditionalEntryInformation)
    • Change the mapping of BankDocumentNumber: Add the original EndToEndId value here (this will map the value to BankStmtISOReportEntry.BankDocumentNumber)

    Customization in code

    Allow change of posting date

    Issue: The standard always posts new statement transaction to today (AccountingDate is set to today() during initialization)

    Solution: In Code add new edit method to allow change of AccountingDate of BankStmtISOAccountStatement

    Allow change of cutoff date

    Issue: Allow change of cutoff date, to include transactions that were posted after the bank statement. This is actually possible in standard, however after matching the change should be reversed to link the reconciliations to the correct statement.

    Solution: In Code disable validation of CutOffDate changes on BankReconciliationHeader and create edit method to allow change even after reconciliation.

  • Quick fix for posting definitions error

    Error Message

    The source document cannot be processed until you assign a posting definitions to the source document in the Transaction posting definition form.

    Quick fix

    Simply disable posting definitions here: General ledger >> Setup >> General ledger parameters

    HS7ClipImage_51d16594
  • GDPdU Sample Configuration

    AX 2009 offers the GDPdU (Grundsätze zum Datenzugriff und zur Prüfbarkeit digitaler Unterlagen) Export in the German Layer for which there is a nice Description:

    However, the rest is left completely up to the user to start from scratch. The following is a sample GDPdU definition as a starting point for your configuration (Import using Basic>>Periodic>>Import/Export>>Import)