Skip to main content

year-end-closing

This skill handles simplified year-end closing tasks including depreciation, prepaid expense reversal, and tax calculation. Keywords include "year-end closing", "årsoppgjer", "årsoppgjør", "clôture annuelle", "cierre de ejercicio", "Jahresabschluss", "depreciation", "avskriving", "prepaid expense", "forskuddsbetalt", "tax expense", "skattekostnad".

Ir para a instalação

Informações da origem

Repositório
JardarIversen/ainm-2026
Última atividade na origem
22 de março de 2026 às 12:32
Idioma detectado do SKILL.md
inglês
Estrelas
18
Forks
14

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
year_end_closing
tier
3
task
T30
description
This skill handles simplified year-end closing tasks including depreciation, prepaid expense reversal, and tax calculation. Keywords include "year-end closing", "årsoppgjer", "årsoppgjør", "clôture annuelle", "cierre de ejercicio", "Jahresabschluss", "depreciation", "avskriving", "prepaid expense", "forskuddsbetalt", "tax expense", "skattekostnad".
# Year-End Closing Depreciation + prepaid reversal + tax. ALL dates: 2025-12-31. ## Call 1: GET accounts + GET postings (parallel, 2 calls) ``` GET /ledger/account?number=<all_from_prompt>,1209,8700,2920,6300&fields=id,number,name GET /ledger/posting?dateFrom=2025-01-01&dateTo=2025-12-31&fields=account(number),amount&count=500 ``` ONE GET with ALL account numbers. Include 1209, 8700, 2920, 6300, the depreciation expense account (e.g. 6010), and all asset accounts from the prompt. ## Call 2 (if needed): POST missing accounts (batch) If 1209 AND/OR 8700 not found, create in ONE batch call: ```json POST /ledger/account/list [ {"number": 1209, "name": "Akkumulert avskrivning"}, {"number": 8700, "name": "Skattekostnad"} ] ``` Only include accounts actually missing. ## MANDATORY CALCULATIONS **A. Depreciation:** annual_depreciation = prompt_amount / useful_life_years (round to 2 decimals) **B. Prepaid reversal:** Sum ALL postings on prepaid account (e.g. 1700) = remaining balance to reverse. Find the paired expense account (4000-8699) from posting data — typically 6300. **C. Tax:** Revenue = abs(sum of postings on 3000-3999). Expenses = sum of positive postings on 4000-8699. Adjustments = total depreciation + prepaid remaining. Tax = max(0, (Revenue - Expenses - Adjustments) × 0.22), round to 2 decimals. ## Calls 3-7: POST 5 vouchers (ALL 5 MUST be posted) ### Voucher 1-3: Depreciation (one per asset, separate vouchers) ```json POST /ledger/voucher { "date": "2025-12-31", "description": "Avskriving <asset_name>", "postings": [ {"date": "2025-12-31", "account": {"id": <depr_expense_id>}, "amountGross": <annual_depr>, "amountGrossCurrency": <annual_depr>, "row": 1}, {"date": "2025-12-31", "account": {"id": <1209_id>}, "amountGross": -<annual_depr>, "amountGrossCurrency": -<annual_depr>, "row": 2} ] } ``` ### Voucher 4: Prepaid reversal ```json POST /ledger/voucher { "date": "2025-12-31", "description": "Reversering forskuddsbetalt", "postings": [ {"date": "2025-12-31", "account": {"id": <expense_acct_id>}, "amountGross": <remaining_balance>, "amountGrossCurrency": <remaining_balance>, "row": 1}, {"date": "2025-12-31", "account": {"id": <1700_id>}, "amountGross": -<remaining_balance>, "amountGrossCurrency": -<remaining_balance>, "row": 2} ] } ``` ### Voucher 5: Tax provision ```json POST /ledger/voucher { "date": "2025-12-31", "description": "Skattekostnad 2025", "postings": [ {"date": "2025-12-31", "account": {"id": <8700_id>}, "amountGross": <tax>, "amountGrossCurrency": <tax>, "row": 1}, {"date": "2025-12-31", "account": {"id": <2920_id>}, "amountGross": -<tax>, "amountGrossCurrency": -<tax>, "row": 2} ] } ``` **ALL 5 vouchers MUST be posted, even if tax = 0. Total: 7-8 calls, 0 errors.** ## STRICT RULES - **Depreciation = prompt_amount / useful_life_years.** Use the amount stated in the prompt. - **Prepaid = remaining balance** from posting data. NOT the full prompt amount. - Always use `amountGross` AND `amountGrossCurrency`. Never `amount`. - Use IDs from POST response directly. Never re-fetch. - **ALL 5 vouchers MUST be posted.** Do NOT skip tax voucher even if tax = 0.
Ver no GitHub