import type * as Merge from "../../../index"; /** * # The GeneralLedgerTransaction Object * ### Description * A General Ledger Entry is a record of a financial transaction that is posted to the general ledger, the central repository of a company’s financial data. * * The `GeneralLedgerTransaction` object is a singular endpoint to pull all transactions posted to a company’s general ledger. The transaction that generated the `GeneralLedgerTransaction` can be found by referencing the `underlying_transaction_type` and `underlying_transaction_remote_id` fields. * * The lines of a `GeneralLedgerTransaction` object will always have equal amounts of debits and credits. * * ### Usage Example * Fetch from the `GET GeneralLedgerTransaction` endpoint and view a general ledger transaction. */ export interface GeneralLedgerTransaction { id?: string; /** The third-party API ID of the matching object. */ remoteId?: string; /** The datetime that this object was created by Merge. */ createdAt?: Date; /** The datetime that this object was modified by Merge. */ modifiedAt?: Date; /** The third party remote ID of the underlying transaction. */ underlyingTransactionRemoteId?: string; /** * The type of the underlying transaction. * * * `INVOICE` - INVOICE * * `EXPENSE` - EXPENSE * * `TRANSACTION` - TRANSACTION * * `JOURNAL_ENTRY` - JOURNAL_ENTRY * * `PAYMENT` - PAYMENT * * `VENDOR_CREDIT` - VENDOR_CREDIT * * `CREDIT_NOTE` - CREDIT_NOTE */ underlyingTransactionType?: Merge.accounting.GeneralLedgerTransactionUnderlyingTransactionType; /** The accounting period that the GeneralLedgerTransaction was generated in. */ accountingPeriod?: Merge.accounting.GeneralLedgerTransactionAccountingPeriod; /** The company the GeneralLedgerTransaction belongs to. */ company?: Merge.accounting.GeneralLedgerTransactionCompany; /** When the third party's GeneralLedgerTransaction entry was updated. */ remoteUpdatedAt?: Date; /** When the third party's GeneralLedgerTransaction entry was created. */ remoteCreatedAt?: Date; trackingCategories?: (Merge.accounting.GeneralLedgerTransactionTrackingCategoriesItem | undefined)[]; /** The date that the transaction was posted to the general ledger. */ postingDate?: Date; /** A list of “General Ledger Transaction Applied to Lines” objects. */ generalLedgerTransactionLines?: Merge.accounting.GeneralLedgerTransactionGeneralLedgerTransactionLinesItem[]; /** Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). */ remoteWasDeleted?: boolean; fieldMappings?: Record; remoteData?: Merge.accounting.RemoteData[]; }