Other Payment Methods

In addition to Mobile Money, Notch Pay supports various other payment methods to help you reach more customers across Africa.

Digital Wallets

Digital wallets allow customers to pay using their mobile wallet accounts. This method is increasingly popular across Africa due to its convenience and accessibility.

How Digital Wallet Payments Work

  1. Initialize Payment: Create a payment with customer and transaction details
  2. Wallet Selection: The customer selects their digital wallet from the available options
  3. Authentication: The customer logs in to their wallet or follows the wallet’s authentication process
  4. Authorization: The customer authorizes the payment
  5. Confirmation: Notch Pay confirms the payment status and notifies your application

Supported Digital Wallets

Notch Pay supports payments from various digital wallets across Africa:

Popular Wallets

  • Assoh
  • Kudi
  • And more

Regional Coverage

  • Wallets in Cameroon
  • Wallets in Côte d’Ivoire
  • Wallets in Senegal
  • Wallets in other supported countries

Integration Example

// Create a payment
fetch('https://api.notchpay.co/payments', {
  method: 'POST',
  headers: {
    'Authorization': 'YOUR_PUBLIC_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    amount: 5000,
    currency: 'XAF',
    customer: {
      name: 'John Doe',
      email: 'john@example.com'
    },
    description: 'Payment for Order #123',
    reference: 'order_123'
  })
})
.then(response => response.json())
.then(data => {
  // Redirect to checkout where digital wallets will be an option
  window.location.href = data.authorization_url;
})

USSD Payments

USSD (Unstructured Supplementary Service Data) payments allow customers to pay using their mobile phones without requiring internet access. This is particularly useful in areas with limited internet connectivity.

How USSD Payments Work

  1. Initialize Payment: Create a payment with customer and transaction details
  2. USSD Code Generation: Notch Pay generates a USSD code for the payment
  3. Customer Dialing: The customer dials the USSD code on their phone
  4. Authentication: The customer follows the prompts to authenticate and authorize the payment
  5. Confirmation: Notch Pay confirms the payment status and notifies your application

Supported USSD Services

Notch Pay supports USSD payments through various mobile operators:

  • MTN USSD
  • Orange USSD
  • Other local operators depending on the country

Integration Example

// Create a payment
fetch('https://api.notchpay.co/payments', {
  method: 'POST',
  headers: {
    'Authorization': 'YOUR_PUBLIC_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    amount: 5000,
    currency: 'XAF',
    customer: {
      name: 'John Doe',
      phone: '+237600000000'
    },
    description: 'Payment for Order #123',
    reference: 'order_123'
  })
})
.then(response => response.json())
.then(data => {
  // Process with USSD
  fetch(`https://api.notchpay.co/payments/${data.transaction.reference}`, {
    method: 'POST',
    headers: {
      'Authorization': 'YOUR_PUBLIC_KEY',
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      channel: 'cm.mtn.ussd',
      data: {
        phone: '+237600000000'
      }
    })
  })
  .then(response => response.json())
  .then(ussdData => {
    // Display USSD code to customer
    console.log(`Dial ${ussdData.ussd_code} to complete payment`);
  })
})

QR Code Payments

QR code payments allow customers to pay by scanning a QR code with their mobile banking or payment app. This method is becoming increasingly popular due to its convenience and contactless nature.

How QR Code Payments Work

  1. Initialize Payment: Create a payment with customer and transaction details
  2. QR Code Generation: Notch Pay generates a QR code for the payment
  3. Customer Scanning: The customer scans the QR code with their mobile app
  4. Authentication: The customer authorizes the payment in their app
  5. Confirmation: Notch Pay confirms the payment status and notifies your application

Supported QR Code Standards

Notch Pay supports various QR code payment standards depending on the region:

  • EMVCo QR Code
  • Proprietary QR codes for specific payment providers

Integration Example

// Create a payment
fetch('https://api.notchpay.co/payments', {
  method: 'POST',
  headers: {
    'Authorization': 'YOUR_PUBLIC_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    amount: 5000,
    currency: 'XAF',
    customer: {
      name: 'John Doe',
      email: 'john@example.com'
    },
    description: 'Payment for Order #123',
    reference: 'order_123'
  })
})
.then(response => response.json())
.then(data => {
  // Process with QR Code
  fetch(`https://api.notchpay.co/payments/${data.transaction.reference}/qrcode`, {
    headers: {
      'Authorization': 'YOUR_PUBLIC_KEY'
    }
  })
  .then(response => response.json())
  .then(qrData => {
    // Display QR code to customer
    document.getElementById('qrcode-container').innerHTML = `<img src="${qrData.qr_code_url}" alt="Scan to pay">`;
  })
})

