How SumUp’s scores are calculated
The full audit trail, recomputed from the verdict data at build time through the same code that produced the leaderboard: verdict × quality × story weight per cell, cells sum to dimension scores, dimensions blend into the PA Score. Every number on the product page is reproducible from this page alone; for why the formula looks like this, see the methodology.
verdict factors: full ×1.0 · partial ×0.6 · disputed ×0.3 · none ×0.0 · n/a excluded from both sides · cell points = weight × quality × factor · cell max = weight × 10
PA Score24/100
Agent-ready 58.0 × 0.30 = 17.40
API quality 11.4 × 0.20 = 2.28
Openness 8.6 × 0.20 = 1.72
Built-in AI 12.0 × 0.15 = 1.80
Automation 7.2 × 0.15 = 1.08
(17.40 + 2.28 + 1.72 + 1.80 + 1.08) ÷ (0.30 + 0.20 + 0.20 + 0.15 + 0.15) = 24.28 ÷ 1.00 = 24.3
Scores are stored to 1 decimal; the product page’s pills round to whole numbers for display. Each dimension below shows the stories, verdicts, and cited evidence behind its number.
Agent-ready58.0/100×0.30 of the PA blend
Outside-in: can YOUR agent reach and drive this product — API, MCP, CLI, headless runs, agent docs.
Point an agent at llms.txt or agent-oriented docsweight 2
2 (weight) × 9 (quality) × 1.0 (full) = 18.0 of 20 max
- [claimed-docs] https://developer.sumup.com/tools/llms/index.md“You can access all of our documentation as plain text Markdown files by adding index.md to the end of any URL.”
- [claimed-docs] https://developer.sumup.com“Give coding assistants current SumUp documentation and tools.”
- [probe] https://developer.sumup.com/llms.txt“PROBE llms.txt: HTTP 200 at https://developer.sumup.com/llms.txt # SumUp Developer ## Documentation Sets - [Abridged documentation](https://developer.sumup.com/llms-small.txt): a comp”
- [claimed-docs] https://developer.sumup.com/tools/llms/index.md“Use the SumUp MCP server to connect MCP-compatible clients and AI assistants to SumUp APIs and documentation tools.”
- [claimed-docs] https://developer.sumup.com/tools/llms/mcp-server/index.md“SumUp runs a managed MCP server at https://mcp.sumup.com/mcp. This endpoint allows your MCP client to interact with SumUp APIs to manage your account, create checkouts, or process payments”
Run the product headlessly / in CI for automationweight 2
2 (weight) × 5 (quality) × 0.6 (partial) = 6.0 of 20 max
- [claimed-docs] https://developer.sumup.com/online-payments/testing/index.md“SumUp provides sandbox merchant accounts and a comprehensive set of test cards to simulate various payment scenarios, including different 3D Secure authentication flows.”
- [claimed-docs] https://developer.sumup.com/tools/sdks/javascript/index.md“The @sumup/sdk package wraps SumUp API, ships TypeScript declarations, and works in modern JavaScript runtimes and platforms”
- [claimed-docs] https://developer.sumup.com/tools/authorization/api-keys/index.md“API keys are static credentials that let your application act on behalf of the merchant account that created the key.”
- [claimed-docs] https://developer.sumup.com/tools/sdks/javascript/index.md“The `@sumup/sdk` package wraps SumUp API, ships TypeScript declarations, and works in modern JavaScript runtimes and platforms, including Node.js 18+, Cloudflare Workers, Vercel, and other ESM-friendly environments.”
- [claimed-docs] https://developer.sumup.com/online-payments/webhooks/index.md“At this time our system only allows you to get notified about a status change for a checkout. To subscribe to an event, specify a `return_url` parameter upon checkout creation.”
Plug MCP servers into this product so it can use their toolsweight 3
n/a — not applicable to this product: excluded from numerator and denominator
- [claimed-docs] https://developer.sumup.com/tools/llms/mcp-server/index.md“SumUp runs a managed MCP server at https://mcp.sumup.com/mcp. This endpoint allows your MCP client to interact with SumUp APIs to manage your account, create checkouts, or process payments”
- [claimed-docs] https://developer.sumup.com/tools/llms/index.md“Use the SumUp MCP server to connect MCP-compatible clients and AI assistants to SumUp APIs and documentation tools.”
- [claimed-docs] https://developer.sumup.com/tools/llms/agent-toolkit/index.md“The SumUp Agent Toolkit adds SumUp API tools to agentic applications built with LangChain, AI SDK, the OpenAI Agents SDK, or the Model Context Protocol (MCP).”
Connect an agent via an official MCP serverweight 3
3 (weight) × 8 (quality) × 1.0 (full) = 24.0 of 30 max
- [claimed-docs] https://developer.sumup.com/tools/llms/mcp-server/index.md“SumUp runs a managed MCP server at https://mcp.sumup.com/mcp. This endpoint allows your MCP client to interact with SumUp APIs to manage your account, create checkouts, or process payments”
- [claimed-docs] https://developer.sumup.com/tools/llms/index.md“Use the SumUp MCP server to connect MCP-compatible clients and AI assistants to SumUp APIs and documentation tools.”
- [claimed-docs] https://developer.sumup.com/tools/llms/mcp-server/index.md“This endpoint allows your MCP client to interact with SumUp APIs to manage your account, create checkouts, or process payments using Cloud API.”
- [claimed-docs] https://developer.sumup.com/tools/llms/mcp-server/index.md“SumUp runs a managed MCP server at https://mcp.sumup.com/mcp. This endpoint allows your MCP client to interact with SumUp APIs to manage your account, create checkouts, or process payments using Cloud API.”
- [probe] https://developer.sumup.com/tools/llms/mcp-server“official MCP server documented at https://developer.sumup.com/tools/llms/mcp-server”
Use an official CLIweight 2
n/a — not applicable to this product: excluded from numerator and denominator
no evidence cited — the verdict rests on absence of evidence, re-checked on refresh
Drive the product through a documented public APIweight 3
3 (weight) × 8 (quality) × 1.0 (full) = 24.0 of 30 max
- [claimed-docs] https://developer.sumup.com“Create and verify a checkout with a sandbox merchant account.”
- [claimed-docs] https://developer.sumup.com/tools/sdks/javascript/index.md“const checkout = await client.checkouts.create({ amount: 2500, checkout_reference: "ORDER-1001", currency: "EUR"”
- [claimed-docs] https://developer.sumup.com/tools/authorization/api-keys/index.md“API keys are static credentials that let your application act on behalf of the merchant account that created the key.”
- [claimed-docs] https://developer.sumup.com/online-payments/testing/index.md“SumUp provides sandbox merchant accounts and a comprehensive set of test cards to simulate various payment scenarios, including different 3D Secure authentication flows.”
- [claimed-docs] https://developer.sumup.com/tools/sdks/javascript/index.md“The @sumup/sdk package wraps SumUp API, ships TypeScript declarations, and works in modern JavaScript runtimes and platforms”
- [claimed-docs] https://developer.sumup.com/online-payments/guides/refund/index.md“In this guide, you will learn how to refund a transaction... Option A: Make a full refund... Option B: Make a partial refund”
- [community] https://hn.algolia.com/api/v1/items/23900747“Developer built low-cost receipt printer integration for SumUp by hacking the system through SumUp's public API rather than communicating with the SumUp app directly on the device.”
- [probe] https://developer.sumup.com/openapi.json“PROBE openapi: all candidate paths 404 (https://developer.sumup.com/openapi.json, https://developer.sumup.com/swagger.json, https://developer.sumup.com/api/openapi.json, https://developer.sumup.com/.well-known/openapi.json)”
Issue scoped/least-privilege API credentials for an agentweight 2
2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max
- [claimed-docs] https://developer.sumup.com/tools/authorization/api-keys/index.md“API keys are static credentials that let your application act on behalf of the merchant account that created the key.”
Build against official SDKsweight 2
2 (weight) × 8 (quality) × 1.0 (full) = 16.0 of 20 max
- [claimed-docs] https://developer.sumup.com/tools/sdks/javascript/index.md“The @sumup/sdk package wraps SumUp API, ships TypeScript declarations, and works in modern JavaScript runtimes and platforms”
- [claimed-docs] https://developer.sumup.com/tools/sdks/javascript/index.md“The `@sumup/sdk` package wraps SumUp API, ships TypeScript declarations, and works in modern JavaScript runtimes and platforms, including Node.js 18+, Cloudflare Workers, Vercel, and other ESM-friendly environments.”
- [claimed-docs] https://developer.sumup.com/tools/llms/agent-toolkit/index.md“The SumUp Agent Toolkit adds SumUp API tools to agentic applications built with LangChain, AI SDK, the OpenAI Agents SDK, or the Model Context Protocol (MCP).”
- [claimed-docs] https://developer.sumup.com/tools/llms/agent-toolkit/index.md“adds SumUp API tools to agentic applications built with LangChain, AI SDK, the OpenAI Agents SDK, or the Model Context Protocol (MCP)”
- [claimed-docs] https://developer.sumup.com/tools/llms/mcp-server/index.md“SumUp runs a managed MCP server at https://mcp.sumup.com/mcp. This endpoint allows your MCP client to interact with SumUp APIs to manage your account, create checkouts, or process payments”
- [claimed-docs] https://developer.sumup.com/tools/llms/mcp-server/index.md“SumUp runs a managed MCP server at https://mcp.sumup.com/mcp. This endpoint allows your MCP client to interact with SumUp APIs to manage your account, create checkouts, or process payments using Cloud API.”
- [probe] https://developer.sumup.com/tools/llms/mcp-server“official MCP server documented at https://developer.sumup.com/tools/llms/mcp-server”
Subscribe to events via webhooksweight 2
2 (weight) × 4 (quality) × 0.6 (partial) = 4.8 of 20 max
- [claimed-docs] https://developer.sumup.com/online-payments/webhooks/index.md“At this time our system only allows you to get notified about a status change for a checkout.”
- [claimed-docs] https://developer.sumup.com/online-payments/webhooks/index.md“our system only allows you to get notified about a status change for a checkout”
- [claimed-docs] https://developer.sumup.com/online-payments/webhooks/index.md“At this time our system only allows you to get notified about a status change for a checkout. To subscribe to an event, specify a `return_url` parameter upon checkout creation.”
Agent-ready = 92.8 ÷ 160 × 100 = 58.0
API quality11.4/100×0.20 of the PA blend
The programmable surface once an agent is there — machine-readable spec, interactive docs, sandbox, versioning discipline.
Explore an interactive API reference with runnable examplesweight 2
2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max
- [claimed-docs] https://developer.sumup.com/tools/sdks/javascript/index.md“const checkout = await client.checkouts.create({ amount: 2500, checkout_reference: "ORDER-1001", currency: "EUR"”
- [probe] https://developer.sumup.com/openapi.json“PROBE openapi: all candidate paths 404 (https://developer.sumup.com/openapi.json, https://developer.sumup.com/swagger.json, https://developer.sumup.com/api/openapi.json, https://developer.sumup.com/.well-known/openapi.json)”
- [probe] https://developer.sumup.com/llms.txt“PROBE llms.txt: HTTP 200 at https://developer.sumup.com/llms.txt # SumUp Developer ## Documentation Sets - [Abridged documentation](https://developer.sumup.com/llms-small.txt): a comp”
Download a machine-readable API spec (OpenAPI or equivalent)weight 2
2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max
- [probe] https://developer.sumup.com/openapi.json“PROBE openapi: all candidate paths 404 (https://developer.sumup.com/openapi.json, https://developer.sumup.com/swagger.json, https://developer.sumup.com/api/openapi.json, https://developer.sumup.com/.well-known/openapi.json)”
- [probe] https://developer.sumup.com/llms.txt“PROBE llms.txt: HTTP 200 at https://developer.sumup.com/llms.txt # SumUp Developer ## Documentation Sets - [Abridged documentation](https://developer.sumup.com/llms-small.txt): a comp”
Test against a sandbox environment without touching production dataweight 1
1 (weight) × 8 (quality) × 1.0 (full) = 8.0 of 10 max
- [claimed-docs] https://developer.sumup.com/online-payments/testing/index.md“SumUp provides sandbox merchant accounts and a comprehensive set of test cards to simulate various payment scenarios, including different 3D Secure authentication flows.”
- [claimed-docs] https://developer.sumup.com“Create and verify a checkout with a sandbox merchant account.”
- [claimed-docs] https://developer.sumup.com/terminal-payments/cloud-api/index.md“Use Virtual Solo together with a sandbox merchant account to test the pairing and checkout flow first, then switch to a physical reader later”
- [claimed-docs] https://developer.sumup.com“Exercise successful, failed, and 3D Secure payment flows.”
- [claimed-docs] https://developer.sumup.com“Prepare a merchant account, device, and integration for testing.”
Rely on versioned APIs with a documented deprecation policyweight 2
2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max
- [probe] https://developer.sumup.com/openapi.json“PROBE openapi: all candidate paths 404 (https://developer.sumup.com/openapi.json, https://developer.sumup.com/swagger.json, https://developer.sumup.com/api/openapi.json, https://developer.sumup.com/.well-known/openapi.json)”
API quality = 8.0 ÷ 70 × 100 = 11.4
Openness8.6/100×0.20 of the PA blend
Can you leave, inspect, or self-host — data export, open source, portability.
Do everything through the API that I can do in the UIweight 2
2 (weight) × 5 (quality) × 0.6 (partial) = 6.0 of 20 max
- [claimed-docs] https://developer.sumup.com/tools/sdks/javascript/index.md“const checkout = await client.checkouts.create({ amount: 2500, checkout_reference: "ORDER-1001", currency: "EUR"”
- [claimed-docs] https://developer.sumup.com/online-payments/guides/refund/index.md“When you complete these steps, the payment you have previously processed through SumUp will be refunded either partially or in full.”
- [claimed-docs] https://developer.sumup.com/online-payments/webhooks/index.md“our system only allows you to get notified about a status change for a checkout”
- [claimed-docs] https://developer.sumup.com/online-payments/webhooks/index.md“At this time our system only allows you to get notified about a status change for a checkout. To subscribe to an event, specify a `return_url` parameter upon checkout creation.”
- [claimed-docs] https://developer.sumup.com/tools/llms/mcp-server/index.md“SumUp runs a managed MCP server at https://mcp.sumup.com/mcp. This endpoint allows your MCP client to interact with SumUp APIs to manage your account, create checkouts, or process payments”
- [claimed-docs] https://developer.sumup.com/tools/llms/index.md“Use the SumUp MCP server to connect MCP-compatible clients and AI assistants to SumUp APIs and documentation tools.”
- [probe] https://developer.sumup.com/tools/llms/mcp-server“official MCP server documented at https://developer.sumup.com/tools/llms/mcp-server”
Export all of my data in open formats and leaveweight 3
3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max
no evidence cited — the verdict rests on absence of evidence, re-checked on refresh
Read the product's source under an open licenseweight 2
2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max
no evidence cited — the verdict rests on absence of evidence, re-checked on refresh
Self-host the core productweight 3
n/a — not applicable to this product: excluded from numerator and denominator
no evidence cited — the verdict rests on absence of evidence, re-checked on refresh
Openness = 6.0 ÷ 70 × 100 = 8.6
Built-in AI12.0/100×0.15 of the PA blend
Inside-out: how agentic the product itself is for its users — built-in assistants, autonomous features.
Get AI-generated insights and suggestions from my data inside the productweight 2
n/a — not applicable to this product: excluded from numerator and denominator
no evidence cited — the verdict rests on absence of evidence, re-checked on refresh
Set up automations that run autonomously in the backgroundweight 2
2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max
no evidence cited — the verdict rests on absence of evidence, re-checked on refresh
Delegate tasks to a built-in AI assistant inside the productweight 3
3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max
- [claimed-docs] https://developer.sumup.com/tools/llms/mcp-server/index.md“SumUp runs a managed MCP server at https://mcp.sumup.com/mcp. This endpoint allows your MCP client to interact with SumUp APIs to manage your account, create checkouts, or process payments”
- [claimed-docs] https://developer.sumup.com/tools/llms/agent-toolkit/index.md“The SumUp Agent Toolkit adds SumUp API tools to agentic applications built with LangChain, AI SDK, the OpenAI Agents SDK, or the Model Context Protocol (MCP).”
- [claimed-docs] https://developer.sumup.com/tools/llms/index.md“Use the SumUp MCP server to connect MCP-compatible clients and AI assistants to SumUp APIs and documentation tools.”
- [claimed-docs] https://developer.sumup.com/tools/llms/agent-toolkit/index.md“adds SumUp API tools to agentic applications built with LangChain, AI SDK, the OpenAI Agents SDK, or the Model Context Protocol (MCP)”
Operate the product with natural-language commandsweight 2
2 (weight) × 7 (quality) × 0.6 (partial) = 8.4 of 20 max
- [claimed-docs] https://developer.sumup.com/tools/llms/mcp-server/index.md“SumUp runs a managed MCP server at https://mcp.sumup.com/mcp. This endpoint allows your MCP client to interact with SumUp APIs to manage your account, create checkouts, or process payments”
- [claimed-docs] https://developer.sumup.com/tools/llms/index.md“Use the SumUp MCP server to connect MCP-compatible clients and AI assistants to SumUp APIs and documentation tools.”
- [claimed-docs] https://developer.sumup.com/tools/llms/agent-toolkit/index.md“The SumUp Agent Toolkit adds SumUp API tools to agentic applications built with LangChain, AI SDK, the OpenAI Agents SDK, or the Model Context Protocol (MCP).”
- [claimed-docs] https://developer.sumup.com/tools/llms/mcp-server/index.md“SumUp runs a managed MCP server at https://mcp.sumup.com/mcp. This endpoint allows your MCP client to interact with SumUp APIs to manage your account, create checkouts, or process payments using Cloud API.”
- [probe] https://developer.sumup.com/tools/llms/mcp-server“official MCP server documented at https://developer.sumup.com/tools/llms/mcp-server”
Built-in AI = 8.4 ÷ 70 × 100 = 12.0
Automation7.2/100×0.15 of the PA blend
Depth of automation primitives — rules, scheduling, bulk operations, webhooks.
Perform bulk operations across many items at onceweight 2
2 (weight) × 3 (quality) × 0.6 (partial) = 3.6 of 20 max
- [claimed-docs] https://developer.sumup.com/terminal-payments/cloud-api/index.md“Ability to process simultaneous transactions on multiple Solo card readers at once - No distance limitation between your POS device and the Solo card reader”
- [claimed-docs] https://developer.sumup.com/terminal-payments/cloud-api/index.md“Ability to process simultaneous transactions on multiple Solo card readers at once”
- [claimed-docs] https://developer.sumup.com/terminal-payments/cloud-api/index.md“Pairing multiple Solo card readers with any SumUp account - Naming each Solo card reader as desired to streamline checkout”
- [claimed-docs] https://developer.sumup.com/tools/llms/mcp-server/index.md“SumUp runs a managed MCP server at https://mcp.sumup.com/mcp. This endpoint allows your MCP client to interact with SumUp APIs to manage your account, create checkouts, or process payments”
- [claimed-docs] https://developer.sumup.com/tools/llms/agent-toolkit/index.md“The SumUp Agent Toolkit adds SumUp API tools to agentic applications built with LangChain, AI SDK, the OpenAI Agents SDK, or the Model Context Protocol (MCP).”
Define rules that trigger actions automatically on eventsweight 3
3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max
- [claimed-docs] https://developer.sumup.com/online-payments/webhooks/index.md“At this time our system only allows you to get notified about a status change for a checkout.”
- [claimed-docs] https://developer.sumup.com/online-payments/webhooks/index.md“our system only allows you to get notified about a status change for a checkout”
- [claimed-docs] https://developer.sumup.com/online-payments/webhooks/index.md“At this time our system only allows you to get notified about a status change for a checkout. To subscribe to an event, specify a `return_url` parameter upon checkout creation.”
Schedule recurring jobs or workflowsweight 2
n/a — not applicable to this product: excluded from numerator and denominator
no evidence cited — the verdict rests on absence of evidence, re-checked on refresh
Version, review, and roll back my automationsweight 1
n/a — not applicable to this product: excluded from numerator and denominator
no evidence cited — the verdict rests on absence of evidence, re-checked on refresh
Automation = 3.6 ÷ 50 × 100 = 7.2