Skip to main content

Overview

The Hubtel Merchant Checkout SDK for Flutter is a convenient and easy-to-use library that simplifies the process of implementing a complete checkout flow in your Flutter application. This SDK enables merchants to accept payments through multiple channels including mobile money, bank cards, and bank pay directly within their Flutter apps.

Key Features

Multiple Payment Methods

Support for mobile money (MTN, Vodafone, AirtelTigo), bank cards (Visa, Mastercard), and direct bank transfers

Secure Transactions

Built-in security with merchant API key authentication and 3D Secure support for card payments

Customizable UI

Flexible theming options to match your brand colors and styling preferences

Real-time Status

Instant payment status updates and webhook callbacks for transaction monitoring

Easy Integration

Simple API with minimal configuration required to get started

Receipt Generation

Automatic receipt generation and PDF download capabilities for completed transactions

Use Cases

The Hubtel Merchant Checkout SDK is perfect for:
  • E-commerce Apps - Accept payments for products and services directly in your mobile app
  • Service Marketplaces - Enable peer-to-peer payments or vendor payouts
  • Subscription Services - Collect recurring payments with saved payment methods
  • Event Ticketing - Process ticket purchases with instant payment confirmation
  • Utility Payments - Facilitate bill payments and top-ups
  • Food & Delivery Apps - Seamless checkout experience for orders

How It Works

The SDK provides a pre-built checkout screen that handles the entire payment flow:
  1. Configure - Set up your merchant credentials and callback URL
  2. Initialize - Create purchase information with amount and customer details
  3. Present - Navigate to the CheckoutScreen widget
  4. Process - Customer selects payment method and completes transaction
  5. Complete - Receive payment status and transaction details
The SDK handles all the complex payment processing, security, and UI interactions, allowing you to focus on your core business logic.

Payment Status Tracking

The SDK provides comprehensive payment status tracking through the UnifiedCheckoutPaymentStatus enum:
  • paymentSuccess - Payment completed successfully
  • paymentFailed - Payment attempt failed
  • pending - Payment is being processed (e.g., bank transfers)
  • userCancelledPayment - User closed checkout without completing payment
  • unknown - Status could not be determined

What’s Next?

Installation

Add the SDK to your Flutter project

Quick Start

Get up and running in minutes with our quick start guide

Build docs developers (and LLMs) love