UAH Mono Payouts — UAH 单一付款
v1.0.0当用户希望代理将 USDT BEP20 转换为 UAH 支付指令时使用,通过验证的兑换者流程,包括批准、过期和支付监控...
0· 0·0 当前·0 累计
运行时依赖
无特殊依赖
安装命令
点击复制官方npx clawhub@latest install uah-mono-payouts
镜像加速npx clawhub@latest install uah-mono-payouts --registry https://cn.longxiaskill.com 镜像可用
技能文档
使用此技能,当用户要求您通过兑换器将 USDT BEP20 转换为 UAH 支付时。MVP 范围狭窄:
- 源资产:USDT
- 源网络:BEP20 / BNB Smart Chain
- 目的地:UAH
- 联系源:代理拥有的上下文,通常为 ./mandate-wallet/contacts.csv
- 人工审批:Web 审批链接
- 状态监控:每 60 秒轮询 MCP 订单状态
强制规则
- 您必须关闭失败
- 永远不要发明兑换率、存款地址、评论、订单 ID、过期时间或支持联系人
- 永远不要自己抓取兑换器页面
- 永远不要在订单获得批准之前告诉用户发送资金
- 永远不要在订单过期时间少于 60 秒时告诉用户发送资金
- 永远不要在 MCP 不可用或订单状态不明确时继续
- 总是显示网络为 BEP20 / BNB Smart Chain,而不仅仅是 USDT
- 总是警告错误的网络、错误的金额、缺失的备注/评论或过期的订单可能会导致资金损失
- 总是保留兑换器名称、订单 ID、订单链接、创建时间、过期时间和支持路径
强制流程
- 解析用户的支付意图
- 从自己的上下文中解析收件人,通常为 ./mandate-wallet/contacts.csv
- 如果没有匹配的联系人,要求用户在本地添加收件人或提供确切的 Monobank UAH 详情
- 如果有多个 UAH 账户匹配,要求用户选择要使用的账户
- 如果 UAH 金额不明确,要求用户澄清:是否要收到该 UAH 金额,还是要发送等值的 USDT
- 构建一个包含确切银行详情的支付对象
- 调用 quote_uah_payout
- 简要呈现最佳路线
- 调用 create_uah_payout_order
- 发送审批 URL
- 等待审批
- 调用 render_payment_instructions
- 仅当 can_send 为 true 时显示确切的支付说明
- 每 60 秒调用 get_order_status,直到订单达到最终状态
- 最终状态:已完成、已过期、已拒绝、已失败、已取消
- 如果状态变为 support_needed,显示兑换器支持详情并停止自动重试
联系人解析
- 联系人通常位于代理的本地项目中:./mandate-wallet/contacts.csv
- 支持的 UAH 铁路:monobank_uah_card monobank_uah_iban
- 对于 monobank_uah_card,联系人必须包含卡号
- 对于 monobank_uah_iban,联系人必须包含 IBAN、EDRPOU 和收件人全名
- 将选定的详情传递给 MCP 作为支付
- 对于 Monobank 卡:{ "rail": "monobank_uah_card", "currency": "UAH", "card_number": "4441111122223333", "recipient_full_name": "Swift Adviser", "telegram": "@SwiftAdviser", "email": "swiftadviser@gmail.com" }
- 对于 Monobank IBAN:{ "rail": "monobank_uah_iban", "currency": "UAH", "iban": "UA...", "edrpou": "12345678", "recipient_full_name": "Swift Adviser LLC", "telegram": "@SwiftAdviser", "email": "swiftadviser@gmail.com" }
- 如果兑换器要求 Telegram,并且联系人中有 Telegram,则使用联系人 Telegram
- 如果缺失并且流程需要回退,则使用:@SwiftAdviser
- 如果兑换器需要电子邮件并且联系人没有电子邮件,则使用:swiftadviser@gmail.com
- 不要发明银行详情
金额语义
- 像这样的普通语言是模糊的:将 USDT 转换为 5000 格里夫纳
- 提出一个澄清问题:5000 UAH 应该是收到的金额,还是应该发送等值的 USDT?
- 如果用户说他们想要收到 5000 UAH,则使用:{ "amount_semantics": "receive_fixed_uah" }
- 如果用户说他们想要发送等值的 5000 UAH,则使用:{ "amount_semantics": "send_uah_equivalent" }
- 对于这样的请求:将 500 USDT BEP20 提取到 Mono UAH
- 将 500 视为固定 USDT 发送:{ "amount": "500", "amount_currency": "USDT", "amount_semantics": "send_uah_equivalent", "source_token": "USDT", "source_network": "BEP20" }
MCP 工具
- 使用 MCP 服务器:https://mcp-wallet.mandate.md/mcp
- 预期工具:contacts_search quote_uah_payout create_uah_payout_order get_order_status cancel_order render_payment_instructions check_usdt_bep20_balance
- contacts_search 可选兼容性助手,用于部署服务器端演示联系人
- 不要依赖它进行正常的个人代理流程
- 如果 requires_disambiguation 为 true,则在报价之前询问用户哪个账户要使用
- quote_uah_payout 在支付详情和金额语义已知后使用
- 包括所选的支付对象
- 后端对 BestChange 衍生的兑换器选项进行排名
- 您不需要手动从网站选择汇率
- 除非用户要求替代方案,否则只显示一个最佳路线
- create_uah_payout_order 在用户隐式确认路线或要求继续后使用
- 包括与报价相同的支付对象
- 这创建了一个兑换器订单并返回一个审批 URL
- 它不意味着用户应该发送资金
- render_payment_instructions 仅在审批后使用
- 如果工具返回 can_send:false,则显示其消息并且不添加支付说明