Skip to main content

Capitec Pay

Capitec Pay is an open banking payment method available exclusively to Capitec Bank clients in South Africa. Transactions can be initiated using either the client’s phone number or ID number that is linked to their Capitec banking app, with the phone number being the most commonly used identifier.

This method enables secure payments, as no sensitive information—such as card numbers or CVV codes—is shared during the process. Once the transaction is initiated, the client receives a prompt in the Capitec Bank app and has 120 seconds to approve or decline the payment.

note

Capitec Pay must be presented as a standalone payment method on the merchant’s checkout page, using the official Capitec Pay logo. It should not be grouped under any other category, such as "bank transfer" or similar. Check the Capitec Pay brand guidelines section below for further information.

And if you don't have the Capitec Pay logo, please contact our integration specialists.


Requirements

  • API credentials - Ensure you have your EBANX integration key. If not, complete the Merchant Signup Form.
  • Familiarity with EBANX Direct - This setup follows the same general structure as other payment methods, with a few unique parameters.

How it works

  • Request payment - Call the ws/direct endpoint with the required parameters.
  • Payment instructions - Display to the customer a page with the instructions to complete the payment and a countdown(120s).
  • Customer completes the payment - Customer has 120 seconds to complete the payment in their Capitec Bank app.
  • Payment Conformation - Once the customer completes the payment, EBANX updates the payment status from pending (PE) to confirmed (CO). If the payment is not completed, the status updates to canceled (CA). You will get a payment status update notification for all these scenarios.

Key information

  • Minimum amount per transaction: R0.01
  • Maximum amount per transaction: R100 000.00
  • Transaction expiration time: 120 seconds.
  • Refund date range: Refunds can be processed within 180 days.

Instructions

Follow the steps below.

  1. Select your environment

    Select the appropriate environment for your integration. Use the sandbox environment for testing, or the production environment for live transactions. Use the URL for your HTTP requests based on your selection.

    https://sandbox.ebanx.com/ws/direct
  2. Define your parameters

    With Capitec Pay, customers receive a notification in the Capitec Bank app to complete the payment quickly and safely. To trigger this notification, call the ws/direct endpoint with the following required fields:

    Basic parameters:

    ParameterDescription
    operationSet to request
    integration_keyYour EBANX integration key
    payment_type_codeSet to capitec-pay
    countrySet to za for South Africa

    Payment parameters:

    ParameterDescription
    merchant_payment_codeA unique code you generate to identify this payment.
    currency_codeSupported value: ZAR
    amount_totalTotal amount to be charged

    Customer data:

    The phone_number field, linked to the customer’s Capitec Bank account, is mandatory to initiate the transaction. Optionally, the ID number associated with the account can also be provided in the field document.


    ParameterDescription
    nameCustomer name
    emailCustomer email
    phone_numberCustomer phone number
    documentCustomer ID number

    Check a request example below:
    curl -X POST \
    --location 'https://sandbox.ebanx.com/ws/direct\execute' \
    --header 'Content-Type: application/json' \
    --data '{
    "integration_key": "{{your_integration_key}}",
    "operation": "request",
    "payment": {
    "name": "John Example",
    "email": "email@example.com",
    "phone_number": "0121234567",
    "document": "0301014304184",
    "country": "za",
    "payment_type_code": "capitec-pay",
    "merchant_payment_code": "merchant_payment_code_here",
    "currency_code": "ZAR",
    "amount_total": "100",
    }
    }'

  3. Displaying payment instructions

    A successful request returns a response like the example below. At this stage payment status will be PE, and you should display clear instructions on how do complete the payment.


    {
    "payment": {
    "hash": "6835d1324f7c98625631339e18ca224932f71f3290280b86",
    "country": "za",
    "merchant_payment_code": "64087ea7-8791-439a-b0c8-4f5a7b42427c",
    "order_number": null,
    "status": "PE",
    "status_date": null,
    "open_date": "2025-05-27 14:50:26",
    "confirm_date": null,
    "transfer_date": null,
    "amount_br": "100.00",
    "amount_ext": "100.00",
    "amount_iof": "0.00",
    "currency_rate": "1.0000",
    "currency_ext": "ZAR",
    "due_date": "2025-05-30",
    "instalments": "1",
    "payment_type_code": "capitec-pay",
    "pre_approved": false,
    "capture_available": null,
    "customer": {
    "document": "0301014304184",
    "email": "email@example.com",
    "name": "John Example",
    "birth_date": null
    }
    },
    "status": "SUCCESS"
    }

    On the instructions page, make sure to inform customers they must open Capitec Bank app and complete the payment within 120 seconds, calculated from the open_date in the response.

    Check the example below:

    Capitec instructions

    Once customer completes the payment in Capitec Bank app, EBANX will send you a status update notification.

  4. Monitor payment for status changes

    Notifications

    Status

    • After receiving a notification that status has changed, retrieve the payment status.

    • When a payment is confirmed, the status will change from pending (PE) to confirmed (CO). If the customer does not complete the payment, the status will eventually change to cancelled (CA).

  5. Congratulations!

    You have succesfully integrated Capitec Pay.

    For more information, refer to the
    Direct API reference guidechevron_right

Capitec Pay UX flow

This demo illustrates the end-to-end payment experience with Capitec Pay. The journey begins on the merchant's checkout page, where the customer selects Capitec Pay and enters their mobile number. After submitting the request, a push notification is sent to their Capitec Bank app. The user reviews and approves the payment directly within the app, and once confirmed, both the customer and the merchant receive immediate payment confirmation.

Capitec Push Flow

Capitec Pay brand guidelines

Capitec Pay should be presented as a standalone payment method on the merchant’s checkout page with the right Capitec Pay logo. It should NOT be nested under any payment method like bank transfer, etc.

Check the example below:

Capitec Checkout

Also pay attention to the logo rules:

Resources

Use the following resources when testing in your sandbox environment.


Still need help?

Help Image

We hope this article was helpful. If you still have questions, you can explore the following options: