# lomi. > lomi. is francophone West Africa's leading payment processing platform. We provide APIs and tools for businesses to accept Mobile Money (Wave, MTN, SPI), credit cards (Visa, Mastercard, Apple Pay, Google Pay), and bank transfers across 8 UEMOA countries: Senegal, Côte d'Ivoire, Mali, Burkina Faso, Benin, Togo, Niger, and Guinea-Bissau. ## About lomi. lomi. is a unified payment infrastructure built for African businesses. Our platform offers: - **Payment Processing**: Accept payments via Mobile Money, credit/debit cards, and bank transfers - **Instant Payouts**: Withdraw earnings to mobile wallets or bank accounts globally - **Subscription Management**: Create and manage recurring payment plans - **Fraud Prevention**: Built-in fraud detection and chargeback protection - **Developer-First**: REST APIs and SDKs for JavaScript, Python, Go, and PHP - **Merchant of Record**: We handle tax compliance and regulatory requirements ## Pricing - Mobile Money: 2% + 200 F CFA per transaction - Credit Cards: 3.5% + $0.40 per transaction - No setup fees, no monthly costs, no hidden charges ## Supported Payment Methods ### Mobile Money - Wave (Senegal, Côte d'Ivoire) - MTN Mobile Money (West and Central Africa) - SPI Interoperable Payments (All UEMOA countries) ### Cards - Visa - Mastercard - American Express - GIM UEMOA ## Core Documentation Essential resources for getting started with lomi.: - [CI/CD](https://docs.lomi.africa/core/advanced-guides/ci-cd): This guide covers best practices for integrating lomi. with your CI/CD pipeline, ensuring reliable deployments and automated testing. - [Error handling](https://docs.lomi.africa/core/advanced-guides/error-handling): When integrating with lomi., it's essential to handle errors gracefully to provide a smooth payment experience for your customers. - [Handling webhooks](https://docs.lomi.africa/core/advanced-guides/handling-webhooks): Webhooks provide real-time updates about events in your lomi. account. This guide explains how to securely receive and process these notifications. - [Idempotency keys](https://docs.lomi.africa/core/advanced-guides/idempotency-keys): Idempotency ensures that an API request, if retried due to a network error or timeout, won't accidentally be performed multiple times. This is crucial for operations like creating payments or refunds to prevent duplicate actions. - [Advanced guides](https://docs.lomi.africa/core/advanced-guides): Deep dive into error handling, webhooks, security best practices, testing strategies, and CI/CD integration for production-ready payments. - [Security best practices](https://docs.lomi.africa/core/advanced-guides/security-best-practices): Implementing robust security measures is crucial when handling payments and integrating with third-party APIs like lomi.. Follow these best practices to ensure secure integration. - [Testing guide](https://docs.lomi.africa/core/advanced-guides/testing): This guide covers best practices for testing your lomi. integration, ensuring your payment flows work correctly in both sandbox and production environments. - [Webhook reliability](https://docs.lomi.africa/core/advanced-guides/webhook-reliability): Retries, idempotency, delivery logs, and safe handling of duplicate events. - [Best practices](https://docs.lomi.africa/core/contributing/best-practices): Following these best practices helps maintain code quality, consistency, and security across the lomi. project. - [Branching strategy](https://docs.lomi.africa/core/contributing/branching-strategy): We follow a Git workflow inspired by GitFlow but simplified for continuous delivery and integration. - [Code of conduct](https://docs.lomi.africa/core/contributing/code-of-conduct): We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community. - [Code reviews](https://docs.lomi.africa/core/contributing/code-reviews): Our code review process ensures code quality, knowledge sharing, and maintainability. - [Contributing](https://docs.lomi.africa/core/contributing): Learn how to contribute to lomi. through code contributions, documentation improvements, and community engagement. - [Contributing](https://docs.lomi.africa/core/contributing/overview): This section provides guidelines and best practices to help you get started with contributing to the lomi. project. - [Using git](https://docs.lomi.africa/core/contributing/using-cli): When collaborating on your lomi. integration using Git, you can use the command-line interface (CLI) to perform various Git operations. - [Versioning](https://docs.lomi.africa/core/contributing/versioning): We follow Semantic Versioning (SemVer) for all our packages and APIs. - [Codebase](https://docs.lomi.africa/core/freedom/codebase): This page provides an overview of the directory structures for both the main lomi monorepo and the individual merchant application. - [Open-source](https://docs.lomi.africa/core/freedom/open-source): We are committed to enabling fast, adapted, and accessible payments for everyone. As part of this commitment, our technology is entirely public and available online. - [Environment variables](https://docs.lomi.africa/core/fundamentals/access-tokens): Securely manage your API keys and environment variables. - [Getting started](https://docs.lomi.africa/core/fundamentals/create-account): Set up your lomi. integration and start accepting payments in minutes. - [Fundamentals](https://docs.lomi.africa/core/fundamentals): Fundamental concepts and setup for a successful integration. - [Processing transactions](https://docs.lomi.africa/core/fundamentals/transactions): Our payment processing guide covering checkout sessions and payment links with code examples. - [Setting up webhooks](https://docs.lomi.africa/core/fundamentals/webhooks): Webhooks allow your application to receive real-time notifications about events happening within your lomi. account, such as successful payments, new subscriptions, or failed transactions. - [Community](https://docs.lomi.africa/core/introduction/community): We believe that the best products are built together with users' and contributors' input. In our case, our growth and evolution are essentially driven by real merchant performance and needs. - [Manifesto](https://docs.lomi.africa/core/introduction/manifesto): The time has come to open-source payment processing (and software in general) across Africa. - [What is lomi.?](https://docs.lomi.africa/core/introduction/what-is-lomi): lomi. is an open-source payment processing platform built specifically for francophone West African businesses operating in the West African Economic and Monetary Union (UEMOA). We seamlessly integrate the most popular payment methods while providing a comprehensive set of localized e-commerce products. - [Authenticate](https://docs.lomi.africa/core/lomi-cli/auth): Authenticate with your CLI using to get started accepting payments faster. - [Configuration](https://docs.lomi.africa/core/lomi-cli/configuration): Our CLI tool can be configured through various methods to suit your development workflow, ranging from global authentication to project-specific SDK settings. - [lomi. CLI](https://docs.lomi.africa/core/lomi-cli): Master the lomi. Command Line Interface for project initialization, authentication, webhook management, and streamlined development workflows. - [Initialize a project](https://docs.lomi.africa/core/lomi-cli/init): Bootstrap a lomi. integration within your existing project directory. - [Getting started](https://docs.lomi.africa/core/lomi-cli/overview): Install and configure to match your development workflow. - [Acceptable use](https://docs.lomi.africa/core/merchant-of-record/acceptable-use): As a Merchant of Record, we are the reseller of all goods and services. Therefore, we do not accept the sale of anything illegal, harmful, abusive, deceptive, or sketchy. - [Account reviews](https://docs.lomi.africa/core/merchant-of-record/account-reviews): We strive to identify unacceptable use and take decisive actions to protect our infrastructure and merchants from incidents. - [Merchant of record](https://docs.lomi.africa/core/merchant-of-record): Understand lomi.'s Merchant of Record services, transparent pricing, acceptable use policies, KYC process, and compliance requirements. - [Pricing](https://docs.lomi.africa/core/merchant-of-record/pricing): Transparent fees at a 20% discount vs. competition. - [We're here for you !](https://docs.lomi.africa/core/support/contact): lomi. is committed to providing exceptional support to our community and customers. We offer multiple channels for getting help, asking questions, and connecting with our team. ## API Reference - [Changelog](https://docs.lomi.africa/reference/changelog/changelog): This page documents notable changes to the lomi. API and related services. - [Beneficiary Payouts](https://docs.lomi.africa/reference/payments/beneficiary-payouts): Send payments to contractors, suppliers, and other beneficiaries. - [Buy Now Pay Later (BNPL)](https://docs.lomi.africa/reference/payments/bnpl): SPI BNPL model, fees, customer interest, and currency constraints. - [Direct charges](https://docs.lomi.africa/reference/payments/charges): Initiate direct payments using specific providers like Wave. - [Checkout behavior](https://docs.lomi.africa/reference/payments/checkout-behavior): Sessions, payment links, amounts, coupons, and expiry rules for hosted checkout. - [Checkout Sessions](https://docs.lomi.africa/reference/payments/checkout-sessions): Create secure, hosted payment pages for your customers. - [Coupon logic examples](https://docs.lomi.africa/reference/payments/coupon-logic-examples): Practical examples for customer eligibility, stacking, and retry-safe coupon usage. - [Discount Coupons](https://docs.lomi.africa/reference/payments/discount-coupons): Create, validate, stack, and track coupon discounts with the same rules used in checkout. - [lomi. Payment Elements](https://docs.lomi.africa/reference/payments/lomi-payment-elements): Accept payments directly in your app with Lomi's white-labeled payment infrastructure. - [Payment Links](https://docs.lomi.africa/reference/payments/payment-links): Create shareable payment links for products or custom amounts. - [Payment Requests](https://docs.lomi.africa/reference/payments/payment-requests): Send payment requests to customers with expiration dates. - [Payout lifecycle](https://docs.lomi.africa/reference/payments/payout-lifecycle): How withdrawals and beneficiary payouts progress from request to completion and how fees apply. - [Payouts](https://docs.lomi.africa/reference/payments/payouts): Withdraw funds from your account balance. - [Products](https://docs.lomi.africa/reference/payments/products): Manage products, prices, and subscription configurations. - [Refunds](https://docs.lomi.africa/reference/payments/refunds): Process full or partial refunds for transactions. - [Subscriptions](https://docs.lomi.africa/reference/payments/subscriptions): Manage recurring customer subscriptions. - [Transactions](https://docs.lomi.africa/reference/payments/transactions): Retrieve transaction history and details with advanced filtering. - [Webhooks](https://docs.lomi.africa/reference/payments/webhooks): Configure webhook endpoints for real-time event notifications. - [Accounts](https://docs.lomi.africa/reference/platform/accounts): Manage merchant accounts and check balances. - [Balance and settlement](https://docs.lomi.africa/reference/platform/balance-and-settlement): How merchant balances, fees, and availability work after a successful payment. - [Customer subscriptions](https://docs.lomi.africa/reference/platform/customer-subscriptions): Manage individual recurring payment subscriptions for customers. - [Customers](https://docs.lomi.africa/reference/platform/customers): Manage customer profiles and track their payment history. - [Merchants](https://docs.lomi.africa/reference/platform/merchants): The Merchants API allows you to retrieve information about merchant accounts, including details, recurring revenue metrics, and balances. - [Organizations](https://docs.lomi.africa/reference/platform/organizations): Retrieve organization details and metrics. - [Webhook Delivery Logs](https://docs.lomi.africa/reference/platform/webhook-delivery-logs): Monitor and debug webhook delivery attempts. - [Data models](https://docs.lomi.africa/reference/reference/data-models): This section describes the structure of common data objects returned by our API endpoints documented in this core reference. - [Error handling](https://docs.lomi.africa/reference/reference/errors): Understanding and handling API error responses. - [Payment state machine](https://docs.lomi.africa/reference/reference/payment-state-machine): How transaction and provider statuses transition, expire, and map to balances. - [Go SDK](https://docs.lomi.africa/reference/sdks/go): Official Go SDK for lomi. payments API. - [SDKs Overview](https://docs.lomi.africa/reference/sdks): Official lomi. SDKs to integrate payments in your preferred language. - [Next.js SDK](https://docs.lomi.africa/reference/sdks/nextjs): Official Next.js SDK with React hooks for lomi. payments API. - [PHP SDK](https://docs.lomi.africa/reference/sdks/php): Official PHP SDK for lomi. payments API. - [Python SDK](https://docs.lomi.africa/reference/sdks/python): Official Python SDK for lomi. payments API. - [TypeScript SDK](https://docs.lomi.africa/reference/sdks/typescript): Official TypeScript/JavaScript SDK for lomi. payments API. - [Authentication](https://docs.lomi.africa/reference/setup/authentication): All lomi. requests are authenticated using API keys. Any request that doesn't include a valid API key will return an authentication error. - [API integration](https://docs.lomi.africa/reference/setup/integration): End-to-end path from your first authenticated HTTP call to language samples, Try it, SDKs, and webhooks. - [Overview](https://docs.lomi.africa/reference/setup/overview): Welcome to the lomi.'s REST API documentation. This API allows you to integrate lomi.'s payment capabilities directly into your applications. ## Additional Resources ### Openapi - [Check available balance](https://docs.lomi.africa/openapi/generated/AccountsController_checkAvailableBalance) - [List all accounts](https://docs.lomi.africa/openapi/generated/AccountsController_findAll) - [Get an account by ID](https://docs.lomi.africa/openapi/generated/AccountsController_findOne) - [Get account balance](https://docs.lomi.africa/openapi/generated/AccountsController_getBalance) - [Get detailed balance breakdown](https://docs.lomi.africa/openapi/generated/AccountsController_getBalanceBreakdown) - [Agent capability negotiation (unauthenticated discoverability surface)](https://docs.lomi.africa/openapi/generated/AgentCapabilitiesController_getCapabilities) - [Cross-service / cross-agent handoff (context + task envelope)](https://docs.lomi.africa/openapi/generated/AgentHandoffController_create) - [Retrieve handoff record](https://docs.lomi.africa/openapi/generated/AgentHandoffController_get) - [Server-Sent Events stream (scoped to organization, keepalive pings)](https://docs.lomi.africa/openapi/generated/AgentStreamController_stream) - [Register for agent-appropriate notifications (MVP: in-process registry + SSE test ping)](https://docs.lomi.africa/openapi/generated/AgentSubscriptionsController_create) - [List agent subscriptions](https://docs.lomi.africa/openapi/generated/AgentSubscriptionsController_list) - [Delete a subscription](https://docs.lomi.africa/openapi/generated/AgentSubscriptionsController_remove) - [Start a multi-step workflow run (MVP, idempotency on idempotency_key)](https://docs.lomi.africa/openapi/generated/AgentWorkflowsController_create) - [Get workflow run state](https://docs.lomi.africa/openapi/generated/AgentWorkflowsController_get) - [Advance a workflow step (orchestration primitive)](https://docs.lomi.africa/openapi/generated/AgentWorkflowsController_patchStep) - [Initiate a beneficiary payout](https://docs.lomi.africa/openapi/generated/BeneficiaryPayoutsController_create) - [List all beneficiary payouts](https://docs.lomi.africa/openapi/generated/BeneficiaryPayoutsController_findAll) - [Get a beneficiary payout by ID](https://docs.lomi.africa/openapi/generated/BeneficiaryPayoutsController_findOne) - [Initiate a Wave direct charge](https://docs.lomi.africa/openapi/generated/ChargesController_createWaveCharge) - [Create a new checkout session](https://docs.lomi.africa/openapi/generated/CheckoutSessionsController_create) - [List all checkout sessions](https://docs.lomi.africa/openapi/generated/CheckoutSessionsController_findAll) - [Get a checkout session by ID](https://docs.lomi.africa/openapi/generated/CheckoutSessionsController_findOne) - [Create a new customer](https://docs.lomi.africa/openapi/generated/CustomersController_create) - [List all customers](https://docs.lomi.africa/openapi/generated/CustomersController_findAll) - [Get customer by ID](https://docs.lomi.africa/openapi/generated/CustomersController_findOne) - [Get customer transactions](https://docs.lomi.africa/openapi/generated/CustomersController_getTransactions) - [Delete a customer](https://docs.lomi.africa/openapi/generated/CustomersController_remove) - [Update a customer](https://docs.lomi.africa/openapi/generated/CustomersController_update) - [Create a new discount coupon](https://docs.lomi.africa/openapi/generated/DiscountCouponsController_create) - [List all discount coupons](https://docs.lomi.africa/openapi/generated/DiscountCouponsController_findAll) - [Get discount coupon by ID](https://docs.lomi.africa/openapi/generated/DiscountCouponsController_findOne) - [Get coupon performance metrics](https://docs.lomi.africa/openapi/generated/DiscountCouponsController_getPerformance) - [Get organization details](https://docs.lomi.africa/openapi/generated/OrganizationsController_findAll) - [Get organization by ID](https://docs.lomi.africa/openapi/generated/OrganizationsController_findOne) - [Get organization metrics](https://docs.lomi.africa/openapi/generated/OrganizationsController_getMetrics) - [Create a new payment link](https://docs.lomi.africa/openapi/generated/PaymentLinksController_create) - [List all payment links](https://docs.lomi.africa/openapi/generated/PaymentLinksController_findAll) - [Get a payment link by ID](https://docs.lomi.africa/openapi/generated/PaymentLinksController_findOne) - [Create a new payment request](https://docs.lomi.africa/openapi/generated/PaymentRequestsController_create) - [List all payment requests](https://docs.lomi.africa/openapi/generated/PaymentRequestsController_findAll) - [Get a payment request by ID](https://docs.lomi.africa/openapi/generated/PaymentRequestsController_findOne) - [Initiate a Wave payout](https://docs.lomi.africa/openapi/generated/PayoutsController_createWavePayout) - [Add a new price to a product](https://docs.lomi.africa/openapi/generated/ProductsController_addPrice) - [Create a new product](https://docs.lomi.africa/openapi/generated/ProductsController_create) - [List all products](https://docs.lomi.africa/openapi/generated/ProductsController_findAll) - [Get product by ID](https://docs.lomi.africa/openapi/generated/ProductsController_findOne) - [Set a price as the default](https://docs.lomi.africa/openapi/generated/ProductsController_setDefaultPrice) - [Initiate a Wave refund](https://docs.lomi.africa/openapi/generated/RefundsController_createWaveRefund) - [Receive Stripe webhook events](https://docs.lomi.africa/openapi/generated/StripeWebhookController_handleWebhook) - [Cancel a subscription](https://docs.lomi.africa/openapi/generated/SubscriptionsController_cancel) - [List all subscriptions](https://docs.lomi.africa/openapi/generated/SubscriptionsController_findAll) - [Get subscriptions for a customer](https://docs.lomi.africa/openapi/generated/SubscriptionsController_findByCustomer) - [Get subscription by ID](https://docs.lomi.africa/openapi/generated/SubscriptionsController_findOne) - [List all transactions](https://docs.lomi.africa/openapi/generated/TransactionsController_findAll) - [Get transaction by ID](https://docs.lomi.africa/openapi/generated/TransactionsController_findOne) - [Receive Wave webhook events](https://docs.lomi.africa/openapi/generated/WaveWebhookController_handleWebhook) - [List webhook delivery logs](https://docs.lomi.africa/openapi/generated/WebhookDeliveryLogsController_findAll) - [Get webhook delivery log by ID](https://docs.lomi.africa/openapi/generated/WebhookDeliveryLogsController_findOne) - [List all webhooks](https://docs.lomi.africa/openapi/generated/WebhooksController_findAll) - [Get a webhook by ID](https://docs.lomi.africa/openapi/generated/WebhooksController_findOne) - [Update a webhook](https://docs.lomi.africa/openapi/generated/WebhooksController_update) - [API operations](https://docs.lomi.africa/openapi/generated): All endpoints from the OpenAPI document exported from the Nest API. ## Contact & Support - Website: https://lomi.africa - Documentation: https://docs.lomi.africa - Email: hello@lomi.africa - GitHub: https://github.com/lomiafrica/lomi./ - Discord: https://discord.gg/33syDfh9 - Twitter/X: https://twitter.com/lomiafrica ## Frequently Asked Questions **Q: How do I get started with lomi.?** A: Create an account on the dashboard, connect your payment methods, and start accepting payments in minutes. **Q: What countries does lomi. support?** A: All 8 UEMOA countries: Senegal, Côte d'Ivoire, Mali, Burkina Faso, Benin, Togo, Niger, and Guinea-Bissau. Credit cards are accepted from customers worldwide. **Q: How do I integrate lomi. with my app?** A: Use our REST API or official SDKs for JavaScript/Next.js, Python, Go, and PHP. Documentation is available at https://docs.lomi.africa **Q: How secure is lomi.?** A: lomi. is PCI DSS compliant and uses industry-standard encryption, tokenization, and fraud detection to protect transactions.