{"openapi":"3.1.0","info":{"title":"Checkout.com FX and Links (BYOK) API","version":"0.1.0","description":"Checkout.com FX and Links (BYOK) lets an AI assistant read your own Checkout.com FX and Links data through the Checkout.com FX and Links API with a key you supply (Checkout.com secret API key (sk_...)). Read-only: 6 tools (get_fx_rates, list_payment_methods, get_bank_account_formatting, get_payment_link, get_hosted_payment, get_transfer). The BYOK key travels with each request, is used for that...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-checkoutcom-fx-links.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-checkoutcom-fx-links/docs"},"termsOfService":"https://connectorbay.com/byok-checkoutcom-fx-links/terms"},"servers":[{"url":"https://byok-checkoutcom-fx-links.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-checkoutcom-fx-links/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_fx_rates":{"post":{"operationId":"get_fx_rates","summary":"Get the indicative FX rates Checkout.com uses for processing, for a product, card scheme and list of currency pairs. Use","description":"Get the indicative FX rates Checkout.com uses for processing, for a product, card scheme and list of currency pairs. Use for \"What is the Visa EUR to GBP rate for daily acquiring\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"prefix":{"description":"Your unique Checkout.com API prefix: the first 8 characters of your client ID (vkuhvk4v for cli_vkuhvk4vjn2edkps7dfsq6emqm). Letters, digits and hyphens only.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Prefix","type":"string"},"product":{"description":"Rate product: card_payouts, daily_acquiring or scheme_acquiring.","enum":["card_payouts","daily_acquiring","scheme_acquiring"],"title":"Product","type":"string"},"source":{"description":"Rate source: visa or mastercard.","enum":["mastercard","visa"],"title":"Source","type":"string"},"currency_pairs":{"description":"Comma-separated currency pairs such as GBPEUR,USDNOK.","maxLength":200,"title":"Currency Pairs","type":"string"},"processing_channel_id":{"description":"Your processing channel id, for example pc_zs5fqhybzc2e3jmq3efvybybpq.","maxLength":100,"title":"Processing Channel Id","type":"string"}},"required":["prefix","product","source","currency_pairs","processing_channel_id"],"title":"get_fx_ratesArguments","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_methods":{"post":{"operationId":"list_payment_methods","summary":"List the payment methods available to a processing channel, with the method type and partner merchant id where one appli","description":"List the payment methods available to a processing channel, with the method type and partner merchant id where one applies. Use for \"Which payment methods can processing channel pc_zs5fqhybzc2e3jmq3efvybybpq accept\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"prefix":{"description":"Your unique Checkout.com API prefix: the first 8 characters of your client ID (vkuhvk4v for cli_vkuhvk4vjn2edkps7dfsq6emqm). Letters, digits and hyphens only.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Prefix","type":"string"},"processing_channel_id":{"description":"Processing channel id, for example pc_zs5fqhybzc2e3jmq3efvybybpq.","maxLength":100,"title":"Processing Channel Id","type":"string"}},"required":["prefix","processing_channel_id"],"title":"list_payment_methodsArguments","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_bank_account_formatting":{"post":{"operationId":"get_bank_account_formatting","summary":"Get which bank account fields and formats are required to pay out to a country and currency, optionally for one account ","description":"Get which bank account fields and formats are required to pay out to a country and currency, optionally for one account holder type and payment network. Use for \"Which bank account details do I need to pay out in euros to Germany\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"prefix":{"description":"Your unique Checkout.com API prefix: the first 8 characters of your client ID (vkuhvk4v for cli_vkuhvk4vjn2edkps7dfsq6emqm). Letters, digits and hyphens only.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Prefix","type":"string"},"country":{"description":"Two-letter ISO country code, for example DE.","maxLength":200,"title":"Country","type":"string"},"currency":{"description":"Three-letter ISO currency code, for example EUR.","maxLength":200,"title":"Currency","type":"string"},"account_holder_type":{"anyOf":[{"enum":["individual","corporate","government"],"type":"string"},{"type":"null"}],"default":null,"description":"Only fields for this holder type: individual, corporate or government.","title":"Account Holder Type"},"payment_network":{"anyOf":[{"enum":["local","sepa","fps","ach","fedwire","swift"],"type":"string"},{"type":"null"}],"default":null,"description":"Only fields for this network: local, sepa, fps, ach, fedwire or swift.","title":"Payment Network"}},"required":["prefix","country","currency"],"title":"get_bank_account_formattingArguments","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_link":{"post":{"operationId":"get_payment_link","summary":"Get one payment link by id: status, amount, currency, reference, description, expiry and the payment made. Customer and ","description":"Get one payment link by id: status, amount, currency, reference, description, expiry and the payment made. Customer and address details are not returned. Use for \"Has payment link pl_ZXNwIxJ5Qa been paid\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"prefix":{"description":"Your unique Checkout.com API prefix: the first 8 characters of your client ID (vkuhvk4v for cli_vkuhvk4vjn2edkps7dfsq6emqm). Letters, digits and hyphens only.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Prefix","type":"string"},"id":{"description":"Payment link id, for example pl_ZXNwIxJ5Qa.","maxLength":200,"title":"Id","type":"string"}},"required":["prefix","id"],"title":"get_payment_linkArguments","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_hosted_payment":{"post":{"operationId":"get_hosted_payment","summary":"Get one Hosted Payments Page by id: status, amount, currency, reference, description and the payment made. Customer and ","description":"Get one Hosted Payments Page by id: status, amount, currency, reference, description and the payment made. Customer and address details are not returned. Use for \"Was hosted payments page hpp_wJnEJ1bJ3ZU paid\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"prefix":{"description":"Your unique Checkout.com API prefix: the first 8 characters of your client ID (vkuhvk4v for cli_vkuhvk4vjn2edkps7dfsq6emqm). Letters, digits and hyphens only.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Prefix","type":"string"},"id":{"description":"Hosted Payments Page id, for example hpp_wJnEJ1bJ3ZU.","maxLength":200,"title":"Id","type":"string"}},"required":["prefix","id"],"title":"get_hosted_paymentArguments","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_transfer":{"post":{"operationId":"get_transfer","summary":"Get one transfer between entities by id: status, type, reference, requested time, source entity and amount, destination ","description":"Get one transfer between entities by id: status, type, reference, requested time, source entity and amount, destination entity. Use for \"What is the status of transfer tid_vkuhvk4vjn2edkps7dfsq6emqm\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"prefix":{"description":"Your unique Checkout.com API prefix: the first 8 characters of your client ID (vkuhvk4v for cli_vkuhvk4vjn2edkps7dfsq6emqm). Letters, digits and hyphens only.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Prefix","type":"string"},"id":{"description":"Transfer id, for example tid_vkuhvk4vjn2edkps7dfsq6emqm.","maxLength":200,"title":"Id","type":"string"}},"required":["prefix","id"],"title":"get_transferArguments","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}}}}