jaz-clio 5.20.19 → 5.20.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -4
- package/assets/skills/api/SKILL.md +3 -2
- package/assets/skills/api/help-center-mirror/help-center-embeddings.json +1 -1
- package/assets/skills/api/help-center-mirror/help-center-index.json +1 -1
- package/assets/skills/api/help-center-mirror/index.md +2 -2
- package/assets/skills/api/help-center-mirror/reports.md +16 -1
- package/assets/skills/api/help-center-mirror/settings.md +56 -0
- package/assets/skills/api/references/bank-rule-column-mapping.md +69 -0
- package/assets/skills/cli/SKILL.md +3 -3
- package/assets/skills/conversion/SKILL.md +1 -1
- package/assets/skills/jaz-pseudo-sql/SKILL.md +1 -1
- package/assets/skills/jobs/SKILL.md +1 -1
- package/assets/skills/transaction-recipes/SKILL.md +1 -1
- package/assets/templates/platform-rules/jaz-agent-rules.md +1 -1
- package/cli.mjs +419 -423
- package/help-center-mirror/help-center-embeddings.json +1 -1
- package/help-center-mirror/help-center-index.json +1 -1
- package/help-center-mirror/index.md +2 -2
- package/help-center-mirror/reports.md +16 -1
- package/help-center-mirror/settings.md +56 -0
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
Auto-generated from [help.jaz.ai](https://help.jaz.ai) — 2026-06-
|
|
1
|
+
Auto-generated from [help.jaz.ai](https://help.jaz.ai) — 2026-06-22 — 189 articles
|
|
2
2
|
|
|
3
3
|
| Section | Articles | File |
|
|
4
4
|
|---|---|---|
|
|
@@ -19,5 +19,5 @@ Auto-generated from [help.jaz.ai](https://help.jaz.ai) — 2026-06-15 — 188 ar
|
|
|
19
19
|
| Collaboration | 1 | [collaboration.md](collaboration.md) |
|
|
20
20
|
| Fixed Assets | 2 | [fixed-assets.md](fixed-assets.md) |
|
|
21
21
|
| AI Agents | 3 | [ai-agents.md](ai-agents.md) |
|
|
22
|
-
| Settings |
|
|
22
|
+
| Settings | 31 | [settings.md](settings.md) |
|
|
23
23
|
| Security & Privacy | 2 | [security-privacy.md](security-privacy.md) |
|
|
@@ -406,6 +406,7 @@ Source: https://help.jaz.ai/en/articles/13904552-gst-ledger
|
|
|
406
406
|
- None
|
|
407
407
|
- GST Profile
|
|
408
408
|
- GST Type
|
|
409
|
+
- IRAS F5
|
|
409
410
|
|
|
410
411
|
**Q5. Can I filter GST transactions?**
|
|
411
412
|
|
|
@@ -469,7 +470,21 @@ You may also click Add New Template to create a customized GST Ledger layout.
|
|
|
469
470
|
**Q11. Does the GST Ledger support multi-currency?**
|
|
470
471
|
|
|
471
472
|
- Yes. If your organization uses multi-currency, the GST Ledger can display amounts in both the source currency and the tax currency, depending on the columns selected in the report.
|
|
472
|
-
- **Note:** The tax currency is always the organization’s base currency, which is defined during organization creation.**Q12.
|
|
473
|
+
- **Note:** The tax currency is always the organization’s base currency, which is defined during organization creation.**Q12. How do I record import GST for IRAS F5 reporting?**
|
|
474
|
+
|
|
475
|
+
For records dated 1 April 2026 onward, record each import as two separate entries:
|
|
476
|
+
- **Goods bill:** Record the supplier bill as normal, coded with no GST (out of scope). The overseas supplier does not charge Singapore GST.
|
|
477
|
+
- **Customs / freight-forwarder charge:** Record a separate bill for the GST charge. Enter one line with the exact GST amount shown on the import permit and apply the “Imports (Taxable)” tax profile.
|
|
478
|
+
|
|
479
|
+
How it is reported on Jaz:
|
|
480
|
+
- **Input tax (F5 Box 7):** Recorded as it is.
|
|
481
|
+
- **Taxable purchase value (F5 Box 5):** Derived by dividing the GST by the prevailing rate (9%).**Example:** If Customs assesses SGD 121.50 on the permit, enter SGD 121.50 on the customs charge bill. Jaz will report Box 7 = 121.50 and Box 5 = 1,350.00.
|
|
482
|
+
|
|
483
|
+
This method ensures the F5 input tax matches the import permit exactly, including for foreign-currency imports where Customs applies its own exchange rate.
|
|
484
|
+
|
|
485
|
+
Records dated before 1 April 2026 do not need to be updated.
|
|
486
|
+
|
|
487
|
+
**Q13. What is the difference between base currency and source currency in the GST Ledger?**
|
|
473
488
|
|
|
474
489
|
- **Base Currency**
|
|
475
490
|
- The base currency is the organization’s default currency configured during organization creation. This also serves as the tax currency used in the GST Ledger.
|
|
@@ -861,6 +861,62 @@ Source: https://help.jaz.ai/en/articles/9094240-transfer-trial-balance
|
|
|
861
861
|
|
|
862
862
|
---
|
|
863
863
|
|
|
864
|
+
### E-Sign Templates
|
|
865
|
+
Source: https://help.jaz.ai/en/articles/15562970-e-sign-templates
|
|
866
|
+
|
|
867
|
+
**Q1. What transactions can I use e-sign templates for?**
|
|
868
|
+
|
|
869
|
+
- E-sign templates can be used for Sales Quotes.
|
|
870
|
+
|
|
871
|
+
**Q2. How do I create an e-sign template?**
|
|
872
|
+
|
|
873
|
+
- Go to **Settings → Templates → E-Signs → + New Template**.**Q3. What can I set up under General?**
|
|
874
|
+
|
|
875
|
+
- Template Name: identifies the template
|
|
876
|
+
- Description: appears when choosing the template; use it to give context on when to use it within your organization
|
|
877
|
+
- Default expiry days: number of days from send before the document expires
|
|
878
|
+
- Decline reason requirement: require signers to provide a reason when declining
|
|
879
|
+
- Cancel reason requirement: require a reason when cancelling a request
|
|
880
|
+
- **Post-Completion settings**
|
|
881
|
+
- Action on completion:
|
|
882
|
+
- **Do nothing:** no automated action
|
|
883
|
+
- **Auto-accept quote:** the quote is accepted
|
|
884
|
+
- **Auto-accept & invoice:** the quote is accepted and an active invoice is created
|
|
885
|
+
- Action on expiry:
|
|
886
|
+
- **Auto-cancel:** cancels the quote
|
|
887
|
+
- **Alert, then cancel:** notifies all parties, then cancels the quote
|
|
888
|
+
- **Manual only:** no automated action; quote must be edited manually**Q4. What can I set up under Emails?**
|
|
889
|
+
|
|
890
|
+
- Edit the invitation, reminder, and completion email content
|
|
891
|
+
- Insert email strings to pull in dynamic values from your organization
|
|
892
|
+
- Click Preview to see how an email will look before saving
|
|
893
|
+
|
|
894
|
+
**Q5. What can I set up under Signers?**
|
|
895
|
+
|
|
896
|
+
- Add default external and internal signers
|
|
897
|
+
- External signers receive a signing link by email; internal signers sign in-app
|
|
898
|
+
- These are defaults only: senders can override any signer at send time
|
|
899
|
+
- Append PDFs: attach default PDFs to the quote, up to 8 MB total and 10 files
|
|
900
|
+
|
|
901
|
+
**Q6. What can I set up under Reminders?**
|
|
902
|
+
|
|
903
|
+
- Reminder schedule: how often reminder emails are sent to signers; set to 0 to send reminders until the document expires
|
|
904
|
+
- Movement alerts: toggle to notify the sender when a request has had no activity
|
|
905
|
+
- Alert after [X] days: set the number of inactive days before a movement alert is sent
|
|
906
|
+
- Sender notification cadence: how often the sender is notified of progress
|
|
907
|
+
- **Every event:** viewed, signed, declined, etc.
|
|
908
|
+
- **Milestones only:** notified each time someone signs
|
|
909
|
+
- **Completion only:** notified when the document is fully signed
|
|
910
|
+
- **None:** no notifications**Q7. How do I use an e-sign template?**
|
|
911
|
+
|
|
912
|
+
- Go to **Sales → Orders → Quotes → Pending → select a quote → click the E-Sign icon → choose the template**. All settings from the template are applied as defaults for that e-sign request.**Q8. Can I duplicate an e-sign template?**
|
|
913
|
+
|
|
914
|
+
- Yes. **Hover over the template → click the 3-dot icon → select Duplicate**.**Q9. What happens if I update an existing template?**
|
|
915
|
+
|
|
916
|
+
- Updates apply to future e-sign requests only. E-sign requests already sent are not affected unless you resend them.
|
|
917
|
+
|
|
918
|
+
---
|
|
919
|
+
|
|
864
920
|
### Email Templates
|
|
865
921
|
Source: https://help.jaz.ai/en/articles/10729542-email-templates
|
|
866
922
|
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Bank-rule column-value mapping (reconcileWithDirectCashEntry)
|
|
2
|
+
|
|
3
|
+
A bank rule's `reconcileWithDirectCashEntry` shortcut can resolve fields **per row** from a custom bank-statement column instead of hard-coding them. This is the "Set X by" capability: read a column, match its value, and resolve to a target (GL account, tax profile, classifier, contact, or tag).
|
|
4
|
+
|
|
5
|
+
## ColumnValueMapConfig shape
|
|
6
|
+
|
|
7
|
+
Every `*Map` field below takes the same shape:
|
|
8
|
+
|
|
9
|
+
```jsonc
|
|
10
|
+
{
|
|
11
|
+
"columnKey": "<camelCaseKeyOfTheCustomColumn>", // the bank-statement column to read
|
|
12
|
+
"mappings": [
|
|
13
|
+
{ "matchType": "EXACT", "matchValue": "RENT", "targetResourceId": "<uuid-or-tag-name>" },
|
|
14
|
+
{ "matchType": "CONTAINS", "matchValue": "uber", "targetResourceId": "<uuid>" },
|
|
15
|
+
{ "matchType": "STARTS_WITH", "matchValue": "INV-", "targetResourceId": "<uuid>" },
|
|
16
|
+
{ "targetResourceId": "<uuid>" } // catch-all default (no matchValue) — put LAST
|
|
17
|
+
]
|
|
18
|
+
}
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
- `matchType`: `EXACT` | `CONTAINS` | `STARTS_WITH`, compared **case-insensitively**. Omit `matchType`/`matchValue` for a catch-all default row.
|
|
22
|
+
- `mappings` are **ordered — the first matching row wins**. Always place the catch-all (blank `matchValue`) last.
|
|
23
|
+
- `targetResourceId` is a **resource UUID** for account/tax/classifier/contact maps, or the **tag NAME** (not a UUID) for `tagsMap`.
|
|
24
|
+
|
|
25
|
+
## Where each map field nests
|
|
26
|
+
|
|
27
|
+
Inside `configuration.reconcileWithDirectCashEntry`:
|
|
28
|
+
|
|
29
|
+
- On the shortcut itself:
|
|
30
|
+
- `contactResourceIdMap` — "Set Contact by" (overrides `contactResourceId` when it resolves).
|
|
31
|
+
- `tagsMap` — "Set Tag by" (appends a tag, target = tag NAME, in addition to static `tags`).
|
|
32
|
+
- On each `fixedAllocation[]` line:
|
|
33
|
+
- `amountSourceColumnKey` — "Set amount by": take the line's amount from the **absolute value** of a custom AMOUNT column. **Mutually exclusive with `amount`** — omit `amount` when this is set (sending both is rejected).
|
|
34
|
+
- `organizationAccountResourceIdMap` — "Set Account by" (in lieu of a static `organizationAccountResourceId`).
|
|
35
|
+
- `taxProfileResourceIdMap` — "Set Tax by".
|
|
36
|
+
- `classifierConfigMap` — "Set Classifier by" (target = classifier class UUID).
|
|
37
|
+
|
|
38
|
+
## Reference-string column tokens
|
|
39
|
+
|
|
40
|
+
`reference` (and `name`) also support custom-column tokens beyond `{{bankReference}}`/`{{bankPayee}}`/`{{bankDescription}}`:
|
|
41
|
+
|
|
42
|
+
- `{{column:<key>}}` — the column value, signed.
|
|
43
|
+
- `{{column_abs:<key>}}` — the absolute value (use for AMOUNT columns).
|
|
44
|
+
|
|
45
|
+
## Example
|
|
46
|
+
|
|
47
|
+
```jsonc
|
|
48
|
+
{
|
|
49
|
+
"reconcileWithDirectCashEntry": {
|
|
50
|
+
"amountAllocationType": "FIXED",
|
|
51
|
+
"reference": "AUTO-{{column:category}}",
|
|
52
|
+
"contactResourceIdMap": { "columnKey": "payee", "mappings": [{ "matchType": "CONTAINS", "matchValue": "acme", "targetResourceId": "<contact-uuid>" }] },
|
|
53
|
+
"fixedAllocation": [
|
|
54
|
+
{
|
|
55
|
+
"amountSourceColumnKey": "amount",
|
|
56
|
+
"organizationAccountResourceIdMap": {
|
|
57
|
+
"columnKey": "category",
|
|
58
|
+
"mappings": [
|
|
59
|
+
{ "matchType": "EXACT", "matchValue": "RENT", "targetResourceId": "<rent-acct-uuid>" },
|
|
60
|
+
{ "targetResourceId": "<suspense-acct-uuid>" }
|
|
61
|
+
]
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
]
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Types live in `src/core/api/bank-rules.ts` (`ColumnValueMapConfig`, `ColumnValueMapEntry`). `configuration` is sent in full on every create/update (full replacement — see Rule 90b).
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: jaz-cli
|
|
3
|
-
version: 5.20.
|
|
3
|
+
version: 5.20.21
|
|
4
4
|
description: >-
|
|
5
5
|
Use this skill when running Clio CLI commands, building shell scripts with
|
|
6
6
|
Clio, debugging auth issues, understanding --json output, paginating results,
|
|
@@ -8,7 +8,7 @@ description: >-
|
|
|
8
8
|
command groups, auth precedence, output formats, entity resolution, and common
|
|
9
9
|
workflow patterns. Also use when the user asks how to use clio, what commands
|
|
10
10
|
are available, or how to automate accounting tasks from the command line.
|
|
11
|
-
Covers all 58 command groups and
|
|
11
|
+
Covers all 58 command groups and 295 tools.
|
|
12
12
|
license: MIT
|
|
13
13
|
compatibility: Requires Node.js >= 18.0.0. Install via npm install -g jaz-clio.
|
|
14
14
|
---
|
|
@@ -17,7 +17,7 @@ compatibility: Requires Node.js >= 18.0.0. Install via npm install -g jaz-clio.
|
|
|
17
17
|
|
|
18
18
|
> **Audience note:** for power users and CI/automation. Load this skill only when you're scripting from a terminal, building shell pipelines, or debugging from `clio --json` output. For day-to-day accounting inside Claude Desktop / Cowork, the MCP tools cover the common flows without dropping to the CLI.
|
|
19
19
|
|
|
20
|
-
You are working with **Clio** (`jaz-clio`) — the CLI for the Jaz accounting platform. 58 command groups, 13 calculators, 12 job blueprints,
|
|
20
|
+
You are working with **Clio** (`jaz-clio`) — the CLI for the Jaz accounting platform. 58 command groups, 13 calculators, 12 job blueprints, 295 tools. Also fully compatible with Juan Accounting (same API, same endpoints).
|
|
21
21
|
|
|
22
22
|
## When to Use This Skill
|
|
23
23
|
|
|
@@ -6,7 +6,7 @@ Source of truth lives in the installed skills (`.claude/skills/jaz-*/SKILL.md` o
|
|
|
6
6
|
|
|
7
7
|
## Discovery
|
|
8
8
|
|
|
9
|
-
The Jaz MCP server exposes
|
|
9
|
+
The Jaz MCP server exposes 295 tools across 35 namespaces via 3 meta-tools. **Use the meta-tool flow — never enumerate tools blindly.**
|
|
10
10
|
|
|
11
11
|
1. `search_tools(query)` → top-N tool names + namespaces.
|
|
12
12
|
2. `describe_tools(names)` → full parameter schemas.
|