How khalti/checkout-sdk-flutter works
This repository provides two Khalti payment integration options: a Dart REST-API layer and a Flutter checkout SDK with UI. The documented workflow is an app initiating checkout or using the API layer, with the core service communicating with Khalti. The tree identifies a WebView and client modules, but no source excerpts were available to verify finer-grained wiring.
Main entry points: khalti_service.dart Khalti Service · khalti_checkout_core.dart Core Entry · khalti_checkout_flutter.dart Checkout SDK · khalti_client.dart HTTP Client
Components 12
Core API
- Core Entry
packages/khalti_checkout_core/lib/khalti_checkout_core.dart - Configuration
packages/khalti_checkout_core/lib/src/config - Request Model
packages/khalti_checkout_core/lib/src/core/khalti_request_model.dart - Khalti Service
packages/khalti_checkout_core/lib/src/data/khalti_service.dart - HTTP Client
packages/khalti_checkout_core/lib/src/core/http_client/khalti_client.dart - Payment Models
packages/khalti_checkout_core/lib/src/model
Flutter Checkout
- Flutter Entry
packages/khalti_checkout_flutter/lib/khalti_checkout_flutter.dart - Checkout SDK
packages/khalti_checkout_flutter/lib/src/khalti_checkout_flutter.dart - Checkout WebView
packages/khalti_checkout_flutter/lib/src/widget/khalti_webview.dart - Flutter HTTP Client
packages/khalti_checkout_flutter/lib/src/data/khalti_http_client.dart
External Services
- Khalti REST API
Other components
- Merchant App
Connections 12
- Merchant App → Flutter Entry: starts checkout
- Merchant App → Core Entry: uses API
- Flutter Entry → Checkout SDK: exposes
- Checkout SDK → Checkout WebView: provides UI
- Checkout SDK → Core Entry: includes core
- Core Entry → Configuration: configures
- Core Entry → Khalti Service: exposes
- Khalti Service → HTTP Client: sends requests
- Khalti Service → Request Model: uses request
- Khalti Service → Payment Models: uses models
- HTTP Client → Khalti REST API: calls REST API
- Flutter HTTP Client → Khalti REST API: HTTP access