# Charge via Francophone mobile money

This document describes how to collect payments via Francophone mobile money.

<?php

$tx_ref = Flutterwave::generateReference();

$data = [
    'amount' => 300,
    'currency' => 'XAF',
    'phone_number'=> '237******20',
    'email' => 'wole@email.co',
    'tx_ref' => $tx_ref
];

$charge = Flutterwave::payments()->momoFranc($data);

if ($charge['status'] === 'success') {
    $data = Flutterwave::verifyTransaction($charge['data']['id']);
    return dd($data);
    // Get the transaction from your DB using the transaction reference (txref)
    // Check if you have previously given value for the transaction. If you have, redirect to your successpage else, continue
    // Confirm that the $data['data']['status'] is 'successful'
    // Confirm that the currency on your db transaction is equal to the returned currency
    // Confirm that the db transaction amount is equal to the returned amount
    // Update the db transaction record (including parameters that didn't exist before the transaction is completed. for audit purpose)
    // Give value for the transaction
    // Update the transaction to note that you have given value for the transaction
    // You can also redirect to your success page from here
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

# Parameters

Parameter Required Description
amount True This is the amount to be charged. Expected value is ZMW
currency True This is the specified currency to charge in. (expected value: XAF or XOF) ZMW
email True This is the email address of the customer.
phone_number True This is the phone number linked to the customer's mobile money account
tx_ref True This is a unique reference, unique to the particular transaction being carried out. It is generated when it is not provided by the merchant for every transaction.
network True This is the customer's mobile money network. possible values are MTN ZAMTEL
country False Unique ref for the mobilemoney transaction to be provided by the merchant.
voucher False This is the voucher code generated by the customer. It is meant to be passed in the initial charge request. (only for Vodafone cash) provider
fullname False This is the customers full name. It should include first and last name of the customer.
phone_number False This is the phone number linked to the customer's mobile money account.
redirect_url False URL to redirect to when a transaction is completed.
client_ip False IP - Internet Protocol. This represents the current IP address of the customer carrying out the transaction
device_fingerprint False This is the fingerprint for the device being used. It can be generated using a library on whatever platform is being used.
meta False This is used to include additional payment information`
subaccounts False This is an array of objects containing the subaccount IDs to split the payment into. Check our Split Payment page for more info. eg [ ["id" => "RS_D87A9EE339AE28BFA2AE86041C6DE70E"]]
meta False This is an object that helps you include additional payment information to your request e.g ['consumer_id'=>23, 'consumer_mac'=>'92a3-912ba-1192a']