Table of Contents

Table "VAT Entry"

ID 254
Namespace: Microsoft.Finance.VAT.Ledger

Central ledger table for recording VAT transactions with comprehensive support for multiple VAT calculation methods. Stores detailed VAT information including unrealized VAT, non-deductible VAT, and multi-currency processing for audit and reporting.

Remarks

Primary transaction table for VAT ledger functionality with integration to G/L entries and support for VAT settlements. Extensibility: VAT entry creation, G/L account adjustment, and unrealized VAT processing events available.

Properties

Name Value
Caption VAT Entry
LookupPageID Page Microsoft.Finance.VAT.Ledger."VAT Entries"
Permissions TableData "Sales Invoice Header" = rm, TableData "Sales Cr.Memo Header" = rm, #if not CLEAN28 TableData Microsoft.Service.History."Service Invoice Header" = rm, TableData Microsoft.Service.History."Service Cr.Memo Header" = rm, #endif TableData "Issued Reminder Header" = rm, TableData "Issued Fin. Charge Memo Header" = rm, TableData "Purch. Inv. Header" = rm, TableData "Purch. Cr. Memo Hdr." = rm, TableData "G/L Entry" = rm, TableData "VAT Entry" = m
DataClassification CustomerContent

Fields

Name Type Description
"Entry No." Integer

Unique sequential identifier for the VAT entry used for referencing and linking with other records.

"Gen. Bus. Posting Group" Code[20]

General business posting group for linking transactions to appropriate general ledger accounts.

"Gen. Prod. Posting Group" Code[20]

General product posting group for linking item or service transactions to appropriate general ledger accounts.

"Posting Date" Date

Date when the VAT entry was posted to the ledger for financial reporting and audit trail purposes.

"Document No." Code[20]

Document number from the source transaction that generated this VAT entry.

"Document Type" Enum Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Document Type"

Type of document that generated this VAT entry, such as invoice, credit memo, or payment.

Type Enum Microsoft.Foundation.Enums."General Posting Type"

Posting type indicating whether this is a purchase, sale, or settlement VAT entry.

Base Decimal

Base amount on which the VAT calculation is performed, excluding the VAT amount itself.

Amount Decimal

VAT amount calculated from the base amount using the applicable VAT rate and calculation method.

"VAT Calculation Type" Enum Microsoft.Foundation.Enums."Tax Calculation Type"

Method used for calculating VAT, such as normal VAT, reverse charge, or sales tax.

"Bill-to/Pay-to No." Code[20]

Customer or vendor number associated with this VAT entry for bill-to or pay-to identification.

"EU 3-Party Trade" Boolean

Indicates whether this transaction involves three-party trade within the European Union.

"User ID" Code[50]

User ID of the person who created this VAT entry for audit trail and responsibility tracking.

"Source Code" Code[10]

Source code indicating the journal or process that generated this VAT entry.

"Reason Code" Code[10]

Reason code providing additional context for why this VAT entry was created.

"Closed by Entry No." Integer

Entry number of the VAT settlement entry that closed this VAT entry during VAT return processing.

Closed Boolean

Indicates whether this VAT entry has been closed through VAT settlement processing.

"Country/Region Code" Code[10]

Country or region code of the customer or vendor associated with this VAT entry.

"Internal Ref. No." Text[30]

Internal reference number used for cross-referencing with other systems or processes.

"Transaction No." Integer

Transaction number linking this VAT entry with related general ledger and other ledger entries.

"Unrealized Amount" Decimal

Unrealized VAT amount when using unrealized VAT functionality for payment-based VAT recognition.

"Unrealized Base" Decimal

Unrealized base amount when using unrealized VAT functionality for payment-based recognition.

"Remaining Unrealized Amount" Decimal

Remaining unrealized VAT amount that has not yet been realized through payment processing.

"Remaining Unrealized Base" Decimal

Remaining unrealized base amount that has not yet been realized through payment processing.

