# GL-001 Gap Mapping ## Parameters | Target parameter | Tryton / TradOn exposure | Gap | Priority | Status | | --- | --- | --- | --- | --- | | `date_from` | Supported as `from_date` | None identified | Covered | Confirmed | | `date_to` | Supported as `to_date` | None identified | Covered | Confirmed | | `journal` | Supported in `account.general_ledger.account.context` | None identified | Covered | Confirmed | | `entity` | Supported through current `company` context | No explicit multi-entity selector | Medium | Open | | `account` | Accounts can be opened, selected or filtered through UI/domain/drill-down | Not a first-class explicit report context parameter | Medium | Open | | `currency` | Company currency and line `second_currency` exist | No explicit transaction-currency filter | High | Open | | Document or voucher number | Search may be possible on line or move fields | Not a first-class General Ledger parameter | Medium | Open | | `counterparty` | Party drill-down exists as an extra feature | Out of scope for GL-001 target parameters | Low | Out of Scope | | `analytic_account` | Not in current GL context | Out of scope for GL-001 target parameters | Low | Out of Scope | | `profit_center` | Not in current GL context | Out of scope for GL-001 target parameters | Low | Out of Scope | ## Filters | Target filter | Tryton / TradOn exposure | Gap | Priority | Status | | --- | --- | --- | --- | --- | | Posting date between `date_from` and `date_to` | Covered through `from_date` and `to_date`; period range is also supported | None identified | Covered | Confirmed | | Account or account range | Account range is not visible as a standard context parameter | Partial support only | Medium | Open | | Currency | No explicit transaction-currency filter | Missing | High | Open | | Journal | Covered | None identified | Covered | Confirmed | | Entity | Covered by company context | Not explicit as user-facing parameter | Medium | Open | | Document or voucher number | Can likely be searched on line or move fields | Missing as report parameter | Medium | Open | | Posted / non-posted scope | Tryton supports a `posted` boolean | Target treats posting status mainly as output information | Low | Open | ## Sorting | Target sorting requirement | Tryton / TradOn exposure | Gap | Priority | Status | | --- | --- | --- | --- | --- | | Sort by account | Account summary sorts by account | Covered at account level | Covered | Confirmed | | Sort by transaction currency | No primary transaction-currency sort identified | Missing | High | Open | | Sort by posting date | GL line view sorts by date ascending | Covered at line level | Covered | Confirmed | | Sort by document number | Document-number sort not identified in default GL line ordering | Missing or unmapped | Medium | Open | | Single flat ordered export | Account grouping and line ordering are split across views | Missing | High | Open | | Mapping of document number | `move.number` versus `move.post_number` is unclear | Mapping question | High | Open | ## Grouping and balance presentation | Target requirement | Tryton / TradOn exposure | Gap | Priority | Status | | --- | --- | --- | --- | --- | | Group by account | Account summary is account-driven | Covered at summary level | Covered | Confirmed | | Group by transaction currency | `second_currency` exists on lines | No account/currency grouped presentation | High | Open | | Initial balance columns | Account summary has `start_balance` in base currency | No transaction-currency initial balance column on each detailed line | High | Open | | Movement lines | Line drill-down exists | Not exposed together with initial and ending balance columns in one flat report | High | Open | | Ending balance columns | Account summary has `end_balance` in base currency | No transaction-currency ending balance column on each detailed line | High | Open | | Initial and ending balance in base currency | Available through account summary and line balance logic | Must be exposed as GL-001 `initial_balance_base_currency` and `ending_balance_base_currency` columns | Medium | Open | | Initial and ending balance in transaction currency | `amount_second_currency` is a signed amount | Missing transaction-currency initial and ending balance calculation | High | Open | | Debit / credit split in transaction currency | Tryton stores signed `amount_second_currency` | Missing explicit debit and credit transaction-currency columns | Medium | Open | | FX rate between transaction and base currency | Currency conversion data may exist on accounting moves or lines depending on origin | Source, rate date, direct/inverse convention and precision not mapped | High | Open | | Transaction-currency totals | Not explicit | Missing | High | Open | ## Output columns ### Covered or mostly mappable | Target column | Tryton / TradOn source candidate | Gap | Status | | --- | --- | --- | --- | | `entity` | `company` | User-facing mapping to confirm | Open | | `account` | `account.account.code` via ledger account | None identified | Confirmed | | `account_name` | `account.account.name` | None identified | Confirmed | | `base_currency` | Company currency | None identified | Confirmed | | `posting_date` | `account.move.date` / line date | None identified | Confirmed | | `journal` | `account.move.journal` | None identified | Confirmed | | `journal_entry_number` | likely `account.move.number` or `post_number` | Mapping question | Open | | `document_number` | likely `account.move.number` or invoice number depending definition | Mapping question | Open | | `posting_status` | `account.move.state` | Exposure in GL output required | Open | | `counterparty` | `account.move.line.party` | None identified | Confirmed | | `description` | line `description_used` / move description | Mapping to confirm | Open | | `reference` | move `origin`, `ext_ref`, invoice reference depending mapping | Mapping question | Open | | `debit_base_currency` | line `debit` | Sign convention transformation may be required | Open | | `credit_base_currency` | line `credit` | None identified; GL-001 preserves Tryton positive credit convention | Confirmed | | `initial_balance_base_currency` | account `start_balance` or equivalent balance before `date_from`, then previous line ending balance | Must roll by account and transaction currency | Open | | `ending_balance_base_currency` | initial balance plus debit minus credit | Calculation and ordering to implement in GL-001 export | Open | | `currency_rate` | stored accounting move line currency conversion rate, reversed when the stored convention is inverse to the report display | Rate date and precision to confirm | Open | | `entered_date` | line or move `create_date` | Exposure in GL output required | Open | | `modified_date` | line or move `write_date` | Exposure in GL output required | Open | ### Gaps or mapping questions | Target column | Tryton / TradOn exposure | Gap | Priority | Status | | --- | --- | --- | --- | --- | | `transaction_currency` | Tryton has `second_currency`; base-currency lines may have no transaction currency | Use `second_currency` else company currency | Covered | Confirmed | | `document_date` | Not exposed in current GL line view | Map from invoice date for invoice origins, move date otherwise? | High | Open | | `document_type` | Not exposed | Needs mapping from origin model or journal/type | High | Open | | `supplier_invoice_number` | Not exposed | Could map to supplier invoice reference for AP invoice origins | High | Open | | `voucher_number` | Not exposed | Need decide between `move.number`, `post_number`, `ext_ref` or blank | High | Open | | `payable_qty` | Not in standard GL | Requires custom commodity logic | Low | Open | | `uom` | Not in standard GL | Requires custom commodity logic | Low | Open | | `debit_transaction_currency` | Signed `amount_second_currency` exists | Missing explicit debit split | Medium | Open | | `credit_transaction_currency` | Signed `amount_second_currency` exists | Missing explicit credit split | Medium | Open | | `initial_balance_transaction_currency` | Not exposed | Missing account and transaction-currency initial balance before `date_from` | High | Open | | `ending_balance_transaction_currency` | Not exposed | Missing line ending balance calculated from initial balance plus debit minus credit | High | Open | | `entered_by` | Can be mapped from `create_uid` | Not exposed in GL view | Medium | Open | | `modified_by` | Can be mapped from `write_uid` | Not exposed in GL view | Medium | Open | ## Export | Target export | Tryton / TradOn exposure | Gap | Priority | Status | | --- | --- | --- | --- | --- | | CSV | Standard list export may cover CSV-like exports depending on client | Dedicated flat dataset still required | Medium | Open | | XLSX | No dedicated XLSX export identified | Missing | Medium | Open | | PDF with all detail columns | Standard printable GL is not designed for all ideal detail columns | Out of scope for first implementation | Low | Deferred | ## Controls and reconciliation | Target control | Tryton / TradOn exposure | Gap | Priority | Status | | --- | --- | --- | --- | --- | | Debit / credit reconcile by period, account and transaction currency | Posting enforces balanced moves in company currency | Transaction-currency reconciliation is not explicit | High | Open | | Initial balance + movements = ending balance by account and currency | Account start/debit/credit/end balances exist in base currency | Currency-level initial and ending balances missing | High | Open | | Base total reconciles with Trial Balance | Trial Balance reuses same account model | Covered for base currency | Covered | Confirmed | | Audit references preserved | Raw ingredients exist through move, line origin, move origin and invoice origin | Normalized exposure missing | High | Open | ## Prioritized gaps | Priority | Gap | Status | | --- | --- | --- | | High | Build or expose a flat detailed GL dataset matching `GL-001`, not only account summary plus drill-down | Open | | High | Add transaction-currency grouping, filtering, initial balances and ending balances | Open | | High | Expose and document `currency_rate` with confirmed source, direction, rate date and precision | Open | | High | Add initial and ending balance columns by account and transaction currency | Open | | High | Define mapping for `document_number`, `journal_entry_number`, `voucher_number` and `reference` | Open | | High | Normalize source document metadata: document type, document date and supplier invoice number | Open | | Medium | Split `amount_second_currency` into debit and credit transaction-currency columns | Open | | Medium | Add audit columns `entered_by`, `entered_date`, `modified_by` and `modified_date` | Open | | Medium | Add dedicated CSV / XLSX export target | Open | | Low | Add `payable_qty` and `uom` for commodity-related postings using TradOn lot, invoice or fee links | Open |