← ClaudeAtlas

pennylane-accesslisted

Foundation for the Pennylane Company API v2 in a multi-company setup: where tokens live, how to call the API, cursor pagination, filters, VAT codes, amount formatting, rate limits, and the behaviours that silently corrupt data. Use whenever a task touches Pennylane — invoice, transaction, reconciliation, export, ledger entry — and always before any other pennylane-* skill.
Xileades/pennylane-api-toolkit · ★ 0 · Data & Documents · score 70
Install: claude install-skill Xileades/pennylane-api-toolkit
# Pennylane — access foundation Every Pennylane task starts here. The skills `pennylane-supplier-invoices`, `pennylane-customer-invoices`, `pennylane-reconciliation`, `pennylane-accounting-exports` and `pennylane-analysis` assume this one is loaded. Toolkit: <https://github.com/Xileades/pennylane-api-toolkit> ## 1. Load the library ```powershell . <toolkit>\lib\pl-api.ps1 . <toolkit>\lib\journal.ps1 # only when a shared journal is in use ``` If the library sits on a network share, PowerShell's `RemoteSigned` policy will refuse it ("is not digitally signed"). Copy it to a local cache and dot-source the copy, refreshed at every run so it cannot drift: ```powershell $c = "$env:USERPROFILE\.pennylane\scripts" New-Item -ItemType Directory -Path $c -Force | Out-Null Copy-Item '<share>\lib\*.ps1' $c -Force . "$c\pl-api.ps1" ``` Do **not** work around this by setting the policy to `Bypass`: that disables the protection machine-wide. If `pl-api.ps1` throws "tokens.json not found", send the user to set it up from `config/tokens.example.json`. Never guess a token, never reuse someone else's. ## 2. Companies and tokens **A Pennylane Company API token is bound to exactly one company.** A group needs one token per entity, kept in one file per person: ``` %USERPROFILE%\.pennylane\tokens.json (override with PENNYLANE_HOME) ``` `PLEntites` lists the declared slugs. An entity with `"token": null` has no API access — `PLHdr` throws an explicit error for it on purpose. Han