"External Document No." Code[35]

External document number from the source document that generated this VAT entry.

"No. Series" Code[20]

Number series code used for generating the document number of this VAT entry.

"Tax Area Code" Code[20]

Tax area code for sales tax calculations in jurisdictions using sales tax instead of VAT.

"Tax Liable" Boolean

Indicates whether the customer or vendor is liable for tax calculations.

"Tax Group Code" Code[20]

Tax group code for categorizing items or services for sales tax calculations.

"Use Tax" Boolean

Indicates whether this transaction involves use tax calculations for cross-border sales.

"Tax Jurisdiction Code" Code[10]

Tax jurisdiction code specifying which tax authority has jurisdiction over this transaction.

"Tax Group Used" Code[20]

Tax group code that was actually used for calculating tax on this specific transaction.

"Tax Type" Option

Type of tax applied to this transaction, such as sales tax or excise tax.

"Tax on Tax" Boolean

Indicates whether this transaction involves tax calculated on top of existing tax amounts.

"Sales Tax Connection No." Integer

Connection number linking this VAT entry to related sales tax calculation entries.

"Unrealized VAT Entry No." Integer

Reference to the related unrealized VAT entry when using unrealized VAT functionality.

"VAT Bus. Posting Group" Code[20]

VAT business posting group specifying the VAT treatment for the customer or vendor type.

"VAT Prod. Posting Group" Code[20]

VAT product posting group specifying the VAT treatment for the item or service type.

"Additional-Currency Amount" Decimal

VAT amount in the additional reporting currency for multi-currency reporting requirements.

"Additional-Currency Base" Decimal

Base amount in the additional reporting currency for multi-currency reporting requirements.

"Add.-Currency Unrealized Amt." Decimal

Unrealized VAT amount in the additional reporting currency for unrealized VAT functionality.

"Add.-Currency Unrealized Base" Decimal

Unrealized base amount in the additional reporting currency for unrealized VAT functionality.

"VAT Base Discount %" Decimal

VAT base discount percentage applied to the base amount before VAT calculation.

"Add.-Curr. Rem. Unreal. Amount" Decimal

Remaining unrealized amount in the additional reporting currency that has not yet been realized.

"Add.-Curr. Rem. Unreal. Base" Decimal

Remaining unrealized base amount in the additional reporting currency that has not yet been realized.

"VAT Difference" Decimal

Difference between calculated and manually entered VAT amounts for VAT correction purposes.

"Add.-Curr. VAT Difference" Decimal

VAT difference amount in the additional reporting currency for multi-currency VAT corrections.

"Ship-to/Order Address Code" Code[10]

Ship-to or order address code for identifying delivery or order address variations.

"Document Date" Date

Date of the original document that generated this VAT entry for audit trail purposes.

"VAT Registration No." Text[20]

VAT registration number of the customer or vendor for VAT reporting and compliance.

Reversed Boolean

Indicates whether this VAT entry has been reversed as part of a correction transaction.

"Reversed by Entry No." Integer

Entry number of the VAT entry that reversed this entry for audit trail and correction tracking.

"Reversed Entry No." Integer

Entry number of the original VAT entry that was reversed by this correction entry.

"EU Service" Boolean

Indicates whether this VAT entry represents an EU service transaction for VAT reporting purposes.

"Base Before Pmt. Disc." Decimal

Base amount before payment discount application for accurate VAT calculation tracking.

"Source Currency VAT Amount" Decimal

VAT amount in the source currency of the original transaction for multi-currency processing.

"Source Currency VAT Base" Decimal

Base amount in the source currency of the original transaction for multi-currency processing.

"Source Currency Code" Code[10]

Currency code of the source transaction when different from the local currency.

"Source Currency Factor" Decimal

Exchange rate factor used for converting from source currency to local currency.

"Journal Templ. Name" Code[10]

Journal template name used for creating this VAT entry through journal posting.

"Journal Batch Name" Code[10]

