Your Accounts Payable Payment Processing Data Template

Microsoft Dynamics 365
Your Accounts Payable Payment Processing Data Template

Your Accounts Payable Payment Processing Data Template

This template provides a comprehensive framework for organizing your financial data to improve visibility into your payment workflows. It includes a structured list of attributes and activities to help you build a high quality event log from your enterprise resource planning system. By using these guidelines, you can identify inefficiencies and streamline the path from invoice receipt to final settlement.
  • Process specific attributes for financial analysis
  • Critical activity milestones for payment tracking
  • Detailed extraction instructions for Dynamics 365
New to event logs? Learn how to create a process mining event log.

Accounts Payable Payment Processing Attributes

These data fields represent the core dimensions required to analyze your payment cycles and ensure high levels of transparency throughout the accounts payable process.
5 Required 9 Recommended 6 Optional
Name Description
Activity
Activity
The specific task or status change that occurred.
Description

This attribute describes the event or step performed in the process, such as 'Invoice Created', 'Invoice Approved', or 'Payment Posted'. It transforms technical transaction types and workflow status changes into readable business events.

In Dynamics 365, these activities are often derived from a combination of table inserts (e.g., a new record in VendInvoiceJour), workflow history tracking, or status updates in the VendInvoiceInfoTable.

Why it matters

It defines the process flow and sequence of events for the process map.

Where to get

Derived from various transaction tables and workflow history logs

Examples
Invoice CreatedInvoice ApprovedPayment Generated
Event Time
EventTime
The timestamp when the activity occurred.
Description

This attribute records the exact date and time when a specific activity took place. It is used to sequence events chronologically and calculate durations between steps.

For Dynamics 365, this is usually sourced from CreatedDateTime, ModifiedDateTime, or specific transaction date fields like TransDate depending on the table being queried.

Why it matters

Essential for calculating cycle times, lead times, and identifying bottlenecks.

Where to get

System fields CreatedDateTime or ModifiedDateTime on transaction tables

Examples
2023-10-01T08:30:00Z2023-10-01T14:15:22Z2023-10-05T09:00:00Z
Invoice Number
InvoiceNumber
The unique identifier assigned to the vendor invoice.
Description

The Invoice Number serves as the definitive case identifier for this process view. It uniquely groups all events pertaining to a single vendor invoice, allowing for a comprehensive analysis of its journey from reception to settlement.

In Microsoft Dynamics 365, this typically corresponds to the InvoiceId field found in tables such as VendInvoiceJour or VendInvoiceInfoTable. It is the primary key for tracking the liability against a specific vendor.

Why it matters

It is the fundamental key for linking disjointed AP activities into a single process instance.

Where to get

Table: VendInvoiceJour, Field: InvoiceId

Examples
INV-2023-00198223344ACME-OCT-22
Last Data Update
LastDataUpdate
The timestamp when the data was extracted or refreshed.
Description

Indicates the freshness of the data used for the analysis. It helps users understand if they are looking at real-time data or a snapshot from a previous period.

This is typically generated by the ETL (Extract, Transform, Load) process rather than being a field within Dynamics 365 itself.

Why it matters

Critical for establishing trust in the dashboards and KPIs.

Where to get

Generated by the extraction script

Examples
2023-10-25T12:00:00Z2023-11-01T06:00:00Z
Source System
SourceSystem
The name of the system where the data originated.
Description

Identifies the source software or environment from which the process data was extracted. In this context, it will consistently indicate the Microsoft Dynamics 365 instance.

This is particularly useful in multi-system landscapes where data might be blended from ERPs and external scanning solutions.

Why it matters

Ensures data lineage and traceability in multi-system analyses.

Where to get

Hardcoded or configured during extraction

Examples
Dynamics 365 F&OD365 PRODMicrosoft Dynamics
Company Code
CompanyCode
The legal entity or subsidiary identifier.
Description

Represents the legal entity within the organization where the invoice is being processed. In Microsoft Dynamics 365, this is strictly enforced via the DataAreaId system field.

This attribute is essential for the 'End to End Lead Time Analysis', enabling comparisons across different subsidiaries or geographical units.

Why it matters

Allows for comparative analysis across different business units or countries.

Where to get

Table: VendInvoiceJour, Field: DataAreaId

