Receipt validity check (documentary evidence)
Verifies genuine receipt validity by distinguishing file presence from pre-signed URL availability. Crucial for documentary compliance audits.
80/100ยท๐
WeeklyยทIntermediateControllerAP Manager
ComplianceReconciliationget_payable_by_id
๐ฏ Skill purpose
Verifies genuine receipt validity by distinguishing file presence from pre-signed URL availability. Crucial for documentary compliance audits.
๐ What it produces
Receipt compliance report: count of invoices with and without valid attachments.
โก Benefit
Before
Impossible to distinguish genuine attachments from corrupted or missing metadata.
After
Precise receipt compliance report, ready for audit or statutory auditor.
# Instructions โ Validity of receipts (documentary evidence)
## โ ๏ธ Critical distinction
| Filter | What it means | What it does NOT mean |
|--------|-------------------|--------------------------|
| `documentaryEvidenceStatus=provided` | A file is attached | That the document is valid or compliant |
| `documentaryEvidenceStatus=providedAndDpr` | File attached + DPR processing | That the document is valid |
| `documentaryEvidenceStatus=missing` | No file attached | |
| `documentaryEvidenceStatus=declaredAsInvalid` | Marked invalid by the user | |
**For actual validity**: read `documentaryEvidence.validity.valid` (boolean) and `documentaryEvidence.compliances` on each payable.
## Use case 1 โ Identify expenses without a receipt
Call `get_payables` with:
```json
{ "field": "documentaryEvidenceStatus", "operator": "=", "value": ["missing", "declaredAsInvalid"] }
```
โ All expenses requiring receipt follow-up.
## Use case 2 โ Check compliance of attached receipts
Step 1: Retrieve payables with an attached receipt
```json
{ "field": "documentaryEvidenceStatus", "operator": "=", "value": ["provided", "providedAndDpr"] }
```
Step 2: For each payable, inspect:
```
documentaryEvidence.validity.valid โ true/false
documentaryEvidence.compliances โ absent, {} or { spainEreceipt: ... } (country-specific compliance)
documentaryEvidence.type โ "invoice" | "creditNote" | ...
documentaryEvidence.invoiceNumber โ present if invoice
```
Step 3: Flag cases where `validity.valid=false` and quote `validity.reason` when present. For Spain, also flag a `compliances.spainEreceipt.closure.error`.
## Full structure of the documentaryEvidence field
```json
{
"validity": {
"valid": true/false
},
"compliances": {
// country-specific compliance information, e.g. spainEreceipt (optional field, often absent or empty)
},
"type": "invoice" | "declarationOfMissingInvoice" | "mileageEntry" | "perDiemEntry" | "creditNote" | "declarationOfMissingCreditNote",
"invoiceNumber": "XXXX", // if type=invoice
"creditNoteNumber": "XXXX", // if type=creditNote
"referenceInvoiceNumber": "XXXX" // if credit note with a reference
}
```
## Use case 3 โ Full receipt audit
For a full audit, combine both searches (and also query `cannotBeProvided`, `hasDpr` and `hasDprError`, the three other statuses the filter accepts):
1. No receipt: `status=["missing","declaredAsInvalid"]`
2. With a potentially invalid receipt: `status=["provided","providedAndDpr"]` + filter on `validity.valid=false` client-side
Display:
- % of payables with a valid receipt
- List of problematic cases (no receipt + invalid receipt)
- Priority on high amounts
## Note on the demo account
On the Spendesk demo account, all `provided` receipts have `validity.valid=true` and `compliances={}`. `compliances` carries country-specific compliance information (currently `spainEreceipt` for the Spanish e-receipt), not validation errors. The reason for invalidity, when there is one, is in `validity.reason` (present only when `validity.valid=false`).
## Example prompts
- "Which expenses have no receipt?" โ filter status=missing
- "Are there any receipts attached but non-compliant?" โ provided + validity.valid=false
- "Audit missing receipts before closing" โ missing + declaredAsInvalid
How to install this skill
/
- 1Download the file
s12-documentary-evidence-validite.mdusing the button above. - 2Place the file in the
.claude/directory of your project (or~/.claude/for a global install).cp s12-documentary-evidence-validite.md .claude/s12-documentary-evidence-validite.md - 3Use in Claude Code โ the skill is automatically discovered. Describe your need in natural language and Claude will apply the skill instructions.
๐ก Make sure the Spendesk MCP is configured in your
.claude/settings.json with the tools get_payable_by_id.Similar skills
โ
Top