Journal batch name used for creating this VAT entry through journal posting.

"Realized Amount" Decimal

Realized VAT amount when unrealized VAT is converted to realized through payment processing.

"Realized Base" Decimal

Realized base amount when unrealized VAT is converted to realized through payment processing.

"Add.-Curr. Realized Amount" Decimal

Realized VAT amount in additional currency when unrealized VAT is converted through payment processing.

"Add.-Curr. Realized Base" Decimal

Realized base amount in additional currency when unrealized VAT is converted through payment processing.

"G/L Acc. No." Code[20]

General ledger account number associated with this VAT entry for financial reporting integration.

"VAT Reporting Date" Date

VAT reporting date used for VAT return preparation and regulatory compliance reporting.

"G/L Register No." Integer

Specifies the G/L register number that groups related G/L entries from the same posting.

"Non-Deductible VAT %" Decimal

Percentage of VAT that is non-deductible based on business use or regulatory restrictions.

"Non-Deductible VAT Base" Decimal

Base amount for non-deductible VAT calculation when VAT cannot be fully reclaimed.

"Non-Deductible VAT Amount" Decimal

Non-deductible VAT amount that cannot be reclaimed and must be treated as cost.

"Non-Deductible VAT Base ACY" Decimal

Non-deductible VAT base amount in the additional currency for multi-currency reporting.

"Non-Deductible VAT Amount ACY" Decimal

Non-deductible VAT amount in the additional currency for multi-currency reporting.

"Non-Deductible VAT Diff." Decimal

Difference between calculated and manually entered non-deductible VAT amounts for correction purposes.

"Non-Deductible VAT Diff. ACY" Decimal

Non-deductible VAT difference amount in the additional currency for multi-currency corrections.

SystemId Guid
SystemCreatedAt DateTime
SystemCreatedBy Guid
SystemModifiedAt DateTime
SystemModifiedBy Guid
SystemCreatedByUserName Text[50]
SystemCreatedByFullName Text[80]
SystemModifiedByUserName Text[50]
SystemModifiedByFullName Text[80]
SystemRowVersion BigInteger

Methods

GetLastEntryNo

[InherentPermissions(TableData,254,r)]
procedure GetLastEntryNo(): Integer

Returns

Type Description
Integer

GetUnrealizedVATPart

Calculates the unrealized VAT portion based on payment settlement and unrealized VAT configuration.

procedure GetUnrealizedVATPart(SettledAmount: Decimal; Paid: Decimal; Full: Decimal; TotalUnrealVATAmountFirst: Decimal; TotalUnrealVATAmountLast: Decimal): Decimal

Parameters

Name Type Description
SettledAmount Decimal

Amount being settled in the current payment

Paid Decimal

Total amount paid so far

Full Decimal

Full invoice amount

TotalUnrealVATAmountFirst Decimal

Total unrealized VAT amount for first payment method

TotalUnrealVATAmountLast Decimal

Total unrealized VAT amount for last payment method

Returns

Type Description
Decimal

Calculated unrealized VAT amount to be realized

GetUnrealizedVATType

Retrieves the unrealized VAT type configuration for this VAT entry.

procedure GetUnrealizedVATType(): Integer

Returns

Type Description
Integer

Unrealized VAT type setting from VAT posting setup or tax jurisdiction

CopyFromGenJnlLine

Copies VAT-related data from a General Journal Line to populate this VAT entry.

procedure CopyFromGenJnlLine(GenJnlLine: Record "Gen. Journal Line")

Parameters

Name Type Description
GenJnlLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line containing source data for VAT entry creation

CopyPostingDataFromGenJnlLine

Copies posting-related data from a General Journal Line to this VAT entry.

procedure CopyPostingDataFromGenJnlLine(GenJnlLine: Record "Gen. Journal Line")

Parameters

Name Type Description
GenJnlLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line containing posting data

SetGLAccountNo

