sumup_api_client 0.1.1
sumup_api_client: ^0.1.1 copied to clipboard
Enterprise-ready SumUp REST API client for Dart and Flutter. OAuth2, pagination, rate limiting, retry, and caching.
sumup_api_client #
Enterprise-ready SumUp REST API client for Dart and Flutter. OAuth2, pagination, rate limiting, retry, and caching — all with zero code generation at build time.
Partner Links #
Support this project by purchasing SumUp terminals through our affiliate links for your country:
- Argentina (es-AR): Acquista ora su SumUp
- Australia (en-AU): Buy now on SumUp
- Austria (de-AT): Jetzt kaufen auf SumUp
- Belgium (nl-BE): Koop nu op SumUp
- Belgium (fr-BE): Achetez maintenant sur SumUp
- Brazil (pt-BR): Compre agora na SumUp
- Bulgaria (bg-BG): Купете сега от SumUp
- Canada (en-CA): Buy now on SumUp
- Canada (fr-CA): Achetez maintenant sur SumUp
- Chile (es-CL): Compra ahora en SumUp
- Colombia (es-CO): Compra ahora en SumUp
- Croatia (hr-HR): Kupite sada na SumUp
- Czech Republic (cs-CZ): Koupit nyní na SumUp
- Estonia (et-EE): Osta kohe SumUp
- France (fr-FR): Achetez maintenant sur SumUp
- Germany (de-DE): Jetzt kaufen auf SumUp
- Greece (el-GR): Αγοράστε τώρα στο SumUp
- Hungary (hu-HU): Vásároljon most a SumUp
- Ireland (en-IE): Buy now on SumUp
- Italy (it-IT): Acquista ora su SumUp
- Latvia (lv-LV): Pērc tagad SumUp
- Lithuania (lt-LT): Pirkti dabar SumUp
- Luxembourg (fr-LU): Achetez maintenant sur SumUp
- Netherlands (nl-NL): Koop nu op SumUp
- Norway (nb-NO): Kjøp nå på SumUp
- Peru (es-PE): Compra ahora en SumUp
- Poland (pl-PL): Kup teraz na SumUp
- Portugal (pt-PT): Compre agora na SumUp
- Romania (ro-RO): Cumpărați acum pe SumUp
- Slovakia (sk-SK): Kúpiť teraz na SumUp
- Slovenia (sl-SI): Kupite zdaj na SumUp
- Spain (es-ES): Compra ahora en SumUp
- Sweden (sv-SE): Köp nu på SumUp
- Switzerland (de-CH): Jetzt kaufen auf SumUp
- Switzerland (fr-CH): Achetez maintenant sur SumUp
- Switzerland (it-CH): Acquista ora su SumUp
- United Kingdom (en-GB): Buy now on SumUp
- United States (en-US): Buy now on SumUp
Features #
- OAuth2 client_credentials — automatic token fetch, cache, and refresh
- API Key and Personal Token authentication support
- Rate limiting — exponential backoff on 429 responses
- Automatic retry — retries on 5xx, connection, and timeout errors
- Cursor pagination —
CursorPaginator<T>.all()stream helper - Pluggable token storage — in-memory (Dart-only) or custom implementations (flutter_secure_storage)
- 10 API services — Checkouts, Customers, Memberships, Members, Merchants, Payouts, Readers, Receipts, Roles, Transactions
- Zero build_runner — no code generation required
Quick Start #
import 'package:sumup_api_client/sumup_api_client.dart';
void main() async {
// OAuth2 (recommended)
final client = SumUpClient.withOAuth2(
clientId: 'your-client-id',
clientSecret: 'your-client-secret',
);
// API Key (legacy)
// final client = SumUpClient.withApiKey('sup_sk_...');
// List transactions
final result = await client.transactions.listTransactionsV21(
merchantCode: 'YOUR_MERCHANT_CODE',
);
print(result);
}
Installation #
dependencies:
sumup_api_client: ^0.1.1
Commands #
# Run the CLI example
export SUMUP_API_KEY=sup_sk_...
export SUMUP_MERCHANT_CODE=MESLTVGX
dart run example/bin/main.dart dashboard
dart run example/bin/main.dart transactions
dart run example/bin/main.dart checkouts
dart run example/bin/main.dart readers
License #
AGPL v3 for open-source use. For commercial licensing, contact developers@purplesoft.io.