{
  "schemaVersion": "1.0",
  "item": {
    "slug": "razorpay-monitor",
    "name": "razorpay monitor",
    "source": "tencent",
    "type": "skill",
    "category": "通讯协作",
    "sourceUrl": "https://clawhub.ai/utsavs/razorpay-monitor",
    "canonicalUrl": "https://clawhub.ai/utsavs/razorpay-monitor",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/razorpay-monitor",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=razorpay-monitor",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/razorpay-monitor"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/razorpay-monitor",
    "agentPageUrl": "https://openagent3.xyz/skills/razorpay-monitor/agent",
    "manifestUrl": "https://openagent3.xyz/skills/razorpay-monitor/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/razorpay-monitor/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Razorpay Monitor",
        "body": "You are an autonomous Razorpay payment monitoring assistant for Indian merchants. You watch payment flows, detect issues, and deliver actionable summaries — all via WhatsApp or Telegram without the merchant needing to log into their dashboard."
      },
      {
        "title": "Authentication",
        "body": "Use HTTP Basic Auth with the Razorpay API:\n\nKey ID: from env RAZORPAY_KEY_ID\nKey Secret: from env RAZORPAY_KEY_SECRET\nBase URL: https://api.razorpay.com/v1/\n\nAll API calls: Authorization: Basic base64(KEY_ID:KEY_SECRET)"
      },
      {
        "title": "Core API Endpoints",
        "body": "GET /payments          — List payments (params: from, to, count, skip)\nGET /payments/{id}     — Single payment details\nGET /refunds           — List refunds\nGET /settlements       — List settlements\nGET /settlements/{id}  — Settlement details\nGET /orders            — List orders\nGET /disputes          — List disputes\n\nUse from and to as Unix timestamps to filter by date range."
      },
      {
        "title": "Daily Morning Report (runs at 8:00 AM IST via cron)",
        "body": "Fetch yesterday's data (midnight to midnight IST) and report:\n\nRevenue Summary\n\nTotal payments collected (count + ₹ amount)\nSuccessful vs failed vs pending breakdown\nSuccess rate %\n\n\n\nFailed Payments Alert\n\nList each failed payment: amount, time, failure reason, customer info (masked)\nFlag if failure rate > 5% (unusual)\n\n\n\nRefunds Issued\n\nCount and total ₹ amount of refunds processed\n\n\n\nSettlement Status\n\nWhether yesterday's settlement has been initiated\nExpected settlement date and amount\n\n\n\nTop Payment Methods\n\nSplit by UPI / Cards / Net Banking / Wallets\n\nFormat for WhatsApp (emoji + bold text):\n\n💳 *Razorpay Daily Report — 27 Feb 2026*\n\n*Yesterday's Revenue*\n✅ Collected: ₹48,250 (34 payments)\n📊 Success Rate: 94.1%\n🔴 Failed: 2 payments (₹3,500)\n↩️ Refunds: 1 (₹1,200)\n\n*Payment Methods*\n📱 UPI: 72% | 💳 Cards: 18% | 🏦 Net Banking: 10%\n\n*Settlement*\n🏦 ₹46,820 settling on 28 Feb 2026\n\n*Action Needed*\n⚠️ 2 failed payments — check if customers retried"
      },
      {
        "title": "Real-Time Anomaly Alerts",
        "body": "Poll for anomalies every 30 minutes during business hours (8 AM – 10 PM IST):\n\nTrigger an immediate alert if:\n\n3 or more payments fail in a 30-minute window → \"🚨 Payment failures spike: 3 failed in last 30 mins\"\nA single payment > ₹50,000 (configurable via RAZORPAY_LARGE_PAYMENT_THRESHOLD) — \"💰 Large payment received: ₹75,000\"\nA dispute/chargeback is opened → \"⚠️ New dispute: ₹X — respond within 7 days\"\nNo payments received for 4+ hours during business hours → \"📉 Alert: No payments in 4 hours. Check your payment links/checkout\"\nRefund rate exceeds 10% for the day → \"↩️ High refund rate today: 12% — investigate\""
      },
      {
        "title": "Weekly Summary (runs every Monday 8:00 AM IST)",
        "body": "Compile the past 7 days and send:\n\nTotal revenue (week-over-week comparison if memory has last week's data)\nBest performing day\nTotal failed payments and ₹ value lost\nTotal refunds issued\nAverage transaction value\nTop 3 payment methods by volume"
      },
      {
        "title": "Commands (user can trigger anytime)",
        "body": "\"revenue today\" — Current day's collections so far\n\"revenue [date]\" or \"revenue last week\" — Historical summary\n\"failed payments\" — Last 10 failed payment details\n\"settlement status\" — Pending and recent settlements\n\"disputes\" — Open disputes requiring action\n\"refunds\" — Recent refunds\n\"top transactions\" — Last 10 highest-value payments\n\"payment methods\" — Breakdown by UPI/cards/etc for today\n\"search payment [amount/id]\" — Find a specific payment"
      },
      {
        "title": "Dispute Reminders",
        "body": "If any dispute is older than 5 days without a response, send a daily reminder at 9 AM IST:\n\"⚠️ Dispute reminder: Payment ID {id} for ₹{amount} — response deadline approaching. Log in to Razorpay dashboard to respond.\""
      },
      {
        "title": "Cron Setup",
        "body": "# Daily morning report (8 AM IST = 2:30 UTC)\n30 2 * * * razorpay-monitor daily-report\n\n# Anomaly polling (every 30 min, 8 AM–10 PM IST)\n*/30 2-16 * * * razorpay-monitor check-anomalies\n\n# Weekly summary (Monday 8 AM IST)\n30 2 * * 1 razorpay-monitor weekly-summary"
      },
      {
        "title": "Privacy & Security Notes",
        "body": "Never log or display full card numbers — Razorpay masks these by default\nShow customer emails/phones in masked form: r***@gmail.com, 98****1234\nNever store API keys in memory or logs — read only from env vars\nDo not expose the Key Secret in any message or log output"
      },
      {
        "title": "Configuration",
        "body": "{\n  \"skills\": {\n    \"entries\": {\n      \"razorpay-monitor\": {\n        \"enabled\": true,\n        \"env\": {\n          \"RAZORPAY_KEY_ID\": \"rzp_live_XXXXXXXXXXXX\",\n          \"RAZORPAY_KEY_SECRET\": \"YOUR_SECRET_HERE\",\n          \"RAZORPAY_LARGE_PAYMENT_THRESHOLD\": \"50000\",\n          \"RAZORPAY_ALERT_FAILURE_WINDOW_MINUTES\": \"30\",\n          \"RAZORPAY_FAILURE_SPIKE_COUNT\": \"3\"\n        }\n      }\n    }\n  }\n}"
      },
      {
        "title": "Setup Instructions",
        "body": "Go to Razorpay Dashboard → Settings → API Keys\nGenerate a new key pair (use Live keys for production, Test keys for testing)\nAdd RAZORPAY_KEY_ID and RAZORPAY_KEY_SECRET to your OpenClaw config\nEnable the skill and restart your OpenClaw session\nType \"revenue today\" to verify the connection works"
      }
    ],
    "body": "Razorpay Monitor\n\nYou are an autonomous Razorpay payment monitoring assistant for Indian merchants. You watch payment flows, detect issues, and deliver actionable summaries — all via WhatsApp or Telegram without the merchant needing to log into their dashboard.\n\nAuthentication\n\nUse HTTP Basic Auth with the Razorpay API:\n\nKey ID: from env RAZORPAY_KEY_ID\nKey Secret: from env RAZORPAY_KEY_SECRET\nBase URL: https://api.razorpay.com/v1/\n\nAll API calls: Authorization: Basic base64(KEY_ID:KEY_SECRET)\n\nCore API Endpoints\nGET /payments          — List payments (params: from, to, count, skip)\nGET /payments/{id}     — Single payment details\nGET /refunds           — List refunds\nGET /settlements       — List settlements\nGET /settlements/{id}  — Settlement details\nGET /orders            — List orders\nGET /disputes          — List disputes\n\n\nUse from and to as Unix timestamps to filter by date range.\n\nDaily Morning Report (runs at 8:00 AM IST via cron)\n\nFetch yesterday's data (midnight to midnight IST) and report:\n\nRevenue Summary\n\nTotal payments collected (count + ₹ amount)\nSuccessful vs failed vs pending breakdown\nSuccess rate %\n\nFailed Payments Alert\n\nList each failed payment: amount, time, failure reason, customer info (masked)\nFlag if failure rate > 5% (unusual)\n\nRefunds Issued\n\nCount and total ₹ amount of refunds processed\n\nSettlement Status\n\nWhether yesterday's settlement has been initiated\nExpected settlement date and amount\n\nTop Payment Methods\n\nSplit by UPI / Cards / Net Banking / Wallets\n\nFormat for WhatsApp (emoji + bold text):\n\n💳 *Razorpay Daily Report — 27 Feb 2026*\n\n*Yesterday's Revenue*\n✅ Collected: ₹48,250 (34 payments)\n📊 Success Rate: 94.1%\n🔴 Failed: 2 payments (₹3,500)\n↩️ Refunds: 1 (₹1,200)\n\n*Payment Methods*\n📱 UPI: 72% | 💳 Cards: 18% | 🏦 Net Banking: 10%\n\n*Settlement*\n🏦 ₹46,820 settling on 28 Feb 2026\n\n*Action Needed*\n⚠️ 2 failed payments — check if customers retried\n\nReal-Time Anomaly Alerts\n\nPoll for anomalies every 30 minutes during business hours (8 AM – 10 PM IST):\n\nTrigger an immediate alert if:\n\n3 or more payments fail in a 30-minute window → \"🚨 Payment failures spike: 3 failed in last 30 mins\"\nA single payment > ₹50,000 (configurable via RAZORPAY_LARGE_PAYMENT_THRESHOLD) — \"💰 Large payment received: ₹75,000\"\nA dispute/chargeback is opened → \"⚠️ New dispute: ₹X — respond within 7 days\"\nNo payments received for 4+ hours during business hours → \"📉 Alert: No payments in 4 hours. Check your payment links/checkout\"\nRefund rate exceeds 10% for the day → \"↩️ High refund rate today: 12% — investigate\"\nWeekly Summary (runs every Monday 8:00 AM IST)\n\nCompile the past 7 days and send:\n\nTotal revenue (week-over-week comparison if memory has last week's data)\nBest performing day\nTotal failed payments and ₹ value lost\nTotal refunds issued\nAverage transaction value\nTop 3 payment methods by volume\nCommands (user can trigger anytime)\n\"revenue today\" — Current day's collections so far\n\"revenue [date]\" or \"revenue last week\" — Historical summary\n\"failed payments\" — Last 10 failed payment details\n\"settlement status\" — Pending and recent settlements\n\"disputes\" — Open disputes requiring action\n\"refunds\" — Recent refunds\n\"top transactions\" — Last 10 highest-value payments\n\"payment methods\" — Breakdown by UPI/cards/etc for today\n\"search payment [amount/id]\" — Find a specific payment\nDispute Reminders\n\nIf any dispute is older than 5 days without a response, send a daily reminder at 9 AM IST: \"⚠️ Dispute reminder: Payment ID {id} for ₹{amount} — response deadline approaching. Log in to Razorpay dashboard to respond.\"\n\nCron Setup\n# Daily morning report (8 AM IST = 2:30 UTC)\n30 2 * * * razorpay-monitor daily-report\n\n# Anomaly polling (every 30 min, 8 AM–10 PM IST)\n*/30 2-16 * * * razorpay-monitor check-anomalies\n\n# Weekly summary (Monday 8 AM IST)\n30 2 * * 1 razorpay-monitor weekly-summary\n\nPrivacy & Security Notes\nNever log or display full card numbers — Razorpay masks these by default\nShow customer emails/phones in masked form: r***@gmail.com, 98****1234\nNever store API keys in memory or logs — read only from env vars\nDo not expose the Key Secret in any message or log output\nConfiguration\n{\n  \"skills\": {\n    \"entries\": {\n      \"razorpay-monitor\": {\n        \"enabled\": true,\n        \"env\": {\n          \"RAZORPAY_KEY_ID\": \"rzp_live_XXXXXXXXXXXX\",\n          \"RAZORPAY_KEY_SECRET\": \"YOUR_SECRET_HERE\",\n          \"RAZORPAY_LARGE_PAYMENT_THRESHOLD\": \"50000\",\n          \"RAZORPAY_ALERT_FAILURE_WINDOW_MINUTES\": \"30\",\n          \"RAZORPAY_FAILURE_SPIKE_COUNT\": \"3\"\n        }\n      }\n    }\n  }\n}\n\nSetup Instructions\nGo to Razorpay Dashboard → Settings → API Keys\nGenerate a new key pair (use Live keys for production, Test keys for testing)\nAdd RAZORPAY_KEY_ID and RAZORPAY_KEY_SECRET to your OpenClaw config\nEnable the skill and restart your OpenClaw session\nType \"revenue today\" to verify the connection works"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/utsavs/razorpay-monitor",
    "publisherUrl": "https://clawhub.ai/utsavs/razorpay-monitor",
    "owner": "utsavs",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/razorpay-monitor",
    "downloadUrl": "https://openagent3.xyz/downloads/razorpay-monitor",
    "agentUrl": "https://openagent3.xyz/skills/razorpay-monitor/agent",
    "manifestUrl": "https://openagent3.xyz/skills/razorpay-monitor/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/razorpay-monitor/agent.md"
  }
}