Skip to content

Mobile Commerce

This payment method lets the customer make a payment using their mobile phone balance.

IS Integration option

Info

This integration option supports only KZT currency.

Payment flow

  1. The customer initiates the payment on the merchant's website.
  2. The merchant displays a phone number submission form to the customer.
  3. The customer submits their mobile phone number.
  4. The merchant sends the payment request to Overpay.
  5. Overpay sends the response with the pending status.
  6. The merchant displays an OTP (one-time password) submission form to the customer.
  7. The customer receives an SMS message with the one-time password.
  8. The customer enters the OTP on the merchant's website and confirms the payment.
  9. The merchant sends the transaction confirmation request to Overpay. The request contains the OTP submitted by the customer.
  10. The Overpay sends the response to the confirm request.
  11. Overpay sends a webhook notification with the payment status to the merchant. The merchant may also request the payment status from Overpay with the status query.
  12. The merchant displays the final payment status to the customer.

Payment

Request

Send a payment request with the following additional parameters:

object
return_url
required
string
A URL to return the customer to when a transaction is completed.
object
A section of the payment method information.
type
required
string
mobile_commerce.
account_number
required
string (11)
The customer's phone number, 11 digits without spaces and without special symbols. The phone number must start with the code 77.
Request example
{
    "request": {
        "amount": 1002,
        "currency": "KZT",
        "description": "test",
        "test": false,
        "tracking_id": "31765111-a44a-43f1-93f0-b70f81b97f9e",        
        "language": "en",        
        "return_url": "https://your-success.url",        
        "method": {
            "type": "mobile_commerce",
            "account_number": "77123456789"
        }
    }
}
Response
Response example
{
    "transaction": {
        "uid": "113fe130-3b11-11eb-11db-114b205ca951",
        "type": "payment",
        "status": "pending",
        "amount": 1002,
        "currency": "KZT",
        "description": "test",
        "created_at": "2025-04-26T07:15:00Z",
        "updated_at": "2025-04-26T07:15:00Z",
        "method_type": "mobile_commerce",
        "receipt_url": "https://backoffice.overpay.io/customer/transactions/a73fe130-3b66-45eb-80db-674b205ca951/628507edc0c73886eb09f6c6309fe599f0dbad33d392ffaac87bb415a801b4dc?language=en",
        "payment": {
            "status": "pending",
            "gateway_id": 5290,
            "ref_id": "18d28c32-c3f6-4acc-ba09-268b12ec7637",
            "message": "Transaction was initialized. Need approve."
        },
        "mobile_commerce": {
            "type": "mobile_commerce",
            "account_number": "77123456789"
        },
        "customer": {
            "email": null,
            "ip": null
        },
        "manually_corrected_at": null,
        "version": 0,
        "message": "Transaction was initialized. Need approve.",
        "tracking_id": "31765111-a44a-43f1-93f0-b70f81b97f9e",
        "test": false,
        "language": "en",
        "additional_data": {
            "payment_method": {
                "type": "alternative"
            }
        },       
        "gateway": {
            "iframe": false
        }
    }
}

Transaction confirmation

Request

Send a confirmation request specifying the uid of the corresponding payment transaction as the path parameter

POST https://api.overpay.io/beyag/transactions/{uid}/confirm

Specify the following parameters in the request body:

object
skip_duplicate_check
boolean
If false, declines a request if the request with the same uid was sent within 30 seconds prior to it. By default, set to false.
password
required
string
The one-time password submitted by the customer.
Request example
{
    "request": {            
        "password": "5576"
    }
}
Response
Response example
{
    "transaction": {
        "parent_uid": "113fe130-3b11-11eb-11db-114b205ca951",
        "type": "confirm",
        "status": "successful",
        "message": "Confirm was successfully processed.",
        "created_at": "2025-04-25T07:20:44+00:00",
        "amount": 1002,
        "currency": "KZT"
    }
} 

Refund

Request

Send a standard refund request. The amount value must equal the amount of the parent transaction.

Payout

Request

Send a payout request with the following additional data:

object
object
A section of the payment method information.
type
required
string
mobile_commerce.
account_number
required
string (11)
The phone number of the payout recipient, 11 digits without spaces and without special symbols. The phone number must start with the code 77.
Request example
{
  "request": {
    "amount": 2200,
    "currency": "KZT",
    "description": "test",
    "test": true,
    "tracking_id": "11-21212",
    "method": {
      "type": "mobile_commerce",
      "account_number": "77123456789"
    }
  }
}
Response
Response example
{
  "transaction": {
    "uid": "e785bbf1-dab2-4885-a42a-6de88d8bf999",
    "type": "payout",
    "status": "pending",
    "amount": 2200,
    "currency": "KZT",
    "description": "test tes test",
    "created_at": "2025-05-23T11:47:30Z",
    "updated_at": "2025-05-23T11:47:30Z",
    "manually_corrected_at": null,
    "method_type": "mobile_commerce",
    "receipt_url": "https://backoffice.overpay.io/customer/transactions/e785bbf1-dab2-4885-a42a-6de88d8bf999/1f2674fcf1c2a1b36d169218ea8797ead51516e1bc867033ba332e44011c62b5?language=en",
    "payout": {
      "status": "pending",
      "gateway_id": 5290,
      "ref_id": "42aa067d-f163-4a8c-b61a-5692da4e839c",
      "message": "Transaction was initialized."
    },
    "mobile_commerce": {
      "type": "mobile_commerce",
      "account_number": "77123456789"
    },
    "customer": {
      "email": null,
      "ip": null
    },
    "version": 0,
    "message": "Transaction was initialized.",
    "tracking_id": "52b77ae9-5f78-42a7-b715-e132896ed888",
    "test": false,
    "language": "en",
    "billing_address": {},
    "additional_data": {
      "payment_method": {
        "type": "alternative"
      }
    }
  }
}