---
skill_id: gf-pc-multi-currency-display-notes
evaluation: free
quality: agent-decision-grade
functional: true
price_usd_full: 3.49
price_label: $3.49 / unlock
kind: good
category: Finance
challenge: https://lvlltd.com/api/pay?skill=gf-pc-multi-currency-display-notes
outline: https://lvlltd.com/skills/gf-pc-multi-currency-display-notes/outline.json
runtime_after_unlock: src/index.js createSkill
standards: x402, ERC-7857
completion_pass: functional-v1
---

# Free sample — Multi-Currency Display Notes

**Skill ID:** `gf-pc-multi-currency-display-notes`  
**Unlock:** $3.49 / unlock USDC on Base via x402  
**What you get after pay:** runnable sealed pack (`createSkill().run`) + workbook + templates  

## Summary

Display, rounding, and disclosure notes for showing fiat estimates beside Base USDC settle amounts in agent checkout UIs.

Field rules and buyer-facing copy for dual-currency agent commerce: quote currency, settle asset, rate timestamp, rounding mode, and disclaimer lines so agents never imply a locked FX rate when settlement is USDC on Base.

## When to use

- Listings quote in USD or local fiat but checkout settles only in Base USDC
- Agent UIs show estimated totals and buyers confuse estimate with locked settle amount
- You need consistent minor-unit and rounding labels across cart, quote, and receipt

## Decision-grade outline (free)

1. Separate quote_currency, settle_asset, and rate_source fields so every price surface names which number is binding at pay
2. Document rounding and minor-unit rules for display estimates versus on-chain USDC units with worked digit examples
3. Write rate-as-of timestamp and non-lock disclaimer microcopy agents can attach next to estimated fiat lines
4. Define receipt lines that restate settle amount in USDC first and optional estimate second without implying dual settlement
5. Build a mismatch matrix for estimate drift after rate refresh so support knows when to re-quote versus honor a sealed total

## Capabilities

- Quote vs settle field separation schema
- Rounding and minor-unit display rules
- Rate-as-of and non-lock disclosure snippets
- Receipt ordering for USDC-primary totals
- Estimate-drift re-quote decision matrix

## Artifacts after unlock

- `multi-currency-field-schema.json`
- `rounding-display-rules.md`
- `fx-estimate-disclosure-snippets.md`
- `estimate-drift-matrix.csv`

## Detailed description

Multi-Currency Display Notes helps agent marketplace operators present human-readable fiat estimates without pretending settlement is multi-rail when pay is Base USDC via x402 or wallet transfer. Ambiguous dual totals create disputes and support load; this pack forces explicit separation of quote currency, settle asset, rate source, and rate-as-of time on every cart, quote, and receipt surface. Rounding and minor-unit rules include worked examples so six-decimal USDC units and two-decimal display estimates do not silently diverge. Buyer microcopy states that estimates are informational and that the binding amount is the USDC settle total shown at confirm. Receipt templates lead with USDC and optionally show the estimate as secondary context. An estimate-drift matrix tells ops when a refreshed rate requires a re-quote versus when a sealed order total still holds. Free outline eval lets you compare the field schema to your checkout payload before buying. Unlock uses x402 Base USDC. Content is display and documentation structure only—not FX brokerage, legal, tax, or financial advice—and it promises no conversion, volume, or revenue results. Do not treat rate examples as live market data; wire your own rate source and compliance review before production use.

## Functional runtime (paid)

After verified payment the sealed pack includes:

| Path | Role |
|------|------|
| `src/index.js` | `createSkill`, `run`, `plan`, `checklist` |
| `src/runbook.js` | Outline-driven steps with done_when |
| `src/tools.js` | Tool schemas for agent registries |
| `WORKBOOK.md` | Human/operator procedure |
| `templates/` | Checklist + artifact shells |
| `schemas/output.schema.json` | Result contract |

### Agent snippet (after unlock)

```js
import { createSkill } from "./src/index.js";
const skill = createSkill({ tenantId: "ops", agentId: "buyer" });
const result = await skill.run({
  goal: "Execute Multi-Currency Display Notes for my catalog",
  context: { skill_id: "gf-pc-multi-currency-display-notes" },
  dry_run: false,
});
// result.ok, result.steps, result.artifacts
```

## Pay path

1. Free: this sample + outline.json  
2. `GET https://lvlltd.com/api/pay?skill=gf-pc-multi-currency-display-notes` → HTTP 402  
3. Transfer `maxAmountRequired` USDC to `payTo` on Base  
4. `POST /api/pay` with `X-PAYMENT: {"txHash":"0x…","skill":"gf-pc-multi-currency-display-notes"}`  
5. Write `sealed_pack.files` to disk or use install-unlocked-pack.mjs  
6. Re-redeem anytime with the same verified txHash  

## Honesty

- No revenue, conversion, or uptime guarantees  
- Not legal, tax, medical, or investment advice  
- Crypto transfers are irreversible  
- Confirmed unlocks only for proof strips (/api/proof)  

*Public `/sealed/gf-pc-multi-currency-display-notes/` is teaser-only. Full `src/` is paywalled under locked sealed delivery.*
