api_specification.yaml.
Kupe App also mounts the same billing handlers at
/billing/* (no /api/v1 prefix). Treat those as aliases of /api/v1/billing/* — they are not extra products.Path map
| Kupe App | Methods | Kupe Hub | Notes |
|---|---|---|---|
/api/v1/billing/credit-balance | GET | No equivalent / Hub | Forex, platform pricing, invoice-metadata are not public. |
/api/v1/billing/forex-convert | GET | No equivalent / Hub | Forex, platform pricing, invoice-metadata are not public. |
/api/v1/billing/forex-quote | GET | No equivalent / Hub | Forex, platform pricing, invoice-metadata are not public. |
/api/v1/billing/invoice-metadata | GET | No equivalent / Hub | Forex, platform pricing, invoice-metadata are not public. |
/api/v1/billing/platform-pricing | GET | No equivalent / Hub | Forex, platform pricing, invoice-metadata are not public. |
/api/v1/billing/service-pricing | GET | No equivalent / Hub | Forex, platform pricing, invoice-metadata are not public. |
/api/v1/billing/usage-records | GET | GET /v1/orgs/:org_id/usage/cost-summary and .../usage/daily | No per-service or per-session public lines. |
/api/v1/billing/usage/export | GET | GET /v1/orgs/:org_id/usage/cost-summary and .../usage/daily | No per-service or per-session public lines. |
/api/v1/billing/usage/overview | GET | GET /v1/orgs/:org_id/usage/cost-summary and .../usage/daily | No per-service or per-session public lines. |
/api/v1/billing/usage/records | GET | GET /v1/orgs/:org_id/usage/cost-summary and .../usage/daily | No per-service or per-session public lines. |
/api/v1/billing/usage/sessions/:session_id | GET | GET /v1/orgs/:org_id/usage/cost-summary and .../usage/daily | No per-service or per-session public lines. |
/api/v1/billing/usage/summary | GET | GET /v1/orgs/:org_id/usage/cost-summary and .../usage/daily | No per-service or per-session public lines. |
/api/v1/billing/wallet-currency | GET | No equivalent / Hub | Forex, platform pricing, invoice-metadata are not public. |
/api/v1/credit-requests | POST | No equivalent | Credit tickets were Kupe App dashboard. |
/api/v1/credit-requests/admin | GET | No equivalent | Credit tickets were Kupe App dashboard. |
/api/v1/credit-requests/admin/badges | GET | No equivalent | Credit tickets were Kupe App dashboard. |
/api/v1/credit-requests/admin/mark-inbox-seen | POST | No equivalent | Credit tickets were Kupe App dashboard. |
/api/v1/credit-requests/admin/thread | GET | No equivalent | Credit tickets were Kupe App dashboard. |
/api/v1/credit-requests/me | GET | No equivalent | Credit tickets were Kupe App dashboard. |
/api/v1/credit-requests/me/badges | GET | No equivalent | Credit tickets were Kupe App dashboard. |
/api/v1/credit-requests/me/mark-seen | POST | No equivalent | Credit tickets were Kupe App dashboard. |
/api/v1/credit-requests/:request_id | GET, PATCH | No equivalent | Credit tickets were Kupe App dashboard. |
/api/v1/credit-requests/:request_id/admin-viewed | POST | No equivalent | Credit tickets were Kupe App dashboard. |
/api/v1/earnings/me | GET | No equivalent | |
/api/v1/earnings/me/breakdown | GET | No equivalent | |
/api/v1/earnings/orgs/:org_id | GET | No equivalent | |
/api/v1/orgs/:org_id/business-model | POST | No equivalent | Reseller controls. |
/api/v1/orgs/:org_id/commission | POST | No equivalent | Reseller controls. |
/api/v1/orgs/:org_id/markup | POST | No equivalent | Reseller controls. |
/api/v1/payments/billing-config | GET | No equivalent in public API | Checkout stays on Hub. Razorpay webhook is not your client route. |
/api/v1/payments/create-order | POST | No equivalent in public API | Checkout stays on Hub. Razorpay webhook is not your client route. |
/api/v1/payments/create-topup-order | POST | No equivalent in public API | Checkout stays on Hub. Razorpay webhook is not your client route. |
/api/v1/payments/invoices | GET | GET /v1/orgs/:org_id/billing/invoices + PDF | |
/api/v1/payments/invoices/:grant_id/download | GET | GET /v1/orgs/:org_id/billing/invoices + PDF | |
/api/v1/payments/orders/:order_id/invoice | GET | No equivalent in public API | Checkout stays on Hub. Razorpay webhook is not your client route. |
/api/v1/payments/plans | GET | No equivalent in public API | Checkout stays on Hub. Razorpay webhook is not your client route. |
/api/v1/payments/razorpay-config | GET | No equivalent in public API | Checkout stays on Hub. Razorpay webhook is not your client route. |
/api/v1/payments/razorpay-webhook | POST | No equivalent in public API | Checkout stays on Hub. Razorpay webhook is not your client route. |
/api/v1/payments/subscription/cancel | POST | No equivalent in public API | Checkout stays on Hub. Razorpay webhook is not your client route. |
/api/v1/payments/subscription/change-plan | POST | No equivalent in public API | Checkout stays on Hub. Razorpay webhook is not your client route. |
/api/v1/payments/subscription/me | GET | No equivalent in public API | Checkout stays on Hub. Razorpay webhook is not your client route. |
/api/v1/payments/verify-payment | POST | No equivalent in public API | Checkout stays on Hub. Razorpay webhook is not your client route. |
/api/v1/wallets/grants/:grant_id | PATCH | No equivalent (admin wallets/grants/caps) | Public: org wallet only. |
/api/v1/wallets/me | GET | GET /v1/orgs/:org_id/billing/wallet | |
/api/v1/wallets/orgs | GET | No equivalent (admin wallets/grants/caps) | Public: org wallet only. |
/api/v1/wallets/orgs/:org_id/members | GET | No equivalent (admin wallets/grants/caps) | Public: org wallet only. |
/api/v1/wallets/users | GET | No equivalent (admin wallets/grants/caps) | Public: org wallet only. |
/api/v1/wallets/:wallet_id | GET | No equivalent (admin wallets/grants/caps) | Public: org wallet only. |
/api/v1/wallets/:wallet_id/adjust | POST | No equivalent (admin wallets/grants/caps) | Public: org wallet only. |
/api/v1/wallets/:wallet_id/cap | POST | No equivalent (admin wallets/grants/caps) | Public: org wallet only. |
/api/v1/wallets/:wallet_id/grants | POST | No equivalent (admin wallets/grants/caps) | Public: org wallet only. |