Country-Specific Information

Different payment methods have varying levels of adoption and success rates across African countries. Here’s a breakdown of the most effective payment methods by country:

Market Overview

  • Population: ~27 million
  • Digital Wallet Penetration: ~25%
  • USSD Usage: High (60% of mobile users)
  • QR Code Adoption: Low-Medium
  • Currency: CFA Franc (XAF)

Popular Payment Methods

  • Digital Wallets: Assoh, Kudi
  • USSD: MTN USSD, Orange USSD
  • QR Codes: Limited to urban areas

Success Rates

  • Digital Wallets: 85-90%
  • USSD Payments: 80-85%
  • QR Code Payments: 75-80%

Best Practices

  • Prioritize USSD for wider reach
  • Offer digital wallets in urban areas
  • Provide clear instructions in French and English
  • Consider network reliability when implementing USSD

Best Practices

For general integration best practices, security recommendations, and operational guidelines that apply to all payment methods, please refer to our Mobile Money Best Practices section, which covers these topics in detail.

Method-Specific Best Practices

Digital Wallets

  • Verify Wallet Support: Confirm the wallet is supported in the customer’s country
  • Handle Authentication Flows: Implement proper handling of wallet authentication redirects
  • Optimize for Mobile: Ensure your wallet integration works well on mobile devices
  • Track Wallet Performance: Monitor success rates for different wallet providers

USSD Payments

  • Clear USSD Instructions: Provide clear guidance on how to complete USSD flows
  • Keep USSD Flows Simple: Minimize the number of steps in USSD payment flows
  • Handle Network Issues: Implement fallbacks for areas with poor network coverage
  • Session Timeout Handling: Provide easy ways to restart expired USSD sessions

QR Code Payments

  • QR Code Quality: Generate high-quality, easily scannable QR codes
  • Display Guidelines: Ensure QR codes are displayed with sufficient size and contrast
  • Scanning Instructions: Provide clear instructions on how to scan the QR code
  • Dynamic Updates: Implement status updates while waiting for QR code scans

Multi-Method Strategy

  • Offer Multiple Methods: Provide customers with various payment options to increase conversion rates
  • Smart Default Selection: Automatically suggest the most appropriate payment method based on location
  • Seamless Fallbacks: Allow easy switching between payment methods if one fails
  • Remember Preferences: Store customer’s preferred payment method for future transactions

Troubleshooting

Common Issues and Solutions

Error Codes

Here are some common error codes you might encounter when processing alternative payment methods:

Error CodeDescriptionRecommended Action
WALLET_CONNECTION_ERRORUnable to connect to the wallet serviceCheck wallet service status and retry
USSD_SESSION_TIMEOUTUSSD session expired before completionAdvise customer to restart the process
QR_GENERATION_FAILEDFailed to generate QR codeCheck parameters and retry
INVALID_WALLET_ACCOUNTWallet account not found or invalidVerify wallet account details
PAYMENT_REJECTEDCustomer rejected the paymentAsk customer if they want to try again
PROVIDER_ERRORError from payment providerRetry after a few minutes
DUPLICATE_TRANSACTIONSame transaction attempted multiple timesCheck if previous transaction was successful

Testing

Testing is a critical part of implementing alternative payment methods. Notch Pay provides a comprehensive sandbox environment that allows you to simulate various payment scenarios without processing real transactions.

For detailed information on testing all payment methods, including test credentials, test scenarios for digital wallets, USSD payments, and QR code payments, webhook testing, and best practices, please refer to our comprehensive Testing Guide.

The Testing Guide includes everything you need to thoroughly test your integration with alternative payment methods, including test credentials, test scenarios, webhook testing, fraud detection information, and steps for going to production.

Support

If you encounter issues with any payment method:

Next Steps

  • Mobile Money - Learn about our Mobile Money integration
  • Collect - Use our hosted payment page for a quick integration
  • Webhooks - Set up webhooks for payment notifications
  • Dashboard - Learn how to use the Notch Pay Dashboard to manage transactions