{"openapi":"3.1.0","info":{"title":"Peru SUNAT Monthly Due Dates API","version":"0.1.0","description":"Returns the due date of each 2026 monthly tax period (Ene-2026 to Dic-2026) for the last digit of a RUC or for the Buenos Contribuyentes / UESP column, as SUNAT prints them in its Cronograma de Obligaciones Mensuales (the table includes the Impuesto a las Transacciones Financieras payment), and the next date on or after a day the caller names. Dates only: no amounts, no filing. The page models no...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://pe-sunat-calendar.connectorbay.com/mcp.\n\nDisclaimer: General information only, not legal, tax, accounting or payment advice. Peru SUNAT Monthly Due Dates is an independent tool: it is not affiliated with, endorsed by or operated by any government body, central bank, standards body or scheme operator. Rates, thresholds and rules change; check the cited official source and confirm with a qualified professional before you rely on a result.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/pe-sunat-calendar/docs"},"termsOfService":"https://connectorbay.com/pe-sunat-calendar/terms"},"servers":[{"url":"https://pe-sunat-calendar.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/pe-sunat-calendar/docs"},"security":[{},{"bearer":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/due_date":{"post":{"operationId":"due_date","summary":"Due date of one 2026 monthly period for a RUC last digit or the special column. Use for \"When is the Sep-2026 monthly re","description":"Due date of one 2026 monthly period for a RUC last digit or the special column. Use for \"When is the Sep-2026 monthly return due for a RUC ending in 4\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"period":{"description":"Tax period as MM-2026, for example 09-2026 (01 to 12)","title":"Period","type":"string"},"ruc_last_digit":{"description":"Last digit of the RUC, one character 0 to 9, or the word special for the Buenos Contribuyentes / UESP column (never a full RUC)","title":"Ruc Last Digit","type":"string"}},"required":["period","ruc_last_digit"],"title":"due_dateArguments","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/next_due":{"post":{"operationId":"next_due","summary":"Next due date on or after a day for a RUC last digit, with its period. Use for \"What is my next SUNAT monthly due date a","description":"Next due date on or after a day for a RUC last digit, with its period. Use for \"What is my next SUNAT monthly due date after 2 October 2026 for a RUC ending in 7\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"ruc_last_digit":{"description":"Last digit of the RUC, one character 0 to 9, or the word special for the Buenos Contribuyentes / UESP column (never a full RUC)","title":"Ruc Last Digit","type":"string"},"on_date":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Day to search from, YYYY-MM-DD; default today","title":"On Date"}},"required":["ruc_last_digit"],"title":"next_dueArguments","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/year_table":{"post":{"operationId":"year_table","summary":"All twelve 2026 periods with their due dates for one RUC last digit. Use for \"Show all twelve 2026 periods for a RUC end","description":"All twelve 2026 periods with their due dates for one RUC last digit. Use for \"Show all twelve 2026 periods for a RUC ending in 0\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"ruc_last_digit":{"description":"Last digit of the RUC, one character 0 to 9, or the word special for the Buenos Contribuyentes / UESP column (never a full RUC)","title":"Ruc Last Digit","type":"string"}},"required":["ruc_last_digit"],"title":"year_tableArguments","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/digit_groups":{"post":{"operationId":"digit_groups","summary":"How RUC digits are grouped in the table and what the special column is. Use for \"How are RUC digits grouped\".","description":"How RUC digits are grouped in the table and what the special column is. Use for \"How are RUC digits grouped\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"digit_groupsArguments","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/scope_and_basis":{"post":{"operationId":"scope_and_basis","summary":"What the table covers, its legal basis and what it does not model. Use for \"What does the SUNAT monthly table cover\".","description":"What the table covers, its legal basis and what it does not model. Use for \"What does the SUNAT monthly table cover\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"scope_and_basisArguments","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}}}}