Initiate Transfer

This page shows you how to initiate a transfer

MPesa Transfer

For Mpesa transfers always pass the account_bank value as MPS, the account_number value is the recipients Mpesa number, it should always come with the prefix 254

Sample Mpesa Callback

{
  "event.type": "Transfer",
  "transfer": {
    "id": 3455,
    "account_number": "25472509382427",
    "bank_code": "MPS",
    "fullname": "FA",
    "date_created": "2018-10-03T14:20:25.000Z",
    "currency": "KES",
    "debit_currency": null,
    "amount": 49.99,
    "fee": 250,
    "status": "SUCCESSFUL",
    "reference": "rave-transfer-15028609",
    "meta": null,
    "narration": "Rave Mpesa transfer",
    "approver": null,
    "complete_message": "Approved Or Completed Successfully",
    "requires_approval": 0,
    "is_approved": 1,
    "bank_name": "FA-BANK"
  }
}

📘

Testing Mpesa Successfully

To run a successful Mpesa disbursement test you would need to be on the live environment.

Your Mpesa wallet balance also needs to be funded, see how to fund your wallet balance here.

Ghana Mobile Money Transfers

When performing a Ghana mobile money transfer, you would need to pass the account_bank value as any of these options MTN, TIGO, VODAFONE, AIRTEL.

The account_number value is the recipients mobile money number, it should always come with the prefix 233

Sample MoMo Callback

{
  "event.type": "Transfer",
  "transfer": {
    "id": 3455,
    "account_number": "233509382427",
    "bank_code": "MTN",
    "fullname": "Kwame Abe",
    "date_created": "2018-10-03T14:20:25.000Z",
    "currency": "GHS",
    "debit_currency": null,
    "amount": 49.99,
    "fee": 250,
    "status": "SUCCESSFUL",
    "reference": "rave-transfer-15028609",
    "meta": null,
    "narration": "Rave Mpesa transfer",
    "approver": null,
    "complete_message": "Approved Or Completed Successfully",
    "requires_approval": 0,
    "is_approved": 1,
    "bank_name": "FA-BANK"
  }
}

Ugandan Mobile Money

When completing a Ugandan mobile money transfer, always pass the account_bank value as MPS.

The account_number value is the recipient's mobile money number, it should always come with the prefix 256.

South African Bank Transfer

Here are some things to note when making South African bank transfers:

  • The meta-object is required in the API request payload.

  • Address and either MobileNumber or EmailAddress is required for the transaction to be successful.

  • Other fields with the meta like FirstName and LastName are optional.

Body Params
string

This is the recipient bank code, you can get a list of bank codes by calling the List of Banks for Transfer ]

string

This is the recipient account number

string

This allows you transfer to an existing beneficiary, you can pass this in place of account_bank & account_number. The recipient_id can be gotten from the Fetch Recipients ] endpoint.

int32
required

This is the amount to transfer to the recipient. Amount is in Naira

string

This is the narration for the transfer e.g. payments for x services

string
required

This can be NGN, GHS, KES, UGX, TZS, USD, ZAR.

string
required

This is your merchant secret key, see how to get your Secret key]

string

This is a merchant's unique reference for the transfer, it will be generated automatically if not provided

string

This is a url passed by you the developer, Rave would pass the final transfer response to this callback url. You can use this in place of Webhooks

string
required

This is the name of the beneficiary. It is required you collect this as part of your transfer data before calling the API, if it's not passed the transfer would fail.

string
required

This is only required for disbursements into Ghana, Uganda and Tanzania. You can get a list of branch codes from the List of Banks for Transfer

string

You can pass this when you want to debit a currency balance and send money in another currency. As an example, if you have funds in your USD balance on Rave and you want to debit that balance to send money in KES, you would pass your debit_currency as USD.

meta
object

This is an object you can use to add any additional payment information you would like to associate with this transfer. Note that this object is REQUIRED for ZAR payouts.

Responses

Language
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json