Payment Journal Import Feature - Setup & Processing Guide
Overview
The Payment Journal Import feature in the Linc Third Party Transactions extension enables automatic creation of Business Central Payment Journal Lines (General Journal Lines in a payment journal batch) from imported transaction data. The feature is designed for settling outstanding customer and vendor entries from third party payment files, supporting bank/balancing account handling, document application (Applies-to), payment method and payment terms resolution, multi-currency processing, and complete dimension integration. Unlike the General Journal Import feature, payment journal processing does not require posting group validation.
Key Components
- Application Area: Financial
- Transaction Types: Payment Journal
- Supported Account Types: G/L Account, Customer, Vendor (main account); G/L Account, Customer, Vendor, Bank Account (balancing account)
- Document Types: All standard General Journal document types (typically Payment / Refund)
- Currency Support: Multi-currency with exchange rate handling
- Application Support: Applies-to Doc. Type/No. and Applies-to ID
- Output: Business Central Payment Journal Lines
- Processing Codeunit:
ThirdPartyPayJnlMgt_THI_LINC(Codeunit 71112713)
Prerequisites
1. Basic Business Central Setup
- General Ledger Setup configured
- Chart of Accounts properly set up
- Bank Accounts configured (if using Bank Account balancing accounts)
- Payment Journal Templates and Batches configured
- Payment Methods configured (if using Payment Method Code)
- Payment Terms codes (if calculating due dates)
- Currencies configured (if using multi-currency transactions)
- Dimensions configured (if using dimension tracking)
2. Extension Setup
- Linc Third Party Transactions extension installed
- Appropriate user permissions configured
- Payment Journal Templates and Batches ready for processing
- Customer/Vendor mappings (if using account mappings)
Step-by-Step Setup Instructions
Step 1: Configure Third Party Setup for Payment Journal
- Navigate to Third Party Setup List (Page 71112700)
- Create or modify a setup record with the following configuration:
General Settings
- Third Party Code: Unique identifier for your payment journal setup
- Application Area: Set to
Financial - XMLPort ID: Only required for XML/text/CSV file imports — select the appropriate import XMLPort. Leave blank when transactions are populated via Excel import or API/web request.
- No. of Header Rows: Only used for Excel import — number of header rows to skip in the Excel sheet. Not applicable to XMLPort or API imports.
Note: Payment journal transactions can be populated three ways — XMLPort file import (requires XMLPort ID), Excel import (requires Excel import mapping, see Step 4), or directly via API/web request (no XMLPort or Excel mapping needed). Configure only the import method(s) you use.
Journal Configuration (Journals FastTab → Payment Journal group)
- Pay. Journal Template: Default payment journal template for processing
- Pay. Journal Batch: Default payment journal batch for processing
- Use Default Dimensions: Use BC account default dimensions vs imported dimensions
- Use Import Description: Use imported description vs default journal line description
Processing Options
- Use Mapping: Enable Third Party Mappings for account/dimension translation
- Attempt Direct Mapping: Try direct value resolution when mapping not found
- Automatically Validate: Auto-validate imported transactions
- Automatically Create Trans.: Auto-create journal lines after validation
- Automatically Post Trans.: Auto-post journal lines after creation
Step 2: Configure Payment Journal Templates & Batches
Navigate to General Journal Templates
Set up or verify a payment journal template:
- Template Type: Must be "Payments"
- Name: Template code to use in Third Party Setup (Pay. Journal Template)
- Description: Descriptive name
- Source Code: Appropriate source code for tracking
- No. Series: Number series for document numbering (optional)
Navigate to the Batches for your payment journal template
Set up or verify batches:
- Journal Template Name: Link to your payment journal template
- Name: Batch code to use in Third Party Setup (Pay. Journal Batch)
- Description: Descriptive name
- Bal. Account Type / Bal. Account No.: Optional default balancing account (e.g. a Bank Account) — used when transactions do not specify a balancing account
- No. Series: Number series for document numbers
- Posting No. Series: Number series for posted documents
Note: If a transaction does not specify a balancing account, the batch's Bal. Account Type/No. is applied automatically.
Step 3: Configure Account & Payment Mappings (if using mappings)
If Use Mapping is enabled:
- Navigate to Third Party Mappings (Page 71112706)
- Create mapping records:
G/L Account Mappings
- Third Party Code: Same as setup record
- Mapping Type:
G/L Account - Third Party Reference No.: External G/L account identifier
- Mapping No.: Internal BC G/L Account No.
Customer Mappings
- Mapping Type:
Customer - Third Party Reference No.: External customer identifier
- Mapping No.: Internal BC Customer No.
Vendor Mappings
- Mapping Type:
Vendor - Third Party Reference No.: External vendor identifier
- Mapping No.: Internal BC Vendor No.
Payment Method / Payment Terms Mappings (optional)
- Mapping Type:
Payment Method CodeorPayment Terms Code - Third Party Reference No.: External value
- Mapping No.: Internal BC Payment Method / Payment Terms code
Dimension Mappings (if using dimensions)
- Mapping Type:
Shortcut Dimension 1 CodethroughShortcut Dimension 8 Code - Third Party Reference No.: External dimension value
- Mapping No.: Internal BC Dimension Value Code
Note: Bank Accounts used as balancing accounts are resolved directly (no posting-group mapping is needed).
Step 4: Configure Excel Import Mapping (For Excel Files)
If importing from Excel files:
- Navigate to Third Party Excel Import Mapping (Page 71112709)
- Create field mappings:
- Third Party Code: Same as setup record
- Mapping Type:
Field(column reference) orFixed Value - Third Party Reference No.: Column name or fixed value
- Third Party Trans. Field ID: Target field in transaction table
Required Data Fields for Payment Journal
Mandatory Fields
- Application Area: Must be "Financial"
- Transaction Type: Must be "Payment Journal"
- Gen. Jnl Account Type: G/L Account, Customer, or Vendor
- Gen. Jnl Account No.: Account number (external or BC format)
- Line Amount: Payment amount (required)
- Transaction Date: Posting date
Balancing Account Fields (typically the bank)
- Bal. Account Type: G/L Account, Customer, Vendor, or Bank Account
- Bal. Account No.: Balancing/bank account number
If the balancing account is left blank, the default Bal. Account configured on the payment journal batch is used.
Payment-Specific Fields
- Gen. Jnl Doc Type: Document type (typically Payment or Refund)
- Pay. Jnl. Bank Payment Type: Bank payment type (e.g. Computer Check, Manual Check, Electronic Payment)
- Pay. Jnl. Applies-to Doc. Type: Document type of the entry being settled
- Pay. Jnl. Applies-to Doc. No.: Document number of the entry being settled
- Pay. Jnl. Applies-to ID: Applies-to ID (takes priority — see note below)
- Pay. Jnl. Message to Recipient: Remittance message to the recipient
- Payment Method Code: Payment method
- Payment Terms Code: Payment terms
- Document No.: Document number (uses batch number series if blank)
- Ext. Document No.: External document reference
Application priority: If Pay. Jnl. Applies-to ID has a value, it is applied and the Applies-to Doc. Type/No. are ignored, because a General Journal Line cannot carry both at the same time. Use either an Applies-to ID or an Applies-to Doc. Type + No. per transaction.
Currency & Financial Fields
- Currency Code: Currency for foreign currency payments
- Exch. Rate Factor: Exchange rate factor
- Journal Amount (LCY): Local currency amount (used when no exchange rate factor supplied)
- Transaction Due Date: Due date
- Gen Jnl VAT Date: VAT reporting date
- Document Date: Document date
Journal Override Fields
- Journal Template: Override the setup default Pay. Journal Template
- Journal Batch: Override the setup default Pay. Journal Batch
Dimension Fields
- Shortcut Dimension 1-8 Code: Dimension values
- Description: Journal line description (used when "Use Import Description" is enabled)
Processing Workflow
Step 1: Import Transaction Data
Choose your import method:
Method A: File Import (XML/Excel)
- Navigate to Third Party Transactions (Page 71112707)
- Filter to the Financial application area
- Click Import Transactions
- Select your configured Third Party Setup
- Choose file to import
Method B: Direct API/Integration
- Use Business Central APIs to insert records into the
ThirdPartyTransact_THI_LINCtable
Step 2: Validate Imported Data
- In Third Party Transactions page
- Select transactions to validate (or use Ctrl+A for all)
- Click Validate action
Validation Process
The system validates:
- Setup Existence: Third Party Setup record exists for the Third Party Code
- Transaction Type: Must be "Payment Journal"
- Main Account Resolution: G/L Account, Customer, or Vendor via mapping or direct lookup
- Balancing Account Resolution: Bank Account resolved directly; G/L/Customer/Vendor via mapping or direct lookup
- Currency Validation: Currency codes and exchange rates
- Payment Terms / Payment Method: Resolved via mapping or direct lookup
- Dimension Validation: All shortcut dimensions (1-8), unless "Use Default Dimensions" is enabled
No posting group validation is performed for payment journals.
Validation Results
- Status = Checked: Transaction passed all validations
- Status = Error: Issues found (check Error Message field)
- Status = Ignore: Manually ignored transactions
Step 3: Create Payment Journal Lines
- Filter to show validated transactions (Val. Validation Status = "Checked")
- Select transactions to process
- Click Create Payment Journal Lines action
- Confirm the creation dialog ("Create Payment Journal lines?")
Journal Line Creation Logic
The system creates payment journal lines (General Journal Lines in the payment batch) as follows:
Template/Batch Resolution
- Uses the transaction's Journal Template / Journal Batch if specified
- Otherwise uses the setup's Pay. Journal Template / Pay. Journal Batch
- Removes any existing blank lines (Account No. = '') in the target batch before inserting
- Continues line numbering from the last line, or generates a document number from the batch number series
Basic Line Information
- Document Type: From Gen. Jnl Doc Type
- Posting Date: From the transaction posting date
- VAT Reporting Date: From Gen Jnl VAT Date (if specified)
- Document Date: From Document Date (if specified)
- Document No.: From import data, or the batch number series if blank
- External Document No.: From Ext. Document No.
- Line Number: Sequential (10000 increments)
- Source Code: From the payment journal template if not otherwise set
Account Assignment
- Main Account: Account Type and validated Account No.
- Balancing Account: Validated Bal. Account Type/No., or the batch default balancing account if blank
- Payment Method Code: Applied if resolved
Financial Data Assignment
- Amount: From Line Amount
- Currency Processing: Currency Code, then Currency Factor (Exch. Rate Factor) or Amount (LCY) from Journal Amount (LCY)
- Payment Terms: From validated Payment Terms Code
- Due Date: From Transaction Due Date
Payment-Specific Assignment
- Bank Payment Type: From Pay. Jnl. Bank Payment Type (if not blank)
- Applies-to ID: From Pay. Jnl. Applies-to ID (takes priority); otherwise Applies-to Doc. Type and Applies-to Doc. No. are applied
- Message to Recipient: From Pay. Jnl. Message to Recipient
Dimension Processing
- Use Default Dimensions = True: Uses account default dimensions
- Use Default Dimensions = False: Validates imported Shortcut Dimension 1-8 values and updates the dimension set
Post-Creation
- Each processed transaction is stamped with the resulting Document No. and Line No., marked Archived, recorded with the processed date/user, and moved to the Third Party Transaction Archive.
Step 4: Review and Post Payment Journal Lines
- Navigate to Payment Journals
- Select the appropriate Journal Template and Batch
- Review created journal lines:
- Verify account and balancing/bank account assignments and amounts
- Check applied entries (Applies-to ID or Applies-to Doc. No.) and verify the Applied (Yes/No) / remaining amounts
- Validate dimension assignments
- Confirm currency processing and bank payment type
- Post the payment journal when ready
Advanced Features
Document Application
- Applies-to ID: Settle one or more entries grouped under an Applies-to ID
- Applies-to Doc. Type/No.: Settle a single specific entry
- Mutual Exclusivity: A line can carry either an Applies-to ID or an Applies-to Doc. Type/No. — Applies-to ID takes priority when both are present
Bank & Balancing Account Handling
- Bank Account Balancing: Bank Account balancing accounts are resolved directly (no mapping required)
- Batch Default Balancing: Falls back to the journal batch's default Bal. Account when the transaction leaves it blank
- Mixed Account Types: Main and balancing accounts may be any supported combination of G/L Account, Customer, Vendor (and Bank Account for balancing)
Multi-Currency Processing
- Exchange Rate Handling: Supports Currency Factor method and LCY Amount method
- Automatic Calculation: Uses current exchange rates when not specified
- Currency Validation: Validates currency codes and exchange rates
Approval Workflow Integration
- Pre-Processing Checks: Validates no open/pending approval entries on the journal batch or existing journal lines
- Approval Conflict Handling: Stops processing the transaction and flags it as Error if approvals are pending
- Error Messaging: Clear error messages for approval conflicts
Flexible Journal Assignment
- Transaction-Level Override: Specify a different payment journal template/batch per transaction
- Setup-Level Default: Use setup defaults when transaction fields are blank
Validation Rules & Error Messages
Critical Errors (Will prevent processing)
"Third Party Setup for %1 was not found.""Payment Journal Template and Batch must have a default value in Third Party Setup, if Journal Template and Journal Batch is empty.""Payment Journal Template %1 and Batch %2 has open Approval Entries. Please complete the process before proceeding. Journal lines have not been created."
Mapping Errors (May have fallback options)
"No Mapped Gen. Jnl. Account Found.""No Mapped Bal. Account Found.""No Mapped Shortcut Dimension Found."
Account Resolution Errors
- Invalid account type for the main or balancing account
- Account does not exist in the respective master table (G/L, Customer, Vendor, Bank Account)
- Currency code does not exist or has no exchange rates
Troubleshooting Guide
Common Issues & Solutions
1. "No Mapped Gen. Jnl. Account Found." / "No Mapped Bal. Account Found."
Solutions:
- Create the account mapping in Third Party Mappings
- Enable "Attempt Direct Mapping" if account codes match BC
- Verify accounts exist in the appropriate master tables (G/L, Customer, Vendor, Bank Account)
- Check account number format and length
2. "Payment Journal Template and Batch must have a default value"
Solutions:
- Configure Pay. Journal Template and Pay. Journal Batch in Third Party Setup, or supply Journal Template/Batch on the transaction
- Ensure the journal template type is "Payments"
- Verify the journal batch exists and is linked to the correct template
- Check template and batch names match exactly
3. "Open Approval Entries" error
Solutions:
- Complete pending approval processes on the journal batch
- Use a different payment journal batch for imports
- Process approvals before running the import
- Configure a dedicated import batch without an approval workflow
4. Applied entries are wrong or not applied
Solutions:
- Ensure only one of Applies-to ID or Applies-to Doc. Type/No. is provided per transaction (Applies-to ID wins if both are set)
- Verify the Applies-to Doc. No. exists for the correct customer/vendor
- Check the Account No. matches the entries being applied
- Confirm the amount sign/direction matches the open entries
5. Currency validation failures
Solutions:
- Verify currency codes exist in the Currency table
- Check exchange rates are configured for the posting date
- Validate the currency amounts and exchange rate factor
- Provide Journal Amount (LCY) when no exchange rate factor is supplied
6. Dimension validation errors
Solutions:
- Check dimension values exist in BC dimension tables
- Verify dimension mapping configuration
- Ensure dimension values are valid for the posting date
- Consider enabling "Use Default Dimensions"
7. Zero journal lines created
Solutions:
- Verify transactions have "Checked" validation status
- Check the transaction type filter (must be "Payment Journal")
- Ensure Line Amount is not zero
- Review error messages on failed transactions
- Verify payment journal template and batch configuration
8. Balancing/bank account not applied
Solutions:
- Verify the balancing account exists and is the correct type (Bank Account, G/L, Customer, Vendor)
- Set a default Bal. Account on the payment journal batch as a fallback
- Validate the bank account is not blocked
Best Practices
- Test with Small Batches: Start with a few transactions to verify setup
- Use Dedicated Batches: Use separate payment journal batches for imports
- Configure Mappings: Better control and standardization than direct mapping
- Enable Fallbacks: Use "Attempt Direct Mapping" for flexibility
- Validate Before Processing: Run validation immediately after import
- Monitor Approvals: Avoid approval conflicts by using separate batches
- One Application Method: Use either Applies-to ID or Applies-to Doc. Type/No. per line, never both
- Default Bank Account: Configure a batch default Bal. Account for consistent bank settlement
- Review Before Posting: Always review applied entries and amounts before posting
- Currency Management: Validate exchange rates before importing foreign currency payments
Performance Considerations
- Batch Size: Process large imports in smaller batches for better performance
- Journal Cleanup: System automatically removes blank lines before processing
- Validation Timing: Run validation during off-peak hours for large datasets
- Archive Management: Processed transactions are automatically archived and the archive is maintained
- Line Numbering: Uses standard 10000 increments for proper sequencing
- Approval Processing: Consider approval workflow impact on processing time
Security & Permissions
Required permissions for users:
- Read/Write access to Third Party Transaction tables
- Insert/Modify access to the Gen. Journal Line table (payment journals)
- Execute permissions on processing codeunits (
ThirdPartyPayJnlMgt_THI_LINC) - Access to setup and mapping pages
- Payment journal posting permissions (if using the auto-post feature)
- Access to Chart of Accounts, Bank Accounts, Payment Methods, and Payment Terms tables
- Currency and dimension table read access