Sets the G/L Account No. field for this VAT entry by creating missing VAT Entry - G/L Entry links.

procedure SetGLAccountNo(WithUI: Boolean)

Parameters

Name Type Description
WithUI Boolean

Whether to show user interface elements during processing

SetGLAccountNoWithResponse

Sets the G/L Account No. field for this VAT entry with user response handling.

procedure SetGLAccountNoWithResponse(WithUI: Boolean; ShowConfirm: Boolean; var Response: Boolean)

Parameters

Name Type Description
WithUI Boolean

Whether to show user interface elements during processing

ShowConfirm Boolean

Whether to show confirmation dialogs to user

Response Boolean

User response from any confirmation dialogs

CheckGLAccountNoFilled

Validates that all VAT entries in the current filter have their G/L Account No. field populated.

procedure CheckGLAccountNoFilled()

CopyAmountsFromVATEntry

Copies amount fields from another VAT entry, optionally with opposite sign for reversals.

procedure CopyAmountsFromVATEntry(VATEntry: Record "VAT Entry"; WithOppositeSign: Boolean)

Parameters

Name Type Description
VATEntry Table Microsoft.Finance.VAT.Ledger."VAT Entry"

Source VAT entry to copy amounts from

WithOppositeSign Boolean

Whether to reverse the sign of copied amounts

SetUnrealAmountsToZero

Resets all unrealized VAT amount fields to zero for this VAT entry.

procedure SetUnrealAmountsToZero()

Events

OnAfterCopyFromGenJnlLine

Integration event raised after copying data from General Journal Line to VAT Entry.

[IntegrationEvent(False,False)]
procedure OnAfterCopyFromGenJnlLine(var VATEntry: Record "VAT Entry"; GenJournalLine: Record "Gen. Journal Line")

Parameters

Name Type Description
VATEntry Table Microsoft.Finance.VAT.Ledger."VAT Entry"

VAT entry record that was populated from journal line

GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

Source general journal line

OnAfterOnCopyAmountsFromVATEntry

Integration event raised after copying amounts from another VAT entry.

[IntegrationEvent(False,False)]
local procedure OnAfterOnCopyAmountsFromVATEntry(var VATEntry: Record "VAT Entry"; WithOppositeSign: Boolean; var RecVATEntry: Record "VAT Entry")

Parameters

Name Type Description
VATEntry Table Microsoft.Finance.VAT.Ledger."VAT Entry"

Source VAT entry providing the amounts

WithOppositeSign Boolean

Whether amounts were copied with opposite sign

RecVATEntry Table Microsoft.Finance.VAT.Ledger."VAT Entry"

Target VAT entry that received the copied amounts

OnBeforeSetGLAccountNo

Integration event raised before setting G/L Account No. on VAT entry.

[IntegrationEvent(False,False)]
local procedure OnBeforeSetGLAccountNo(var VATEntry: Record "VAT Entry"; var IsHandled: Boolean; var Response: Boolean; WithUI: Boolean; ShowConfirm: Boolean)

Parameters

Name Type Description
VATEntry Table Microsoft.Finance.VAT.Ledger."VAT Entry"

VAT entry being processed

IsHandled Boolean

Set to true to skip standard processing

Response Boolean

User response from confirmation dialogs

WithUI Boolean

Whether UI elements should be shown

ShowConfirm Boolean

Whether confirmation dialogs should be displayed

OnAfterSetGLAccountNo

Integration event raised after setting G/L Account No. on VAT entry.

[IntegrationEvent(False,False)]
local procedure OnAfterSetGLAccountNo(var VATEntry: Record "VAT Entry"; var IsHandled: Boolean; WithUI: Boolean)

Parameters

Name Type Description
VATEntry Table Microsoft.Finance.VAT.Ledger."VAT Entry"

VAT entry that was processed

IsHandled Boolean

Whether the operation was handled by subscriber

WithUI Boolean

Whether UI elements were shown during processing

See also