---
title: "Momo, XOF and ZAR Process Collection"
method: POST
path: "/subsidiary/collections/v1/process-collection"
tags: ["Momo And ZAR Collections"]
---

# Momo, XOF and ZAR Process Collection

`POST /subsidiary/collections/v1/process-collection`

This endpoint initiates mobile money collection for various currencies such as KES, GHS, UGX, TZS, LRD, ZAR, XOF and XAF. The Momo collections guide can be found [here](/guides/momo-collections)

**Notes:**

- Payaza MOMO collection codes can be accessed <a href="https://docs.google.com/spreadsheets/d/1BOGf_mSLS6rGNm1vn3cO4A2vW9oqZVGI_PxxxXnMK9o/edit?usp=sharing" target="_blank">here</a>.
 
- Please be advised that collections to countries other than Nigeria are exclusively available upon request. To initiate this process, kindly send an email to [support@payaza.africa](mailto:support@payaza.africa). You will be granted access once our team reviews and approves your request.
- For XOF testing purposes, please use either **225000476807** for the No OTP Required option or **2251114462945** for the OTP Required option. Also, use the OTP value **4567** for your tests.
>

## Request body

- union
  - MomoProcessCollectionRequest
    - `amount` number — The amount to be paid
    - `customer_number` string — The mobile money account number to be charged. Ghana, Uganda, Kenya, Tanzania, Cameroon = **12 Digits(country code included)**, Sierra Leone = **11 Digits(country code included)**
    - `transaction_reference` string — The unique identifier of the transaction.
    - `transaction_description` string — The description of the transaction
    - `customer_bank_code` string — This is the customer’s bank code
    - `currency_code` string — The currency code in ISO 4217 format (GHS, KES, TZS, UGX, XAF, LRD, SLE)
    - `customer_email` string — The email address of the customer
    - `customer_first_name` string — The first name of the customer
    - `customer_last_name` string — The last name of the customer
    - `customer_phone_number` string — The phone number of the customer
    - `country_code` string — The ISO Country Code. (ISO 3166-1 alpha-2) (**GH-Ghana, TZ-Tanzania, UG- Uganda, KE- Kenya, SL- Sierra Leone, CI- Côte d'Ivoire, BJ- Benin, LR- Liberia, CM - Cameroon**)
  - ZarProcessCollectionRequest
    - `amount` number, double — The amount to be paid
    - `transaction_reference` string — The unique identifier of the transaction
    - `transaction_description` string — Description of the transaction
    - `customer_bank_code` string — The bank code for ZAR collections. EFTZAR for other banks, CPZZAR would be used for Capitec Collections
    - `currency_code` string — The currency code in ISO 4217 format (ZAR)
    - `customer_email` string — The email address of the customer
    - `customer_first_name` string — The first name of the customer
    - `customer_last_name` string — The last name of the customer
    - `redirect_url` string — The URL that the user is redirected to when a payment is successful
    - `id_number` string — This is a 13-digit number number issued by the South African government. This is primarily used for Capitec Collections
    - `customer_phone_number` string — The phone number of the customer
    - `country_code` string — The ISO Country Code. (ISO 3166-1 alpha-2) (ZA)
  - XofProcessCollectionRequest
    - `amount` number, required — The amount to be charged.
    - `customer_number` string, required — The mobile money account number to be charged. Mobile money number length for Côte D'Ivoire is 13 digits(country code included). Mobile money number length for Benin Republic is 13 digits(country code included). Also, note the addition of **“01”** to Benin Republic numbers that are required for successful transactions in the format **229 01 12345678**.
    - `transaction_reference` string, required — The unique identifier of the transaction.
    - `transaction_description` string, nullable — The description of the transaction.
    - `customer_bank_code` string, required — This is the customer’s bank code.
    - `currency_code` string, required — The currency code in ISO 4217 format (XOF)
    - `customer_email` string, email, nullable — The customer's email address.
    - `customer_first_name` string, nullable — The customer's first name.
    - `customer_last_name` string, nullable — The customer's last name.
    - `customer_phone_number` string, required — The customer's contact phone number.
    - `country_code` string, required — The ISO Country Code. (ISO 3166-1 alpha-2). CI - Côte d'Ivoire BJ- Benin Republic
    - `redirect_url` string, url, nullable — The URL the customer is redirected to. **Required For Wave**.

## Response `200`

Momo, XOF and ZAR Process Collection

- MomoAndXofAndZarProcessCollectionResponse
  - `response_code` string — Code representing the status of the request (e.g., '09' for pending).
  - `response_message` string — Text description of the response code.
  - `transaction_reference` string — Unique reference for the initialized transaction.
  - `requires_otp` boolean, nullable — Indicates if the customer needs to provide an OTP to authorize the payment.
  - `otp_length` integer, nullable — The expected length of the OTP if required.
  - `before_payment_instruction` string, nullable — Instructions to display to the user before they authorize the payment.
  - `after_payment_instruction` string, nullable — Instructions to display to the user after payment authorization.
  - `payment_token` string, nullable — Unique token generated for the payment session.
  - `payee` string, nullable — Phone number or identifier of the payee/customer.
  - `payment_method` string, nullable — The specific payment method used (e.g., WAVE, MTN_CI, ORANGE_CI, EFTZAR).
  - `transaction_channel` string, nullable — The channel through which the transaction is processed.
  - `redirect_customer_to_url_processing` boolean, nullable — Indicates whether the customer must be redirected to a URL to complete payment.
  - `payment_completion_url` string, url, nullable — The URL to redirect the customer to complete the ZAR transaction.
  - `redirect_url` string, url, nullable — The URL to redirect the customer after the transaction is completed.

## Other responses

- `400` — Invalid request

---

[API](https://skmtc.net/payaza/apis/payaza-documentation.md) · [All operations](https://skmtc.net/payaza/apis/payaza-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/payaza/payaza-documentation/revisions/1ecd4b94ff07/schema)
