Sumup Best Practices

by sumupcb72003b417cApache-2.0Listed Oct 8, 2026Updated Oct 8, 2026

Pick the right SumUp integration path and apply security best practices. Use when deciding between Hosted Checkout, Card Widget, Checkouts API, mobile SDKs, terminal SDKs, or Cloud API; choosing API key vs OAuth vs restricted keys; or reviewing SumUp integration security.

AI-generated overview

Guides selection of SumUp payment integration paths and reviews their security best practices.

What it does
This skill helps an agent choose among SumUp payment integration options such as Hosted Checkout, Card Widget, Checkouts API, mobile SDKs, terminal SDKs, and Cloud API. It also advises on credential models, including API keys versus OAuth and restricted keys, and on security practices for SumUp integrations. It produces architecture and security guidance rather than implementation walkthroughs.
When to use it
Use it when deciding which SumUp integration path fits a payment scenario, or when choosing between API key, OAuth, and restricted key authentication. It is also intended for reviewing the security posture of a SumUp integration before production rollout.
Requirements
No scripts or special tooling are required; it is instructions only. It references SumUp developer documentation online, so network access to those docs is useful.

SumUp Integration Decisions and Best Practices

Knowledge and APIs can change. Always prefer the latest SumUp docs in markdown format over stale memory.

  • Docs root: https://developer.sumup.com/
  • LLM entrypoint: https://developer.sumup.com/llms.txt

Use this skill for architecture and security decisions, not implementation walkthroughs.

Quick Decision Tree

text
Need to accept a payment?├─ In-person (card-present)│  ├─ Native mobile app controls reader directly -> iOS Terminal SDK / Android Reader SDK│  ├─ POS/backend controls Solo from non-native environment -> Cloud API│  └─ Legacy handoff to SumUp app is mandatory -> Payment Switch└─ Online (card-not-present)   ├─ Fastest redirect flow, no embed required -> Hosted Checkout   ├─ Embedded payment form with low PCI scope -> Card Widget   ├─ Mobile app checkout UX -> Swift Checkout SDK / React Native SDK   ├─ Save card and charge later -> Customers + tokenization   └─ Custom orchestration needs -> Checkouts API + 3DS + webhooks

Start Here

  1. Classify the request: terminal, online, or hybrid.
  2. Choose the lowest-complexity viable path first:
    • Prefer Hosted Checkout or Card Widget before custom orchestration.
    • Prefer Cloud API for non-native Solo control.
  3. Select auth model:
    • API key for single-merchant server integrations.
    • OAuth 2.0 for delegated or multi-merchant apps.
  4. Confirm restricted access and affiliate prerequisites:
    • payments scope activation where needed.
    • Affiliate Key plus app/bundle identifier alignment for card-present.
  5. Confirm operational constraints:
    • Currency/merchant alignment
    • Webhook endpoint readiness and idempotency
    • Legacy compatibility requirements

Non-Negotiable Rules

  • Keep API keys and OAuth secrets server-side only.
  • Never handle raw PAN/card details directly.
  • Create online checkouts server-to-server.
  • Prefer hosted/widget/SDK checkout UI over custom card handling.
  • Avoid deprecated endpoints.
  • Use unique transaction references (checkout_reference, foreignTransactionId, or equivalent).
  • Treat webhook callbacks as signals and verify final state via API before fulfillment.
  • Assume retries and duplicate deliveries; enforce idempotent backend handling.

Required Response Contract

When giving guidance, always return:

  1. Chosen integration path with a brief why.
  2. Credential model recommendation (API key vs OAuth) and scope requirements.
  3. Security posture checklist for the chosen path.
  4. Risks/trade-offs and when to pick a different path.
  5. Minimum validation plan before production rollout.

Hand-off to Implementation Skills

  • Use sumup for end-to-end implementation steps.
  • Use upgrade-sumup for SDK/API migrations.
  • Use sumup-debug for failure diagnosis.
  • Use sumup-testing for sandbox and QA setup.

Source and attribution

Source:sumup/sumup-skillsinskills/sumup-best-practicesat commitcb72003

License: Apache-2.0

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal