SumUp SDK का उपयोग करने के लिए Flutter वрапर। इस प्लगइन के साथ, आपकी ऐप आसानी से SumUp टर्मिनल से कनेक्ट कर सकती है, लॉगिन कर सकती है और Android और iOS पर कार्ड भुगतान स्वीकार कर सकती है।
सार्वजनिक जानकारी से बना चयन मार्गदर्शन। केवल संदर्भ हेतु।
sumup पैकेज एंड्रॉइड और आईओएस पर फ्लटर ऐप्स में कार्ड भुगतान कार्यक्षमता को बिना किसी दिक्कत के एकीकृत करने के लिए समअप एसडीके का फ्लटर लेपर है। यह विकासकर्मियों को समअप टर्मिनल से जुड़ने, उपयोगकर्ता की प्रमाणीकरण और उनके ऐप्स के भीतर भुगतान प्रक्रिया करने की अनुमति देता है। सरलता और विश्वसनीयता के लिए डिज़ाइन किया गया, यह मूल एसडीके इंटरैक्शन की जटिलताओं को छिपाता है जबकि सुरक्षित लेनदेन का निपटारा करता है। कम सेटअप के साथ मोबाइल पॉइंट-ऑफ-सेल क्षमता की आवश्यकता वाले व्यवसायों के लिए आदर्श।
उपयोग
मोबाइल POS प्रणाली
फ़िजिकल रिटेल भुगतान
गतिशील सेवा बिलिंग
ईवेंट टिकटिंग ऐप्स
छोटे व्यवसाय के भुगतान समाधान
मुख्य विशेषताएँ
मूल SumUp SDK एकीकरण
सुरक्षित कार्ड भुगतान प्रोसेसिंग
क्रॉस-प्लेटफ़ॉर्म समर्थन (Android और iOS)
आसान टर्मिनल कनेक्शन
उपयोगकर्ता प्रमाणीकरण प्रवाह
इनके लिए उपयुक्त
रिटेल ऐप्स
सेवा-आधारित व्यवसाय
इवेंट आयोजक
फ्रीलांसर्स पेमेंट स्वीकार कर रहे हैं
ई-कॉमर्स एक्सटेंशन्स
विचार योग्य बातें
SumUp व्यापारी खाते की आवश्यकता है
समर्थित क्षेत्रों तक सीमित
SumUp टर्मिनल हार्डवेयर पर निर्भर
भुगतान नियमों के साथ उचित सुसंगतता की आवश्यकता है
पृष्ठभूमि निष्पादन के लिए अतिरिक्त सेटिंग की आवश्यकता हो सकती है
मूल README
संबंधित सोर्स रिपॉज़िटरी के मूल README का स्नैपशॉट। नवीनतम सामग्री के लिए रिपॉज़िटरी देखें।
sumup
A Flutter plugin for the SumUp SDK. Supports card reader and Tap-to-Pay payments on Android and iOS.
Partner Links
Support this project by purchasing SumUp terminals through our affiliate links for your country:
Registered for a merchant account via SumUp's country websites (or received a test account).
Received a SumUp card terminal: Solo, Air, Air Lite, PIN+ terminal, Chip & Signature reader, or SumUp Air Register.
Requested an Affiliate (Access) Key and registered your application ID via the SumUp Dashboard.
Flutter 3.44+ and Dart 3.12+.
iOS deployment target 16.0+ and Xcode 26.2+ (iOS 16.7+ for Tap-to-Pay; 17.5+ recommended).
Android minSdkVersion 26+ (30+ for Tap-to-Pay), targetSdkVersion 36, Java 17, Android Gradle Plugin 9.2.1, and Gradle 9.5.1.
Migrating from 0.14.x
Version 0.15.0 adopts the native SDK 7.x toolchains.
Upgrade the app to Flutter 3.44+ / Dart 3.12+. SumUp Android SDK 7.1 requires Kotlin 2.4.0,
while Flutter 3.44 still needs its temporary AGP 9 compatibility mode for this explicit KGP
version. In the host app's android/gradle.properties, set:
android.builtInKotlin=false
android.newDsl=false
Declare org.jetbrains.kotlin.android version 2.4.0 with apply false in
android/settings.gradle:
plugins {
id "org.jetbrains.kotlin.android" version "2.4.0" apply false
}
Then apply it in android/app/build.gradle:
plugins {
id "org.jetbrains.kotlin.android"
}
Flutter 3.44 reports this legacy-KGP path as temporary; keep the two compatibility flags until
Flutter can use the vendor-required Kotlin version through AGP's built-in Kotlin integration.
Compile and target Android API 36 with Java 17, AGP 9.2.1, and Gradle 9.5.1.
Keep Android minSdk 26 for card-reader-only apps. Configuring Tap-to-Pay credentials enables the
TTP implementation; the host app must then also set minSdk to 30.
Use an iOS 16 deployment target with Xcode 26.2 or later. Swift Package Manager is recommended;
SumUp will stop publishing new CocoaPods SDK releases after October 31, 2026.
Android rollback warning: after an app has initialized SumUp Android SDK 7.1.0, downgrading
that installation to a version backed by an older native SDK is not supported. Validate the
migration with a sandbox merchant and use a staged rollout.
iOS rollback warning: before downgrading from SumUp iOS SDK 7.1.2, upload all pending Offline
Payments. If a downgrade is unavoidable, upload them first, delete the app, and then install the
version backed by the older SDK.
Installing
Add sumup to your pubspec.yaml:
dependencies:sumup:
Import sumup:
import'package:sumup/sumup.dart';
Getting Started
// 1. Initialise the SDK with your Affiliate KeyawaitSumup.init(affiliateKey);
// 2. Log in — either interactively or with an OAuth tokenawaitSumup.login();
// orawaitSumup.loginWithToken(token);
// 3. (Optional) Ask the user to pick / configure a card readerawaitSumup.openSettings();
// 4. Optionally warm up the reader before checkoutawaitSumup.prepareForCheckout();
// 5. Run a checkoutvar payment = SumupPayment(
title: 'Coffee',
total: 3.50,
currency: 'EUR',
foreignTransactionId: '', // leave empty to auto-generate a unique ID
saleItemsCount: 1,
skipSuccessScreen: false,
tip: 0.0,
);
var checkout = awaitSumup.checkout(SumupPaymentRequest(payment));
// checkout.success — bool// checkout.transactionCode — String// checkout.amount — double (not available on Android Tap-to-Pay)// checkout.currency — String (not available on Android Tap-to-Pay)// checkout.products — List<SumupProduct>; iOS and Android card reader only// checkout.merchantCode — String; Android Tap-to-Pay only// checkout.cardScheme — String; Android Tap-to-Pay only// checkout.errors — String; non-null when success is false
Log in with Sumup.login() or Sumup.loginWithToken().
Call Sumup.checkTapToPayAvailability(). If isActivated is false, call Sumup.presentTapToPayActivation() to run the one-time activation flow.
Use PaymentMethod.tapToPay in your request:
var request = SumupPaymentRequest(payment, paymentMethod: PaymentMethod.tapToPay);
var checkout = awaitSumup.checkout(request);
Android
Tap-to-Pay is opt-in (since 0.14.2). The TTP SDK (com.sumup.tap-to-pay:utopia-sdk) lives in a
private SumUp Maven repository. By default the plugin builds without it — no credentials, no
private-repo access, no 401. The card-reader (merchant-sdk) checkout path works fully in this mode.
You only need the steps below if you actually want Tap-to-Pay. (If you previously hit
Could not resolve com.sumup.tap-to-pay:utopia-sdk … 401 Unauthorized, upgrade to 0.14.2+ and
simply don't set the property.)
Requirements:
NFC-enabled physical device, Android 11 (API 30)+
Set the host application's minSdk to 30 when enabling Tap-to-Pay.
Enable core-library desugaring in the host app module, as required by Tap-to-Pay 1.1.1+:
Get Tap-to-Pay Maven credentials from SumUp (contact integration@sumup.com), then add them to your
user-level ~/.gradle/gradle.properties (or pass them via -P / environment). Do not commit the
credentials to the app repository. The plugin reads both credentials and automatically wires
the private Maven repo and compiles the
utopia-sdk dependency — you do not add it to your own build.gradle.
For environment-only configuration, use the names above or Gradle's standard
ORG_GRADLE_PROJECT_SUMUP_TTP_MAVEN_USERNAME and
ORG_GRADLE_PROJECT_SUMUP_TTP_MAVEN_PASSWORD variables.
SumUp sandbox merchants can test with a debuggable build. Live merchants require a
non-debuggable build with USB Debugging and Developer Options disabled.
Usage:
You must use Sumup.loginWithToken(accessToken) — token login is required for the TTP SDK to authenticate in the background.
Use PaymentMethod.tapToPay in your request:
var request = SumupPaymentRequest(payment, paymentMethod: PaymentMethod.tapToPay);
var checkout = awaitSumup.checkout(request);
Note: The Android TTP SDK does not return amount or currency in the transaction result. If you need them, query the SumUp Transactions API using checkout.transactionCode or checkout.foreignTransactionId.