{"openapi":"3.1.0","info":{"title":"Philippines QR Ph Payload Checker API","version":"0.1.0","description":"Philippines QR Ph Payload Checker validates and decodes the EMV merchant-presented layout that QR Ph builds on. validate_qrph checks the structure, the field length limits and the CRC-16 of a pasted string and warns when the currency is not 608 (PHP) or the country is not PH. parse_qrph decodes merchant name, city, category code, amount, additional data and lists every merchant account template...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://ph-qrph-check.connectorbay.com/mcp.\n\nDisclaimer: General information only, not legal, tax, accounting or payment advice. Philippines QR Ph Payload Checker 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/ph-qrph-check/docs"},"termsOfService":"https://connectorbay.com/ph-qrph-check/terms"},"servers":[{"url":"https://ph-qrph-check.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/ph-qrph-check/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/validate_qrph":{"post":{"operationId":"validate_qrph","summary":"Check a pasted QR Ph payload at the EMV level: structure, field length limits, CRC-16, currency 608 and country PH; list","description":"Check a pasted QR Ph payload at the EMV level: structure, field length limits, CRC-16, currency 608 and country PH; lists errors and warnings; QR Ph-specific templates are listed but not judged. Use for \"Is this QR Ph text a valid EMV payload and is the CRC right?\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"payload":{"description":"The full QR text: starts with 000201 and ends with the four-character CRC (tag 63)","title":"Payload","type":"string"}},"required":["payload"],"title":"validate_qrphArguments","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/parse_qrph":{"post":{"operationId":"parse_qrph","summary":"Decode a QR Ph payload into merchant name, city, category code, amount, currency, country, additional data and the list ","description":"Decode a QR Ph payload into merchant name, city, category code, amount, currency, country, additional data and the list of merchant account templates (tag and GUI) without interpreting their QR Ph sub-fields. Use for \"Which merchant does this QR Ph code show and how much does it ask?\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"payload":{"description":"The full QR text: starts with 000201 and ends with the four-character CRC (tag 63)","title":"Payload","type":"string"}},"required":["payload"],"title":"parse_qrphArguments","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/qrph_field_guide":{"post":{"operationId":"qrph_field_guide","summary":"Explain the generic EMV tags used in a QR Ph payload and say which parts (the QR Ph merchant account template) are not d","description":"Explain the generic EMV tags used in a QR Ph payload and say which parts (the QR Ph merchant account template) are not documented here. Use for \"What do the tags of a QR Ph code mean?\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"tag":{"default":"all","description":"A top-level tag such as 26, 54 or 62, or all","title":"Tag","type":"string"}},"title":"qrph_field_guideArguments","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/qrph_rules_summary":{"post":{"operationId":"qrph_rules_summary","summary":"What the Bangko Sentral ng Pilipinas QR Ph FAQ says: launch, BSP Circular No. 1055, EMVCo alignment, who generates the m","description":"What the Bangko Sentral ng Pilipinas QR Ph FAQ says: launch, BSP Circular No. 1055, EMVCo alignment, who generates the merchant code, customer fees and InstaPay settlement, each with the quoted sentence. Use for \"What are the rules behind QR Ph for a small merchant?\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"qrph_rules_summaryArguments","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/qrph_crc_check":{"post":{"operationId":"qrph_crc_check","summary":"Compute the CRC-16/CCITT-FALSE of a payload body that ends with 6304 and, when a full payload is given, compare it with ","description":"Compute the CRC-16/CCITT-FALSE of a payload body that ends with 6304 and, when a full payload is given, compare it with the CRC it carries. Use for \"What CRC should go at the end of this QR Ph payload?\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"payload":{"description":"A payload body ending with 6304, or a full payload whose last four characters are compared","title":"Payload","type":"string"}},"required":["payload"],"title":"qrph_crc_checkArguments","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}}}}