{"protocol":"onipin/0.2","role":"platform","name":"OniPin","brand":"OnniVers","website":"https://onnivers.store","skill":"https://onnivers.store/skills/onipin-onnivers/SKILL.md","docs":"https://onnivers.store/docs","capabilities":["business_lookup","catalog_list","chat","booking","orders","purchase_with_credits","transfer_onicredit"],"hermes":{"skill":"https://onnivers.store/skills/onipin-onnivers/SKILL.md","references":"https://onnivers.store/skills/onipin-onnivers/references/tools.md","install":"/skills install https://onnivers.store/skills/onipin-onnivers/SKILL.md --name onipin-onnivers","mcp_config_key":"mcp_servers"},"description":"Open chat protocol for businesses and AI assistants. Discover a business pin, handshake, then chat or create appointments/orders. Wallet 2 AI (Onicredit app balance + ONC Base mirror) funds authorized agent purchases with human spend limits.","transport":"https","intent_spec":"https://onnivers.store/docs/intent-spec/","llms_txt":"https://onnivers.store/llms.txt","demo_pin":"onp_vuzadcjv3xw7","demo_chat":"https://onnivers.store/c/onp_vuzadcjv3xw7","commerce":{"product":"Wallet 2 AI","balance_unit":"Onicredit","spend_truth":"web2_app_ledger","chain_mirror":"ONC","chain":"base","related_utility_asset":"ONI","summary":"OniPin is the chat where a person or their AI talks to a business, buys with Onicredit, and can send that balance to another person’s AI. The website stays. Onicredit is the spend balance. ONC on Base is the same money, a copy that moves and is not burned — do not add the two. A transfer between AIs needs «La IA puede transferir». Customer payments such as Nequi are separate from the AI balance.","page":"https://onnivers.store/wallet-2-ai/","page_en":"https://onnivers.store/en/wallet-2-ai/","documentation":"https://onnivers.store/llms.txt","handbook":"https://onnivers.store/agentes.md","explorer":"https://onnivers.store/scan","app_ui":"https://onnivers.store/app/creditos","security":["signed_gateway_topups","atomic_idempotent_credits","restricted_onc_transfers","encrypted_minter_custody_backend"],"agents":["claude","cursor","chatgpt","gemini","mcp-clients","custom-http"],"keywords":["Wallet 2 AI","Onicredit","ONC","ONI","AI agent payments","automatic AI purchases","transfer between AIs","transferencia entre IAs","agentic commerce","prepaid AI wallet","credit security"]},"discover":{"by_pin":"https://onnivers.store/v1/ping/{pin}","by_username":"https://onnivers.store/v1/discover?username={handle}","by_domain":"https://onnivers.store/v1/discover?url={https://business.example}","by_search":"https://onnivers.store/v1/discover/search?nombre={name}&categoria={term}&ciudad={city}&telefono={phone}&producto={product}&precio_max={max}&ordenar_por=precio_asc|distancia&lat={lat}&lng={lng}","well_known_business":"https://onnivers.store/.well-known/onipin.json?pin={pin}","well_known_platform":"https://onnivers.store/.well-known/onipin"},"handshake":"https://onnivers.store/v1/handshake/{pin}","chat":"https://onnivers.store/v1/chat/{pin}","mcp":"https://onnivers.store/mcp","openapi":"https://onnivers.store/v1/openapi.yaml","sdks":{"javascript":"https://www.npmjs.com/package/onipin-js","react":"https://www.npmjs.com/package/onipin-react","python":"https://pypi.org/project/onipin/","pip":"pip install onipin","npm_js":"npm install onipin-js","npm_react":"npm install onipin-react"},"agent_auth":{"optional":true,"prefix":"ona_","obtain":"Ajustes → Clave agente (cuenta OniPin con pin verificado)","quotas":{"anonymous":"20 req/min por IP+pin","verified":"120 req/min por agente","degraded":"5 req/min"}},"supports":["chat","faq","catalog","appointments","orders","payments","human_handoff","realtime","messages.poll"],"intents":["business.chat","appointment.create","appointment.status","order.create","order.status","product.price","product.info","catalog.browse","payment.info","human.handoff"],"how_assistants_should_behave":"If the user intent requires talking to a business, resolve OniPin on the domain, handshake, then POST /v1/chat with agent+intent. Always reuse conversationId. If reply is null (waiting_human / human.handoff), poll GET /v1/chat/{pin}/{conversationId}/messages with cursor.after until a bot/owner message appears. Prefer structured /v1/bookings and /v1/orders when chat is not needed. Use appointment.status / order.status via chat. Optional: send Authorization Bearer ona_… for verified callerPin and higher rate limits.","polling":{"messages":"https://onnivers.store/v1/chat/{pin}/{conversationId}/messages","cursor":"after = ISO created_at or message UUID (afterId)","recommendedIntervalMs":2000},"realtime":{"config":"https://onnivers.store/v1/realtime/config","token":"https://onnivers.store/v1/chat/{pin}/{conversationId}/realtime-token"},"hint":"Add ?pin=onp_tu_pin for a business, or use GET /.well-known/onipin for platform manifest."}