# sumsub-resolve-currency

Скилл разбирает, какие значения валютных полей Sumsub ждёт в транзакции, и не даёт угадывать цепочку для токена, который живёт в нескольких сетях.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 446 установок · ★ 7
- Автор: sumsub
- Лицензия: не указана · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/sumsub/agent-skills/tree/HEAD/skills/sumsub-resolve-currency/SKILL.md
- Обновлён: 2026-10-02
- HTML: https://affpapa.org/nevibecode/skills/sumsub-resolve-currency

## Что делает

Скилл закрывает валютные поля транзакции: `info.currencyCode`, `info.currencyType`, `info.cryptoParams.cryptoChain` и пару `amountInDefaultCurrency` с `defaultCurrencyCode`. Каталог берётся из `GET /resources/kyt/currency?type=crypto|fiat`. Фиат — это проверка на вхождение в список ISO 4217. С криптой сложнее: один и тот же тикер встречается на разных сетях, поэтому актив определяется тройкой «символ, цепочка, контракт».

Внутри два скрипта: `scripts/get_currencies.sh` тянет каталог, `scripts/resolve_currency.py` приводит запрос к верхнему регистру, разворачивает алиасы цепочек вроде `TRC20` или `BEP20` и возвращает ровно один актив. Если под запрос подходит несколько строк, скрипт останавливается и показывает список кандидатов — выбирать придётся вам. Пустая цепочка тоже значение: это нативная монета своей сети.

Для работы нужны `SUMSUB_APP_TOKEN` и `SUMSUB_SECRET_KEY`. Скрипт отказывается принимать токены без префикса `sbx:`, если не выставлена переменная `SUMSUB_ALLOW_PROD=1`, так что без песочной пары ключей он просто не запустится. Поле `amountInDefaultCurrency` выглядит необязательным, но от него зависит сравнение с порогами Travel Rule: без него проверка пропускается целиком, и значение фиксируется в момент создания транзакции — поздняя правка курса потребует перезаписи данных.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add sumsub/agent-skills --skill sumsub-resolve-currency -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/sumsub-resolve-currency/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/sumsub-resolve-currency/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add sumsub/agent-skills --skill sumsub-resolve-currency -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/sumsub-resolve-currency/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add sumsub/agent-skills --skill sumsub-resolve-currency -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/sumsub-resolve-currency/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install sumsub/agent-skills sumsub-resolve-currency
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/sumsub-resolve-currency/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add sumsub/agent-skills --skill sumsub-resolve-currency -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/sumsub/agent-skills --path skills/sumsub-resolve-currency
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/sumsub-resolve-currency/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add sumsub/agent-skills --skill sumsub-resolve-currency -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/sumsub/agent-skills/tree/HEAD/skills/sumsub-resolve-currency/SKILL.md

## Когда брать
- определить, какие коды валют и сети поддерживает Sumsub
- проверить, существует ли USDT в сети TRON
- заполнить `cryptoChain` для токена с несколькими сетями
- понять, почему валюта не распознаётся при отправке транзакции
- разобраться, откуда берётся `amountInDefaultCurrency`

## Примеры запросов агенту
- Какой код валюты и цепочку указать для USDT в сети TRON?
- Проверь по каталогу Sumsub, поддерживается ли этот токен
- Почему моя валюта не распознаётся — сверь символ и цепочку

## Похожие
- [mcp-builder](https://affpapa.org/nevibecode/skills/mcp-builder.md) — скилл · 130949 установок
- [claude-api](https://affpapa.org/nevibecode/skills/claude-api.md) — скилл · 74198 установок
- [lark-im](https://affpapa.org/nevibecode/skills/lark-im.md) — скилл · 472900 установок
- [lark-event](https://affpapa.org/nevibecode/skills/lark-event.md) — скилл · 466800 установок
- [caveman-discover](https://affpapa.org/nevibecode/skills/caveman-discover.md) — скилл · 104400 установок
- [migration](https://affpapa.org/nevibecode/skills/migration.md) — скилл · 103900 установок

Из того же набора: [sumsub/agent-skills](https://affpapa.org/nevibecode/by/sumsub/agent-skills.md) — 11 карточек

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
