Card requests filtered by currency
Filters card requests by currency using the correct requestedCurrency parameter. Includes an explicit warning about the distinction from the 'currency' parameter which returns incomplete results.
86/100ยท๐ Ad hocยทIntermediateControllerFinance Analyst
CardsReconciliationget_requests
๐ฏ Skill purpose
Filters card requests by currency using the correct requestedCurrency parameter. Includes an explicit warning about the distinction from the 'currency' parameter which returns incomplete results.
๐ What it produces
Card requests in the desired currency, with alert if the wrong parameter is used.
โก Benefit
Before
Using the wrong currency filter parameter returned incomplete results.
After
Correct currency filtering with requestedCurrency โ complete and reliable results.
# Instructions โ Card requests with currency filter
## โ ๏ธ Behavior of the currency filter
When `currency` is provided in `get_requests`:
- **Only** requests submitted in that currency are returned
- Requests in other currencies are **entirely excluded** โ no FX conversion
- The empty response (`data: []`) does not distinguish "no requests" from "requests exist in other currencies"
Example confirmed live:
- All requests on the account are in EUR
- `currency=GBP` โ **0 results** (no warning)
- `currency=USD` โ **0 results** (no warning)
- `currency=EUR` โ 3 results
- Without currency filter โ 3 results (all currencies, FX to functional currency)
## When to use the currency filter
**Valid case**: the user explicitly wants requests submitted in a specific currency.
```json
{ "companyId": "...", "currency": "GBP", "minAmount": 100 }
```
โ Always display: *"Results limited to requests submitted in GBP. Requests in EUR, USD, or other currencies are not included."*
**Case to avoid**: the user wants "all requests > 100 EUR"
โ Do not pass `currency=EUR` with `minAmount=100` if requests in GBP exist โ they would be excluded
โ Without `currency`: `minAmount/maxAmount` filter in **functional currency** via stored FX (all currencies included)
## Recommended pattern: always inform
```
Results: N requests found in [currency].
โ ๏ธ Requests submitted in other currencies are not included in this result.
For a view across all currencies, rerun without the currency filter.
```
## Step 1 โ Call without currency filter (full view)
```json
{
"companyId": "...",
"state": "pending"
}
```
โ Returns all requests, `minAmount/maxAmount` in functional currency.
โ `amountInFunctionalCurrency` = value comparable across currencies.
## Step 2 โ Call with currency filter (specific currency view)
```json
{
"companyId": "...",
"currency": "GBP",
"minAmount": 500
}
```
โ Returns requests submitted in GBP with `requestedAmount.amount >= 500 GBP`.
โ **Always warn** the user that other currencies are excluded.
## Step 3 โ Interpreting the results
For each request:
- `requestedAmount`: amount in the submission currency
- `amountInFunctionalCurrency`: equivalent in functional currency (EUR for this account)
- `isForeignCurrency=true` โ submitted in a currency different from the functional one
## Example prompt
- "Show pending card requests > 1000 EUR" โ without currency, minAmount=1000
- "Which requests were submitted in USD?" โ currency=USD + inform about the exclusion
- "All requests > 500, across all currencies" โ without currency, minAmount=500 in functional currency
How to install this skill
/
- 1Download the file
s33-get-requests-currency-filter.mdusing the button above. - 2Place the file in the
.claude/directory of your project (or~/.claude/for a global install).cp s33-get-requests-currency-filter.md .claude/s33-get-requests-currency-filter.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_requests.Similar skills
โ
Top