Examples
USMFDEMFGBSI
Department
Department
The department responsible for the cost.
Description

The financial dimension indicating the internal department. In Dynamics 365, dimensions are stored dynamically (often in DefaultDimension), requiring a specialized lookup to resolve the 'Department' specific value.

This attribute is used in the 'Vendor Relationship Complexity View' to see which internal departments generate the most AP volume.

Why it matters

Enables organizational drill-down and accountability analysis.

Where to get

Table: VendInvoiceJour, Field: DefaultDimension (Requires DimensionAttributeLevelValue view)

Examples
ITFinanceOperations
Due Date
DueDate
The date by which the invoice should be paid.
Description

The contractual date by which the payment must be settled to avoid penalties. In Dynamics 365, this is stored as DueDate on the invoice header or transaction record.

It is the primary baseline for the 'On-Time Payment Rate' KPI and helps prioritize work in the 'AP Process Throughput and Volume' view.

Why it matters

The benchmark for measuring on-time payment performance.

Where to get

Table: VendInvoiceJour or VendTrans, Field: DueDate

Examples
2023-11-302023-12-15
Invoice Amount
InvoiceAmount
The total monetary value of the invoice.
Description

The total value of the invoice in the transaction currency. In Dynamics 365, this is found in fields like InvoiceAmount or AmountCur within the invoice journal tables.

Used in the 'Duplicate Payment Risk Detection' dashboard to correlate amounts with vendor details.

Why it matters

Critical for analyzing spend volume and financial risk.

Where to get

Table: VendInvoiceJour, Field: InvoiceAmount

Examples
1500.00245.5010000.00
Invoice Date
InvoiceDate
The document date stated on the invoice.
Description

The date printed on the vendor's invoice. In Dynamics 365, this is the InvoiceDate field. It differs from the creation date (when it was entered into the system).

Used in 'End to End Lead Time Analysis' to measure the total lifecycle from the vendor's perspective.

Why it matters

Defines the start of the aging period for the invoice.

Where to get

Table: VendInvoiceJour, Field: InvoiceDate

Examples
2023-10-012023-10-15
Purchase Order Number
PurchaseOrderNumber
The reference number of the associated purchase order.
Description

Links the invoice to the original purchasing document. In Dynamics 365, this is the PurchId field.

This attribute supports the 'PO Match and Discrepancy Trends' dashboard by distinguishing between PO-backed invoices and non-PO invoices.

Why it matters

Essential for analyzing the procure-to-pay match rate.

Where to get

Table: VendInvoiceJour, Field: PurchId

Examples
PO-000455000342PO-22-998
User ID
UserId
The identifier of the user who performed the activity.
Description

Identifies the system user responsible for a specific activity, such as approving an invoice or posting a payment. Sourced from CreatedBy or ModifiedBy fields in D365.

Used in the 'Payment Block and Friction Analysis' to see if specific processors trigger more blocks than others.

Why it matters

Enables analysis of resource behavior and segregation of duties.

Where to get

System fields CreatedBy/ModifiedBy on transaction/history tables

Examples
jdoeadminworkflow_sys
Vendor Account
VendorAccount
The unique account number for the vendor.
Description

The unique identifier for the supplier involved in the transaction. In Dynamics 365, this corresponds to the AccountNum field in the VendTable.

This attribute is central to the 'Vendor Relationship Complexity View', allowing analysis of performance and friction per specific vendor relationship.

Why it matters

Enables segmentation of process performance by supplier.

Where to get

Table: VendInvoiceJour, Field: InvoiceAccount or OrderAccount

Examples
US-101V000452001
Vendor Name
VendorName
The name of the vendor organization.
Description

The descriptive name of the supplier. In D365, the vendor account acts as a foreign key to the Global Address Book (DirPartyTable), where the actual Name is stored.

Providing human-readable names facilitates the 'Vendor Relationship Complexity View' and makes dashboards accessible to business users.

Why it matters

Provides context for the Vendor Account number.

Where to get

Table: DirPartyTable (via VendTable), Field: Name

Examples
Contoso Office SupplyFabrikam ElectronicsLitware Inc.
Cash Discount Date
CashDiscountDate
The date by which payment must occur to receive a discount.
Description

The deadline for capturing early payment incentives. In Dynamics 365, this is the CashDiscDate.

