{"openapi":"3.1.0","info":{"title":"Cashfree Payments (BYOK) API","version":"0.1.0","description":"Cashfree Payments (BYOK) lets an AI assistant read your own Cashfree Payments data through the Cashfree Payments API with a key you supply (Cashfree app ID (x-client-id)). Read-only: 10 tools (get_order, get_order_payments, get_order_refunds, get_refund, get_order_settlements, get_order_disputes, list_settlements, get_payment_reconciliation, get_settlement_reconciliation, list_payment_incidents)....\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-cashfree.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-cashfree/docs"},"termsOfService":"https://connectorbay.com/byok-cashfree/terms"},"servers":[{"url":"https://byok-cashfree.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-cashfree/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/get_order":{"post":{"operationId":"get_order","summary":"Get one payment gateway order: amount, currency, status, note, expiry, creation time and tags. Customer contact details ","description":"Get one payment gateway order: amount, currency, status, note, expiry, creation time and tags. Customer contact details are not returned by this connector. Use for \"What is the status of Cashfree order order_1001\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"order_id":{"description":"Your order ID (the order_id you chose when creating the order).","maxLength":200,"title":"Order Id","type":"string"}},"required":["order_id"],"title":"get_orderArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_order_payments":{"post":{"operationId":"get_order_payments","summary":"List all payment attempts of an order with status, amount, method group, gateway reference, bank reference and failure r","description":"List all payment attempts of an order with status, amount, method group, gateway reference, bank reference and failure reason. Use for \"Did the customer's payment attempts for order_1001 succeed\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"order_id":{"description":"Your order ID (the order_id you chose when creating the order).","maxLength":200,"title":"Order Id","type":"string"}},"required":["order_id"],"title":"get_order_paymentsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_order_refunds":{"post":{"operationId":"get_order_refunds","summary":"List all refunds of an order with amount, status, ARN, type, charge and timestamps. Use for \"What refunds were issued on","description":"List all refunds of an order with amount, status, ARN, type, charge and timestamps. Use for \"What refunds were issued on order_1001\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"order_id":{"description":"Your order ID (the order_id you chose when creating the order).","maxLength":200,"title":"Order Id","type":"string"}},"required":["order_id"],"title":"get_order_refundsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_refund":{"post":{"operationId":"get_refund","summary":"Get one refund of an order by refund ID. Use for \"What is the status of refund ref_55 on order_1001\".","description":"Get one refund of an order by refund ID. Use for \"What is the status of refund ref_55 on order_1001\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"order_id":{"description":"Your order ID (the order_id you chose when creating the order).","maxLength":200,"title":"Order Id","type":"string"},"refund_id":{"description":"The refund ID you chose when creating the refund.","maxLength":200,"title":"Refund Id","type":"string"}},"required":["order_id","refund_id"],"title":"get_refundArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_order_settlements":{"post":{"operationId":"get_order_settlements","summary":"Show how an order was settled: fees and taxes charged, amount settled, settlement ID, UTR, status and dates. Use for \"Ho","description":"Show how an order was settled: fees and taxes charged, amount settled, settlement ID, UTR, status and dates. Use for \"How much of order_1001 was settled to my bank and what was the fee\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"order_id":{"description":"Your order ID (the order_id you chose when creating the order).","maxLength":200,"title":"Order Id","type":"string"}},"required":["order_id"],"title":"get_order_settlementsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_order_disputes":{"post":{"operationId":"get_order_disputes","summary":"List disputes and chargebacks raised on an order with type, reason, amount, status and response deadline. Use for \"Are t","description":"List disputes and chargebacks raised on an order with type, reason, amount, status and response deadline. Use for \"Are there any chargebacks on order_1001\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"order_id":{"description":"Your order ID (the order_id you chose when creating the order).","maxLength":200,"title":"Order Id","type":"string"}},"required":["order_id"],"title":"get_order_disputesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_settlements":{"post":{"operationId":"list_settlements","summary":"List settlements to your bank with settled amount, charges, tax, UTR, status and period, newest first, with cursor pagin","description":"List settlements to your bank with settled amount, charges, tax, UTR, status and period, newest first, with cursor paging. Use for \"Which Cashfree settlements were paid out in October 2026\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":1000,"minimum":10,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (10 to 1000).","title":"Limit"},"cursor":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Pagination cursor: pass the cursor from the previous answer to get the next page; leave empty for the first page.","title":"Cursor"},"start_date":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Start of the date range, ISO 8601 date-time such as 2026-10-01T00:00:00Z.","title":"Start Date"},"end_date":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"End of the date range, ISO 8601 date-time such as 2026-10-31T23:59:59Z.","title":"End Date"}},"title":"list_settlementsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_payment_reconciliation":{"post":{"operationId":"get_payment_reconciliation","summary":"Get the payment gateway reconciliation report: per event the order, payment, settlement, refund and dispute details, wit","description":"Get the payment gateway reconciliation report: per event the order, payment, settlement, refund and dispute details, with cursor paging. Use for \"Reconcile my Cashfree payments for last week against settlements\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":1000,"minimum":10,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (10 to 1000).","title":"Limit"},"cursor":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Pagination cursor: pass the cursor from the previous answer to get the next page; leave empty for the first page.","title":"Cursor"},"start_date":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Start of the date range, ISO 8601 date-time such as 2026-10-01T00:00:00Z.","title":"Start Date"},"end_date":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"End of the date range, ISO 8601 date-time such as 2026-10-31T23:59:59Z.","title":"End Date"}},"title":"get_payment_reconciliationArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_settlement_reconciliation":{"post":{"operationId":"get_settlement_reconciliation","summary":"Get the settlement reconciliation report filtered by when settlements were initiated or processed, with cursor paging. U","description":"Get the settlement reconciliation report filtered by when settlements were initiated or processed, with cursor paging. Use for \"List the transactions inside Cashfree settlements initiated this week\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":1000,"minimum":10,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (10 to 1000).","title":"Limit"},"cursor":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Pagination cursor: pass the cursor from the previous answer to get the next page; leave empty for the first page.","title":"Cursor"},"start_date_initiated_on":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Settlements initiated from this ISO 8601 time.","title":"Start Date Initiated On"},"end_date_initiated_on":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Settlements initiated until this ISO 8601 time.","title":"End Date Initiated On"},"start_date_processed_on":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Settlements processed from this ISO 8601 time.","title":"Start Date Processed On"},"end_date_processed_on":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Settlements processed until this ISO 8601 time.","title":"End Date Processed On"}},"title":"get_settlement_reconciliationArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_payment_incidents":{"post":{"operationId":"list_payment_incidents","summary":"List payment method downtimes and incidents reported by Cashfree with impact, type, status, message and time window. Use","description":"List payment method downtimes and incidents reported by Cashfree with impact, type, status, message and time window. Use for \"Is there any UPI downtime at Cashfree right now\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"incident_status":{"anyOf":[{"enum":["ACTIVE","UPCOMING","RESOLVED"],"type":"string"},{"type":"null"}],"default":null,"description":"Filter by status, one value: ACTIVE, UPCOMING or RESOLVED.","title":"Incident Status"},"incident_impact":{"anyOf":[{"enum":["HIGH","MEDIUM","LOW"],"type":"string"},{"type":"null"}],"default":null,"description":"Filter by impact, one value: HIGH, MEDIUM or LOW.","title":"Incident Impact"},"payment_method":{"anyOf":[{"enum":["UPI","CARD","NET_BANKING","WALLET"],"type":"string"},{"type":"null"}],"default":null,"description":"Filter by payment method, one value: UPI, CARD, NET_BANKING or WALLET.","title":"Payment Method"}},"title":"list_payment_incidentsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}