This attribute powers the 'Cash Discount Capture Performance' dashboard, allowing the organization to quantify missed savings opportunities.

Why it matters

Directly impacts the financial efficiency KPI of the process.

Where to get

Table: VendInvoiceJour or VendTrans, Field: CashDiscDate

Examples
2023-10-102023-10-20
Currency
Currency
The currency code of the invoice.
Description

The ISO code for the currency in which the invoice was issued. In Dynamics 365, this is the CurrencyCode field.

Important for standardizing amounts in the 'Activity Amount' mapping if multi-currency normalization is required.

Why it matters

Necessary context for interpreting financial values.

Where to get

Table: VendInvoiceJour, Field: CurrencyCode

Examples
USDEURGBP
Is Payment Blocked
IsPaymentBlocked
Flag indicating if the invoice is currently blocked for payment.
Description

A boolean indicator identifying if the invoice is on hold. In Dynamics 365, this is often derived from the OnHold status in VendTrans or VendInvoiceInfoTable.

This is the core driver for the 'Payment Block and Friction Analysis', highlighting process interruptions.

Why it matters

Identifies immediate friction points and manual interventions.

Where to get

Table: VendTrans, Field: Approved (inverted) or specialized Hold fields

Examples
truefalse
Payment Method
PaymentMethod
The method used to pay the invoice (e.g., Check, Wire, EFT).
Description

Defines how the funds are transferred to the vendor. In Dynamics 365, this is the PaymMode field.

This attribute is used in the 'Payment Execution Lead Times' dashboard to evaluate the efficiency of different payment batch types.

Why it matters

Explains variations in the payment execution phase.

Where to get

Table: VendInvoiceJour (joined to PaymMode info) or VendTrans

Examples
CHECKACHWIRE
Payment Terms
PaymentTerms
The code representing the agreed payment terms.
Description

The configuration code that dictates due dates and discounts (e.g., Net30). In Dynamics 365, this is the PaymTermId.

Analyzed alongside 'Cycle Time' to see if process delays are violating agreed terms.

Why it matters

Provides context for the Due Date calculation.

Where to get

Table: VendInvoiceJour, Field: PaymTermId

Examples
Net302%10Net30COD
Voucher Number
VoucherNumber
The ledger voucher number associated with the transaction.
Description

The internal General Ledger identifier for the accounting entry. In Dynamics 365, the Voucher field connects the invoice to the General Ledger transactions.

While technical, it is useful for the 'Process Path and Compliance Audit' to trace entries back to the GL for reconciliation.

Why it matters

Key for financial audit and reconciliation.

Where to get

Table: VendInvoiceJour, Field: LedgerVoucher

Examples
VOU-10023INV-ACC-992
Required Recommended Optional

Accounts Payable Payment Processing Activities

This list identifies the essential steps and event types that your event log should capture to accurately reflect the lifecycle of an invoice payment.
7 Recommended 5 Optional
Activity Description
Invoice Approved
The workflow instance for the pending invoice reaches a completed or approved status. The invoice is now ready to be posted to the ledger.
Why it matters

Calculates the Average Approval Lead Time. Delays here directly impact the ability to capture early payment discounts.

Where to get

WorkflowTrackingStatusTable.CreatedDateTime where TrackingStatus is Completed. Alternatively, VendInvoiceInfoTable.RequestStatus equals Approved.

Capture

Logged when workflow instance completes

Event type explicit
Invoice Created
The initial creation of a pending vendor invoice record in the system. This marks the entry of the invoice into the Dynamics 365 workflow, either manually or via data entity import.
Why it matters

Establishes the start time for the process lead time calculations. It allows organizations to measure how long invoices sit in the system before being processed or posted.

Where to get

VendInvoiceInfoTable.CreatedDateTime or VendInvoiceInfoTable.RecId creation timestamp. This represents the Pending Vendor Invoice header.

Capture

Logged when record created in VendInvoiceInfoTable

Event type explicit
Invoice Matched to PO
The system successfully links the invoice line to a Purchase Order or Product Receipt. This activity signifies the validation of the invoice against the procurement order.
Why it matters

Critical for the First-Pass PO Matching Rate KPI. It differentiates between touchless processing and invoices requiring manual intervention.

Where to get

VendInvoiceInfoLine.PurchId and VendInvoiceInfoTable.MatchStatus. Inferred when MatchStatus changes to Passed.

Capture

Compare MatchStatus field before/after

Event type inferred
Invoice Posted
The invoice is posted to the General Ledger, creating a liability in the system. The record moves from pending tables to the posted transaction tables.
Why it matters

A major milestone indicating the financial recognition of debt. This activity enables the invoice to be selected for payment.

Where to get

Creation of record in VendInvoiceJour and VendTrans. The TransDate represents the posting date.

Capture

Logged when transaction X executed

Event type explicit
Payment Generated
The system generates the payment file (EFT, ISO20022) or prints checks. The payment status on the journal line updates to Sent or Generated.
Why it matters

Supports the Approved-to-Executed Lag Time KPI. It confirms that the instruction to pay has been generated.

Where to get

LedgerJournalTrans.PaymentStatus changes to Sent/Recieved. Often inferred from updates to the line.

Capture

Compare PaymentStatus field before/after

Event type inferred
Payment Journal Created
The invoice is selected and added to a Payment Journal line. This indicates the intention to pay and usually initiates the payment review workflow.
Why it matters

Marks the transition from liability to cash disbursement processing. Used to measure Payment Execution Lead Times.

Where to get

LedgerJournalTrans.CreatedDateTime. The invoice is linked via the MarkedInvoice field or settlement tables.

Capture

Logged when record created in LedgerJournalTrans

Event type explicit
Payment Posted
The Payment Journal is posted to the General Ledger, settling the invoice and clearing the vendor balance. This completes the financial process.
Why it matters

The final activity for the Average Invoice-to-Payment Cycle Time. It confirms the accounting entries for cash reduction are finalized.

Where to get

LedgerJournalTrans is posted. Updates VendTrans to show settlement. The actual event is the posting of the journal.

Capture

Logged when transaction X executed

Event type explicit
Invoice Match Failed
The matching process identifies a discrepancy between the invoice and the PO/Receipt (price or quantity variance). This often halts the process until resolved.
Why it matters

Identifies specific friction points in the matching process. Supports the PO Match and Discrepancy Trends dashboard.

Where to get

VendInvoiceInfoTable.MatchStatus changes to Failed or Discrepancy. Also visible in VendInvoiceInfoLine matching variances.

Capture

Compare MatchStatus field before/after

Event type inferred
Invoice Submitted for Approval
The pending invoice is submitted to the workflow engine for review. This marks the transition from data entry/matching to the authorization phase.
Why it matters

Marks the start of the approval cycle time. Essential for analyzing the efficiency of internal hierarchies.

Where to get

WorkflowTrackingStatusTable.CreatedDateTime where ContextTableId equals VendInvoiceInfoTable ID and Status is Submitted.

Capture

Logged when workflow instance initiated

Event type explicit
Invoice Updated
Records changes made to the invoice header or lines prior to posting. Frequent updates may indicate data extraction issues or manual corrections required during validation.
Why it matters

High frequency of updates suggests rework loops or poor data quality from the source (e.g., OCR errors). This supports the Rework and Data Accuracy Monitor.

Where to get

Database log (SysDatabaseLog) on VendInvoiceInfoTable if enabled, or inferred from ModifiedDateTime changes if polling frequency is high.

Capture

Compare ModifiedDateTime on subsequent extracts

Event type inferred
Payment Block Applied
A hold is placed on the vendor transaction preventing it from being selected in a payment proposal. This is often done manually for disputes.
Why it matters

Supports Payment Block and Friction Analysis. Reveals manual interventions that delay cash outflow.

Where to get

VendTrans.Approved flag is set to No, or specific OnHold status fields are populated. Requires tracking updates to VendTrans.

Capture

Compare status field before/after

Event type inferred
Payment Journal Approved
The Payment Journal workflow is approved, authorizing the generation of payments. This is the final check before funds are prepared for transfer.
Why it matters

Separates the administrative preparation of payments from the authorization bottleneck.

Where to get

WorkflowTrackingStatusTable linking to the LedgerJournalTable (Header) ID. Status is Completed.

Capture

Logged when workflow instance completes

Event type explicit
Recommended Optional

Extraction Guides

How to get your data from Microsoft Dynamics 365