Introduction

The Mobipaid API is organized around REST. Our API has predictable resource-oriented URLs, accepts form-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.

You can use the Mobipaid API in test/development mode, which does not affect your live data or interact with the banking networks. The URL and API key you use to authenticate the request determines whether the request is live mode or test mode.

Authentication

The Mobipaid API uses API keys to authenticate requests. You can view and manage your API keys in the Mobipaid Developer Dashboard.

Every application have two access keys in place, development mode and production mode

Development mode specifications:

  • The URL is https://test.mobipaid.io/.
  • Access key have the prefix mp_test_.

Production mode specifications:

  1. The URL is https://live.mobipaid.io/.
  2. Access key have the prefix mp_live_.
  3. Connect your application with a merchant.
  4. Change your status application to Published.
  5. Merchant have to enable your application on their dashboard.

Your Access keys carry many privileges, so be sure to keep them secure! Do not share your access API keys in publicly accessible areas such as GitHub, client-side code, and so forth.

Authentication to the API is performed via HTTP Bearer Auth. Provide your Access key as the bearer auth value.

This is the example with CURL.

curl -X GET https://test.mobipaid.io/v2/payments -H "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"

All API requests must be made over HTTPS. Calls made over plain HTTP will fail. API requests without authentication will also fail.

Errors
Status code Description
200 - OK Everything worked as expected.
400 - Bad Request The request was unacceptable, often due to missing a required parameter.
401 - Unauthorized No valid API key provided.
402 - Request Failed The parameters were valid but the request failed.
403 - Forbidden The API key doesn't have permissions to perform the request.
404 - Not Found The requested resource doesn't exist.
409 - Conflict The request conflicts with another request (perhaps due to using the same idempotent key).
429 - Too Many Requests Too many requests hit the API too quickly. We recommend an exponential backoff of your requests.
500, 502, 503, 504 - Server Errors Something went wrong on Mobipaid's end. (These are rare.)
Payment Requests

Request a payment to your customer email or mobile number with this feature. We will send invoice to the customer automatically.

We support Credit Card, Direct Debit, Paypal, Apple Pay, Google Pay, Nedbank, American Express, etc. With mobipaid wallet in place, customer can pay quickly with payment options that has been saved.

This payment request is intended for one time payment.

Create a Payment Request

Create a new single payment request.

Body Params
Field Description
request_methods

required

array

"EMAIL" if you want to send invoice through email. "SMS" if you want to send invoice through SMS. "WEB" if you don't want us to send invoice at all but you still need email or mobile_number. Example: ['EMAIL', 'SMS', 'WEB']

reference_number

 

string

This will help you indentify a request. Example: "OO-1234-2020"

email

required with condition

string

Customer email, required if request_methods is containing "EMAIL". Example: "john@doe.com"

merchant_phone_number

 

string

Merchant mobile number that used to send SMS. You can buy the number in merchant dashboard. Example: "+1234567890"

mobile_number

required with condition

string

Customer mobile number, required if request_methods is containing "SMS". Example: "+1234567890"

initial_payment_amount

required with condition

number

The initial amount of payment needed to pay for this request. Only needed if the payment_frequency parameter is not ONE-TIME. Example : 1.54.

amount

required

number

The amount of payment for this request Example: 3

currency

required

string

The currency of this payment request in 3 digit ISO format Example: "USD"

fixed_amount

required

boolean

Boolean value between true and false. If set to false, customer can specify the amount they would like to pay. Commonly used for donation payments.

tax_id

 

number

Tax profile ID to calculate the tax amount for this payment. If it does not exist, the amount value will be tax free.

template_id

 

number

The Email or SMS template you would like to use with this payment. When empty, the payment request will be send using merchant's default template. If merchant does not set the default template, it will automatically send Mobipaid's default template.

payment_type

 

string

Add optional payment_type by default it's filled with DB. Set it to "PA" to use Pre Authorization. You need to manually capture to accept the payment.

payment_methods

 

array

Add optional payment methods that can be used to pay this request. You can add "APPLE_PAY", "GOOGLE_PAY", "NEDBANK_EFT" or "AMEX" in a single array

moto_enabled

 

boolean

Enable MOTO card mode which have no additional authentication on payment widget

shipping_enabled

 

boolean

Add optional shipping information that can be filled for this request.

send_mms_invoice

 

boolean

Use "true" if you want Mobipaid to help you send an invoice through MMS. (Only available for USA and Canada mobile carriers.) Other non-supported countries will send an extended SMS with an URL to download the respective invoice. You will be charged based on your MMS and SMS fee where applicable.

attach_invoice

 

boolean

Use "true" if you want Mobipaid to attach an invoice as a file and send it through email.

invoice_url

 

string

The url of the invoice file. If it's not exist, the message template will be used as the invoice content.

send_mms_receipt

 

boolean

Use "true" if you want Mobipaid to help you send a payment receipt through MMS or SMS. You will be charged on your MMS and SMS fee where applicable.

attach_receipt

 

boolean

Use "true" if you want the payment receipt to be attached as a file and sent through email.

receipt_file_type

 

string

File type for payment receipt. Available value: "pdf/jpeg/png", default value pdf.

expiry_date

 

string

The expiry date for this payment request. Format = YYYY-MM-DD HH:MM

customer_id

 

string

Customer ID used to update customer data if exist. Example: "h3xDi8"

customer_salutation

 

string

Mr, Mrs, or Miss. Example: "Mr"

customer_first_name

 

string

Customer first name. Example: "John"

customer_last_name

 

string

Customer last name. Example: "Doe"

send_confirmation

 

string

Use "true" if you want Mobipaid to help you send the confirmation sms/email after payment is succeed. Use "false" if you want to send the confirmation by yourself

response_url

 

string

Response_url is the url where customer will get the payment result. After the transaction is paid, the payment response will be posted to the response_url. Example: "http://mymobipaidmerchant.com/response/"

cancel_url

 

string

The url where customer will redirected when customer click cancel button on payment page. Example: "https://mywebsite.com"

redirect_url

 

string

After payment we will redirect to this URL. If empty, we will show the receipt page instead. Example: "http://mymobipaidmerchant.com/receipt/"

payment_frequency

 

string

The frequency for the payment request. Available frequency are "ONE-TIME", "WEEKLY", "MONTHLY", "QUARTERLY", "YEARLY". The default value is ONE-TIME.

payment_start_date

required with condition

string

Payment start date , requested if payment_frequency is not "ONE-TIME". The value must follow the ISO8601 standard (ex:"2023-08-09T16:59:59.000Z"). Default value is empty

payment_end_date

required with condition

string

Payment end date, requested if payment_frequency is not "ONE-TIME". The value must follow ISO8601 standard (ex:"2023-09-09T17:59:59.000Z"). Default value is empty.

user_id string
user_id is value of user account id

Required Header:

  • Authorization
Request URL  
https://test.mobipaid.io/v2/payment-requests/
Request Body
{
  "request_methods": [ "SMS"],
  "reference_number": "123",
  "email": "example@example.com",
  "merchant_phone_number": null,
  "mobile_number": "+12345678901",  
  "customer_id": "",
  "customer_salutation": "Mr",
  "customer_first_name": "John",
  "customer_last_name" : "Preston",
  "redirect_url" : "https://mobipaid.com",
  "response_url" : "https://mobipaid.com",
  "cancel_url" : "https://mobipaid.com",
  "fixed_amount": true,
  "currency": "ZAR",
  "amount": 1500.12,
  "tax_id": "",
  "template_id": "",
  "moto_enabled": false, 
  "shipping_enabled": false, 
  "send_mms_invoice": true,
  "attach_invoice": true,
  "invoice_url": "https://mp-fixed-assets.s3.amazonaws.com/logo.png",
  "attach_receipt": true, 
  "receipt_file_type": "pdf",
  "payment_type": "DB",
  "payment_methods": ["APPLE_PAY", "GOOGLE_PAY", "AMEX"],
  "expiry_date": "",
  "payment_frequency": "ONE-TIME",
  "payment_start_date": "",
  "user_id": "p4DxanBE"
}

Examples
curl -X POST https://test.mobipaid.io/v2/payment-requests \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0" \
--data '{
    "request_methods": [ "SMS"],
    "reference_number": "123",
    "email": "example@example.com",
    "merchant_phone_number": null,
    "mobile_number": "+12345678901",
    "customer_id": "",
    "customer_salutation": "Mr",
    "customer_first_name": "John",
    "customer_last_name" : "Preston",
    "redirect_url" : "https://mobipaid.com",
    "response_url" : "https://mobipaid.com",
    "cancel_url" : "https://mobipaid.com",
    "fixed_amount": true,
    "currency": "ZAR",
    "amount": 1500.12,
    "tax_id": "",
    "template_id": "",
    "moto_enabled": false,
    "shipping_enabled": false,
    "send_mms_invoice": true,
    "attach_invoice": true,
    "invoice_url": "https://mp-fixed-assets.s3.amazonaws.com/logo.png",
    "attach_receipt": true,
    "receipt_file_type": "pdf",
    "payment_type": "DB",
    "payment_methods": [
        "APPLE_PAY",
        "GOOGLE_PAY",
        "AMEX"
    ],
    "expiry_date": ""
}'
import requests
import json

url = "https://test.mobipaid.io/v2/payment-requests"

payload = json.dumps( {
    "request_methods": [ "SMS"],
    "reference_number": "123",
    "email": "example@example.com",
    "merchant_phone_number": None,
    "mobile_number": "+12345678901",
    "customer_id": "",
    "customer_salutation": "Mr",
    "customer_first_name": "John",
    "customer_last_name" : "Preston",
    "redirect_url" : "https://mobipaid.com",
    "response_url" : "https://mobipaid.com",
    "cancel_url" : "https://mobipaid.com",
    "fixed_amount": True,
    "currency": "ZAR",
    "amount": 1500.12,
    "tax_id": "",
    "template_id": "",
    "moto_enabled": false,
    "shipping_enabled": false,
    "send_mms_invoice": true,
    "attach_invoice": true,
    "invoice_url": "https://mp-fixed-assets.s3.amazonaws.com/logo.png",
    "attach_receipt": True,
    "receipt_file_type": "pdf",
    "payment_type": "DB",
    "payment_methods": [
        "APPLE_PAY",
        "GOOGLE_PAY",
        "NEDBANK_EFT",
         "AMEX"
    ],
    "expiry_date": "",
   "user_id": "Mjy="
} )
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
    'method': 'POST',
    'url': 'https://test.mobipaid.io/v2/payment-requests',
    'headers': {
        'Content-Type': 'application/json',
        'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
    },
    body: JSON.stringify({
        "request_methods": [ "SMS"],
        "reference_number": "123",
        "email": "example@example.com",
        "merchant_phone_number": null,
        "mobile_number": "+12345678901",
        "customer_id": "",
        "customer_salutation": "Mr",
        "customer_first_name": "John",
        "customer_last_name" : "Preston",
        "redirect_url" : "https://mobipaid.com",
        "response_url" : "https://mobipaid.com",
        "cancel_url" : "https://mobipaid.com",
        "fixed_amount": true,
        "currency": "ZAR",
        "amount": 1500.12,
        "tax_id": "",
        "template_id": "",
        "moto_enabled": false,
        "shipping_enabled": false,
        "send_mms_invoice": true,
        "attach_invoice": true,
        "invoice_url": "https://mp-fixed-assets.s3.amazonaws.com/logo.png",
        "attach_receipt": true,
        "receipt_file_type": "pdf",
        "payment_type": "DB",
        "payment_methods": [
            "APPLE_PAY",
            "GOOGLE_PAY",
            "NEDBANK_EFT",
            "AMEX"
        ],
        "expiry_date": ""
    })

};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

$data = array(
    "request_methods" => [ "SMS"],
    "reference_number" => "123",
    "email" => "example@example.com",
    "merchant_phone_number" => null,
    "mobile_number" => "+12345678901",
    "customer_id" => "",
    "customer_salutation" => "Mr",
    "customer_first_name" => "John",
    "customer_last_name"  => "Preston",
    "redirect_url"  => "https://mobipaid.com",
    "response_url"  => "https://mobipaid.com",
    "cancel_url"  => "https://mobipaid.com",
    "fixed_amount" => true,
    "currency" => "ZAR",
    "amount" => 1500.12,
    "tax_id" => "",
    "template_id" => "",
    "moto_enabled" => false,
    "shipping_enabled" => false,
    "send_mms_invoice" => true,
    "attach_invoice" => true,
    "invoice_url" => "https://mp-fixed-assets.s3.amazonaws.com/logo.png",
    "attach_receipt" => true,
    "receipt_file_type" => "pdf",
    "payment_type": "DB",
    "payment_methods" => [
        "APPLE_PAY",
        "GOOGLE_PAY",
        "NEDBANK_EFT",
        "AMEX"
    ],
    "expiry_date" => ""
);
$data = json_encode($data);

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/payment-requests",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => $data,
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require 'json'

url = URI("https://test.mobipaid.io/v2/payment-requests")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
request.body = {
    request_methods: [ "SMS"],
    reference_number: "123",
    email: "example@example.com",
    merchant_phone_number: nil,
    mobile_number: "+12345678901",
    customer_id: "",
    customer_salutation: "Mr",
    customer_first_name: "John",
    customer_last_name: "Preston",
    redirect_url: "https://mobipaid.com",
    response_url: "https://mobipaid.com",
    cancel_url: "https://mobipaid.com",
    fixed_amount: true,
    currency: "ZAR",
    amount: 1500.12,
    tax_id: "",
    template_id: "",
    moto_enabled: false,
    shipping_enabled: false,
    send_mms_invoice: true,
    attach_invoice: true,
    invoice_url: "https://mp-fixed-assets.s3.amazonaws.com/logo.png",
    attach_receipt: true,
    receipt_file_type: "pdf",
    payment_type: "DB",
    payment_methods: [
        "APPLE_PAY",
        "GOOGLE_PAY",
        "NEDBANK_EFT",
        "AMEX"
    ],
    expiry_date: ""
}.to_json

response = https.request(request)
puts response.read_body

Result Format
{
  "amount": "1500.12", 
  "attach_invoice": true, 
  "attach_receipt": true, 
  "cancel_url": "https://google.com", 
  "created_at": "2020-02-19T06:43:50.000Z", 
  "currency": "ZAR", 
  "customer_first_name": "John", 
  "customer_id": "", 
  "customer_last_name": "Preston", 
  "customer_salutation": "Mr", 
  "email": "example@example.com", 
  "expiry_date": "", 
  "fixed_amount": true, 
  "invoice_url": "https://upload.wikimedia.org/wikipedia/commons/a/a8/CCU_Logo.jpeg", 
  "long_url": "https://long-url", 
  "merchant_phone_number": null, 
  "mobile_number": "+12345678901", 
  "modified_at": "", 
  "payment_methods": [
    "GOOGLE_PAY",
    "AMEX"
  ], 
  "payment_type": "DB", 
  "qrcode_link": "https://qrcodelink", 
  "receipt_file_type": "pdf", 
  "redirect_url": "https://google.com", 
  "reference_number": "123", 
  "request_methods": [
    "SMS"
  ], 
  "response_url": "https://google.com", 
  "result": "success", 
  "send_mms_invoice": true, 
  "send_mms_receipt": false, 
  "shipping_enabled": false, 
  "short_url": "https://short-url", 
  "tax_id": "", 
  "template_id": "", 
  "transaction_id": "145510OO",
  "payment_frequency": "ONE-TIME",
  "user_id": 18
}
{
     "message": "Forbidden"
}
{
    "is_valid": false,
    "error_field": "",
    "error_message": "Apple Pay is not enabled. Please check your cofiguration and/or contact your administrator.",
    "result": "failed"
}

Request Samples
Loading...
Edit a Payment Request

You can update the payment request by using the same parameters from create a payment request, but you have to add transaction_id to the body.

Required Header:

  • Authorization
Request URL  
https://test.mobipaid.io/v2/payment-requests/
Request Body
{
    "transaction_id": "2116376OO",
    "request_methods": [ "WEB"],
    "reference_number": "123",
    "email": "example@example.com",
    "merchant_phone_number": null,
    "mobile_number": "+12345678901",  
    "customer_id": "",
    "customer_salutation": "Mr",
    "customer_first_name": "John",
    "customer_last_name" : "Preston",
    "redirect_url" : "https://mobipaid.com",
    "response_url" : "https://mobipaid.com",
    "cancel_url" : "https://mobipaid.com",
    "fixed_amount": true,
    "currency": "ZAR",
    "amount": 1500.12,
    "tax_id": "",
    "template_id": "",
    "moto_enabled": false, 
    "shipping_enabled": false, 
    "send_mms_invoice": true,
    "attach_invoice": true,
    "invoice_url": "https://mp-fixed-assets.s3.amazonaws.com/logo.png",
    "attach_receipt": true, 
    "receipt_file_type": "pdf",
    "payment_type": "DB",
    "payment_methods": ["APPLE_PAY", "GOOGLE_PAY", "NEDBANK_EFT", "AMEX"],
    "expiry_date": ""
}

Examples
curl -X PUT https://test.mobipaid.io/v2/payment-requests \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0" \
--data '{
    "transaction_id": "2116376OO",
    "request_methods": [ "WEB"],
    "reference_number": "123",
    "email": "example@example.com",
    "merchant_phone_number": null,
    "mobile_number": "+12345678901",
    "customer_id": "",
    "customer_salutation": "Mr",
    "customer_first_name": "John",
    "customer_last_name" : "Preston",
    "redirect_url" : "https://mobipaid.com",
    "response_url" : "https://mobipaid.com",
    "cancel_url" : "https://mobipaid.com",
    "fixed_amount": true,
    "currency": "ZAR",
    "amount": 1500.12,
    "tax_id": "",
    "template_id": "",
    "moto_enabled": false,
    "shipping_enabled": false,
    "send_mms_invoice": true,
    "attach_invoice": true,
    "invoice_url": "https://mp-fixed-assets.s3.amazonaws.com/logo.png",
    "attach_receipt": true,
    "receipt_file_type": "pdf",
    "payment_type": "DB",
    "payment_methods": [
        "APPLE_PAY",
        "GOOGLE_PAY",
        "NEDBANK_EFT",
        "AMEX"
    ],
    "expiry_date": ""
}'
import requests
import json

url = "https://test.mobipaid.io/v2/payment-requests"

payload = json.dumps( {
    "transaction_id": "2116376OO",
    "request_methods": [ "WEB"],
    "reference_number": "123",
    "email": "example@example.com",
    "merchant_phone_number": None,
    "mobile_number": "+12345678901",
    "customer_id": "",
    "customer_salutation": "Mr",
    "customer_first_name": "John",
    "customer_last_name" : "Preston",
    "redirect_url" : "https://mobipaid.com",
    "response_url" : "https://mobipaid.com",
    "cancel_url" : "https://mobipaid.com",
    "fixed_amount": True,
    "currency": "ZAR",
    "amount": 1500.12,
    "tax_id": "",
    "template_id": "",
    "moto_enabled": False,
    "shipping_enabled": False,
    "send_mms_invoice": True,
    "attach_invoice": True,
    "invoice_url": "https://mp-fixed-assets.s3.amazonaws.com/logo.png",
    "attach_receipt": True,
    "receipt_file_type": "pdf",
    "payment_type": "DB",
    "payment_methods": [
        "APPLE_PAY",
        "GOOGLE_PAY",
        "NEDBANK_EFT",
       "AMEX"
    ],
    "expiry_date": ""
} )
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("PUT", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
    'method': 'PUT',
    'url': 'https://test.mobipaid.io/v2/payment-requests',
    'headers': {
        'Content-Type': 'application/json',
        'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
    },
    body: JSON.stringify({
        "transaction_id": "2116376OO",
        "request_methods": [ "WEB"],
        "reference_number": "123",
        "email": "example@example.com",
        "merchant_phone_number": null,
        "mobile_number": "+12345678901",
        "customer_id": "",
        "customer_salutation": "Mr",
        "customer_first_name": "John",
        "customer_last_name" : "Preston",
        "redirect_url" : "https://mobipaid.com",
        "response_url" : "https://mobipaid.com",
        "cancel_url" : "https://mobipaid.com",
        "fixed_amount": true,
        "currency": "ZAR",
        "amount": 1500.12,
        "tax_id": "",
        "template_id": "",
        "moto_enabled": false,
        "shipping_enabled": false,
        "send_mms_invoice": true,
        "attach_invoice": true,
        "invoice_url": "https://mp-fixed-assets.s3.amazonaws.com/logo.png",
        "attach_receipt": true,
        "receipt_file_type": "pdf",
        "payment_type": "DB",
        "payment_methods": [
            "APPLE_PAY",
            "GOOGLE_PAY",
            "NEDBANK_EFT",
            "AMEX"
        ],
        "expiry_date": ""
    })

};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

$data = array(
    "transaction_id" => "2116376OO",
    "request_methods" => [ "WEB"],
    "reference_number" => "123",
    "email" => "example@example.com",
    "merchant_phone_number" => null,
    "mobile_number" => "+12345678901",
    "customer_id" => "",
    "customer_salutation" => "Mr",
    "customer_first_name" => "John",
    "customer_last_name"  => "Preston",
    "redirect_url"  => "https://mobipaid.com",
    "response_url"  => "https://mobipaid.com",
    "cancel_url"  => "https://mobipaid.com",
    "fixed_amount" => true,
    "currency" => "ZAR",
    "amount" => 1500.12,
    "tax_id" => "",
    "template_id" => "",
    "moto_enabled" => false,
    "shipping_enabled" => false,
    "send_mms_invoice" => true,
    "attach_invoice" => true,
    "invoice_url" => "https://mp-fixed-assets.s3.amazonaws.com/logo.png",
    "attach_receipt" => true,
    "receipt_file_type" => "pdf",
    "payment_type": "DB",
    "payment_methods" => [
        "APPLE_PAY",
        "GOOGLE_PAY",
        "NEDBANK_EFT",
        "AMEX"
    ],
    "expiry_date" => ""
);
$data = json_encode($data);

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/payment-requests",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "PUT",
  CURLOPT_POSTFIELDS => $data,
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require 'json'

url = URI("https://test.mobipaid.io/v2/payment-requests")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Put.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
request.body = {
    transaction_id: "2116376OO",
    request_methods: [ "WEB"],
    reference_number: "123",
    email: "example@example.com",
    merchant_phone_number: nil,
    mobile_number: "+12345678901",
    customer_id: "",
    customer_salutation: "Mr",
    customer_first_name: "John",
    customer_last_name: "Preston",
    redirect_url: "https://mobipaid.com",
    response_url: "https://mobipaid.com",
    cancel_url: "https://mobipaid.com",
    fixed_amount: true,
    currency: "ZAR",
    amount: 1500.12,
    tax_id: "",
    template_id: "",
    moto_enabled: false,
    shipping_enabled: false,
    send_mms_invoice: true,
    attach_invoice: true,
    invoice_url: "https://mp-fixed-assets.s3.amazonaws.com/logo.png",
    attach_receipt: true,
    receipt_file_type: "pdf",
    payment_type: "DB",
    payment_methods: [
        "APPLE_PAY",
        "GOOGLE_PAY",
        "NEDBANK_EFT",
        "AMEX"
    ],
    expiry_date: ""
}.to_json

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "transaction_id": "145497OO",
    "request_methods": [
        "WEB"
    ],
    "reference_number": "123",
    "email": "example@example.com",
    "mobile_number": "+12345678901",
    "merchant_phone_number": null,
    "customer_id": "",
    "customer_salutation": "Mr",
    "customer_first_name": "John",
    "customer_last_name": "Preston",
    "payment_type": "DB",
    "currency": "ZAR",
    "amount": "1500.12",
    "fixed_amount": true,
    "short_url": "https://shorturl",
    "long_url": "https://longurl",
    "qrcode_link": "https://qrlink",
    "tax_id": "",
    "template_id": "",
    "payment_methods": [
        "GOOGLE_PAY",
       "AMEX"
    ],
    "shipping_enabled": false,
    "send_mms_invoice": true,
    "attach_invoice": true,
    "invoice_url": "https://upload.wikimedia.org/wikipedia/commons/a/a8/CCU_Logo.jpeg",
    "send_mms_receipt": false,
    "attach_receipt": true,
    "receipt_file_type": "pdf",
    "expiry_date": "",
    "response_url": "https://google.com",
    "redirect_url": "https://google.com",
    "cancel_url": "https://google.com",
    "created_at": "2020-02-18T06:53:07.000Z",
    "modified_at": "2020-02-19T09:02:46.000Z"
}
{
    "is_valid": false,
    "error_field": "transaction_id",
    "error_message": "transaction_id is not valid"
}
{
     "message": "Forbidden"
}

Request Samples
Loading...
Get a Payment Request detail

You can fetch a single payment request by using the GET method with a transaction_id in the route parameter. If you choose to get multiple payment requests detail instead of single payment request detail, you can filled in query string parameters below as options.

Query Description
start_date

 

string

Start search for payment request from the date entered into this parameter. The format is "YYYY-MM-DD"

end_date

required with condition

string

You need to specify the end_date if you specify the start_date. It use the same format of "YYYY-MM-DD"

page

 

number

Select the payment request (default value 1).

limit

 

number

Limit the amount of items fetched from payment request. The default value is 10

keyword

 

string

Search for a payment request that has the specified keyword in email, mobile number or reference number

Required Header:

  • Authorization
Request URL  
https://test.mobipaid.io/v2/payment-requests/{transaction_id}
Examples
curl -X GET https://test.mobipaid.io/v2/payment-requests/{transaction_id} \
--header "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
import requests

url = "https://test.mobipaid.io/v2/payment-requests?page=5&limit=1"

payload = {}
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("GET", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
  'method': 'GET',
  'url': 'https://test.mobipaid.io/v2/payment-requests?page=5&limit=1',
  'headers': {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
  }
};
request(options, function (error, response) { 
  if (error) throw new Error(error);
  console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/payment-requests?page=5&limit=1",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"

url = URI("https://test.mobipaid.io/v2/payment-requests?page=5&limit=1")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"

response = https.request(request)
puts response.read_body

Result Format
{
  "limit": "1", 
  "page": "1", 
  "page_count": 84, 
  "total_count": 84, 
  "transactions": [
    {
      "amount": 739.88, 
      "attach_receipt_on_email": false, 
      "chargeback": [], 
      "created_at": "2020-01-30T10:53:45.000Z", 
      "currency": "EUR", 
      "email": "saad.jamalkhan@gmail.com", 
      "expiration_date": "2020-02-06T10:53:00.000Z", 
      "fixed_amount": true, 
      "invoice_url": null, 
      "merchant_phone_number": "+19196894607", 
      "mobile_number": "+23059418021", 
      "modified_at": null, 
      "payment_date": "2020-01-30T10:56:01.000Z", 
      "payment_id": "8ac7a4a26ff5c0c4016ff617ed2128fa", 
      "payment_methods": ["AMEX"], 
      "payment_type": "DB", 
      "receipt_file_type": null, 
      "reference_number": "44923", 
      "refund": [], 
      "request_methods": [
        "SMS", 
        "EMAIL"
      ], 
      "reversal": [], 
      "send_mms_receipt": false, 
      "shipping_information": false, 
      "status": "success", 
      "status_description": "", 
      "tax_id": "PKZMknlE", 
      "transaction_id": "145429OO", 
      "url": "https://s.mpaid.us/37cfJ"
    }
  ]
}
{
    "message": "Forbidden"
}

Request Samples
Loading...
Delete a Payment Request

You can delete a single payment request by using the DELETE method with a transaction_id in the route parameter.

Please note that you will not be allowed to delete a transaction that already has a payment history.

Required Header:

  • Authorization
Request URL  
https://test.mobipaid.io/v2/payment-requests/{transaction_id}
Examples
curl -X DELETE https://test.mobipaid.io/v2/payment-requests/{transaction_id} \
--header "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
import requests

url = "https://test.mobipaid.io/v2/payment-requests/2116376OO"

payload  = {}
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_live_9Au2ABAwToHDfMf1kiwr'
}

response = requests.request("DELETE", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
  'method': 'DELETE',
  'url': 'https://test.mobipaid.io/v2/payment-requests/2116376OO',
  'headers': {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer mp_live_9Au2ABAwToHDfMf1kiwr'
  }
};
request(options, function (error, response) { 
  if (error) throw new Error(error);
  console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/payment-requests/2116376OO",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "DELETE",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_live_9Au2ABAwToHDfMf1kiwr"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"

url = URI("https://test.mobipaid.io/v2/payment-requests/2116376OO")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Delete.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_live_9Au2ABAwToHDfMf1kiwr"

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "transaction_id": "145493OO"
}
{
    "is_valid": false,
    "error_field": "transaction_id",
    "error_message": "Transaction is not found.",
    "result": "failed"
}

Request Samples
Loading...
Payment Response

The payment response is sent via the payment response URL that you provided in your payment request.We send a JSON response in a POST parameter called response.On your payment response provided URL you will need to check for a post parameter called response and read the JSON payload contained within the post variable.

Two possible result codes of NOK for failure in the payment attempt and ACK for a successful payment.

Sample payment response

response {
    "result": "ACK",
    "token": "9b6352ab516a043cd33cf65cf8210af35bd4d3c9",
    "transaction_id": "211PO",
    "payment_id": "8ac7a4a074726760017472b283ce070f",
    "amount": "50.33",
    "currency": "USD",
    "currency_symbol": "$",
    "result_code": "000.100.110",
    "result_description": "Request successfully processed in 'Merchant in Integrator Test Mode'",
    "additional_info_text": {
        "Type": "baju baru"
    },
    "additional_info_dropdown": {
        "Size": "M"
    },
    "cart_items": "[{\"sku\":\"123\",\"name\":\"Blue Shirt XL\",\"qty\":1,\"unit_price\":11.2},{\"sku\":\"456\",\"name\":\"Black Short Pant XL\",\"qty\":2,\"unit_price\":22.4}]"
}
Payment History

Fetch your payment history from Mobipaid in order to show how many payments have been done through our application.

Our payment history API support fetching payment history and refund a paid transaction

Get Payment History

You can get a list of payment history using our GET method.

Here are the available query string parameters to help you fetch the right payment history:

Query Description
start_date

 

string

Start search for payment history from the date entered into this parameter. The format is "YYYY-MM-DD"

end_date

required with condition

string

You need to specify the end_date if you specify the start_date. It use the same format of "YYYY-MM-DD"

page

 

number

Select the payment history

limit

 

number

Limit the amount of items fetched from payment history. The default value is 10

keywords

 

string

Search for a payment history that has the specified keyword in email, mobile number or reference number

user_id string
Search for a payment history that has the specified by user id

 

Request URL  
https://test.mobipaid.io/v2/payments?{optional_parameter}
Examples
curl -X GET https://test.mobipaid.io/v2/payments?{optional parameters here} \
--header "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
import requests

url = "https://test.mobipaid.io/v2/payments?limit=5&page=1"

payload = {}
headers = {
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0',
  'Content-Type': 'application/json'
}

response = requests.request("GET", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
  'method': 'GET',
  'url': 'https://test.mobipaid.io/v2/payments?limit=5&page=1',
  'headers': {
    'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0',
    'Content-Type': 'application/json'
  }
};
request(options, function (error, response) { 
  if (error) throw new Error(error);
  console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/payments?limit=5&page=1",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0",
    "Content-Type: application/json"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"

url = URI("https://test.mobipaid.io/v2/payments?limit=5&page=1")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
request["Content-Type"] = "application/json"

response = https.request(request)
puts response.read_body

Result Format
{
    "payments": [
        {
            "payment_id": "8ac7a4a2735bed2301736a2e1cd40318",
            "reference_payment_id": null,
            "transaction_id": "1130OO",
            "transaction_type": "once-off",
            "reference_number": "123",
            "mobile_number": "+12345678901",
            "email": "email@domain.com",
            "amount": 1500.12,
            "currency": "ZAR",
            "payment_type": "CC.PA",
            "payment_date": "2020-07-20T03:04:33.000Z",
            "status": "success",
            "result_description": "Request successfully processed in 'Merchant in Integrator Test Mode'",
            "payment_url": "https://s.mpaid.us/sMBaf",
            "transaction_date": "2020-07-20T03:03:54.000Z",
            "request_detail": {
                "tip_amount": 0,
                "tax_percentage": "0.00 %",
                "tax_amount": 0,
                "additional_info": {},
                "additional_info_text": {},
                "additional_info_dropdown": {},
                "cart_items": {}
            },
           "user_id": 18
        },
        {
            "payment_id": "8ac7a4a1730e6e3e017313846dd54eeb",
            "reference_payment_id": null,
            "transaction_id": "11PO",
            "transaction_type": "pos_payment",
            "reference_number": "MP1",
            "mobile_number": null,
            "email": null,
            "amount": 50.33,
            "currency": "EUR",
            "payment_type": "CC.DB",
            "payment_date": "2020-07-03T07:11:52.000Z",
            "status": "failed",
            "result_description": "Invalid payment data. You are not configured for this currency or sub type (country or brand)",
            "payment_url": "https://sandbox-pay.mobipaid.com/pos_link/GpWv30S-OqDAtU3tOjO6NQ",
            "transaction_date": "2020-04-03T06:21:44.000Z",
            "request_detail": {
                "tip_amount": 0,
                "tax_percentage": "0.00 %",
                "tax_amount": 0,
                "additional_info": {},
                "additional_info_text": {
                    "text": "asd"
                },
                "additional_info_dropdown": {
                    "size": "S"
                },
                "cart_items": [
                    {
                        "sku": "-",
                        "name": "Blue Shirt XL",
                        "qty": 3,
                        "unit_price": 2
                    },
                    {
                        "sku": "456",
                        "name": "Black Short Pant XL",
                        "qty": 2,
                        "unit_price": 22.4
                    }
                ]
            }
        },
       "user_id": 18
    ],
    "page": 1,
    "limit": 2,
    "start_date": "2020-07-01",
    "end_date": "2020-08-30",
    "page_count": 3,
    "total_count": 5
}
{
    "message": "Forbidden"
}

Request Samples
Loading...
Get Payment History detail

Fetch a single payment history from Mobipaid

You can use the same GET method like in Payment History, but you have to add payment_id in the route parameter.

Request URL  
https://test.mobipaid.io/v2/payments/{payment_id}
Examples
curl -X GET https://test.mobipaid.io/v2/payments/{payment_id} \
--header "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
import requests

url = "https://test.mobipaid.io/v2/payments/8ac7a4a26ff5c0c4016ff617ed2128fa99999999"

payload = {}
headers = {
  'Content-Type': ' application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("GET", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
  'method': 'GET',
  'url': 'https://test.mobipaid.io/v2/payments/8ac7a4a26ff5c0c4016ff617ed2128fa99999999',
  'headers': {
    'Content-Type': ' application/json',
    'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
  }
};
request(options, function (error, response) { 
  if (error) throw new Error(error);
  console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/payments/8ac7a4a26ff5c0c4016ff617ed2128fa99999999",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "Content-Type:  application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"

url = URI("https://test.mobipaid.io/v2/payments/8ac7a4a26ff5c0c4016ff617ed2128fa99999999")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Content-Type"] = " application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"

response = https.request(request)
puts response.read_body

Result Format
{
    "payment": {
        "payment_id": "8ac7a4a1730e6e3e017313846dd54eeb",
        "reference_payment_id": null,
        "transaction_id": "11PO",
        "transaction_type": "pos_payment",
        "reference_number": "MP1",
        "mobile_number": null,
        "email": null,
        "amount": 50.33,
        "currency": "EUR",
        "payment_type": "CC.DB",
        "payment_date": "2020-07-03T07:11:52.000Z",
        "status": "failed",
        "result_description": "Invalid payment data. You are not configured for this currency or sub type (country or brand)",
        "payment_url": "https://sandbox-pay.mobipaid.com/pos_link/GpWv30S-OqDAtU3tOjO6NQ",
        "transaction_date": "2020-04-03T06:21:44.000Z",
        "request_detail": {
            "tip_amount": 0,
            "tax_percentage": "0.00 %",
            "tax_amount": 0,
            "additional_info": {},
            "additional_info_text": {
                "text": "asd"
            },
            "additional_info_dropdown": {
                "size": "S"
            },
            "cart_items": [
                {
                    "sku": "-",
                    "name": "Blue Shirt XL",
                    "qty": 3,
                    "unit_price": 2
                },
                {
                    "sku": "456",
                    "name": "Black Short Pant XL",
                    "qty": 2,
                    "unit_price": 22.4
                }
            ]
        }
    }
}
{
"message": "Your Payment history data is not found",
"result": "failed"
}
{
    "message": "Forbidden"
}

Request Samples
Loading...
Refund

Refund a paid payment history from Mobipaid. You have to include the payment_id of the payment history you want to refund.

Body Params
Field Description
amount

required

number

The amount to be refunded to the customer

email

string

A refund receipt will be send to this email address if you add it.

mobile_number

string

A refund receipt will be send to this mobile number if you add it.

Request URL  
https://test.mobipaid.io/v2/refunds/{unique_id}
Request Body
{
"email": "example@example.com",
"amount": 1,
"mobile_number": "+12345678"
}

Examples
curl -X POST https://test.mobipaid.io/v2/refunds/{payment_id} \
--header "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
import requests

url = "https://test.mobipaid.io/v2/refunds"

payload = "{\n\"email\": \"example@example.com\",\n\"amount\": 1,\n\"mobile_number\": \"+12345678\"\n}\n\n"
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://test.mobipaid.io/v2/refunds',
  'headers': {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
  },
  body: JSON.stringify({"email":"example@example.com","amount":1,"mobile_number":"+12345678"})

};
request(options, function (error, response) { 
  if (error) throw new Error(error);
  console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/refunds",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS =>"{\n\"email\": \"example@example.com\",\n\"amount\": 1,\n\"mobile_number\": \"+12345678\"\n}\n\n",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"

url = URI("https://test.mobipaid.io/v2/refunds")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
request.body = "{\n\"email\": \"example@example.com\",\n\"amount\": 1,\n\"mobile_number\": \"+12345678\"\n}\n\n"

response = https.request(request)
puts response.read_body

Result Format
{
  "amount": 45, 
  "balance": 31, 
  "currency": "ZAR", 
  "email": "example@example.com", 
  "mobile_number": "", 
  "payment_id": "8ac7a49f70664e4f01706677b1e64a2e", 
  "ref_number": "000211582016283", 
  "refund_date": "2020-02-21T06:38:05.000Z", 
  "refunded_amount": 1, 
  "shipping_information": true, 
  "status": "refund", 
  "transaction_id": 495, 
  "transaction_type": "once-off"
}
{
    "result": "failed",
    "message": "Payment is not found."
}
{
    "is_valid": false,
    "error_field": "amount",
    "error_message": "amount is required.",
    "result": "failed"
}

Request Samples
Loading...
Capture

Capture a pre-authorization payment. You have to include the payment_id of the payment history you want to capture.

Body Params
Field Description
amount

required

number

The amount to be captured, cannot more than the actual payment.

Request URL  
https://test.mobipaid.io/v2/captures/{payment_id}
Request Body
{
    "amount": 10
}

Examples
curl -X POST https://test.mobipaid.io/v2/captures/8ac7a49f7297dc2701729954fc4c1f71 \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0" \
--data '{
    "amount": 10
}'
import requests
import json

url = "https://test.mobipaid.io/v2/captures/8ac7a49f7297dc2701729954fc4c1f71"

payload = json.dumps( {
    "amount": 10
} )
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
    'method': 'POST',
    'url': 'https://test.mobipaid.io/v2/captures/8ac7a49f7297dc2701729954fc4c1f71',
    'headers': {
        'Content-Type': 'application/json',
        'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
    },
    body: JSON.stringify({
        "amount": 10
    })

};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

$data = array(
    "amount" => 10
);
$data = json_encode($data);

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/captures/8ac7a49f7297dc2701729954fc4c1f71",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => $data,
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require 'json'

url = URI("https://test.mobipaid.io/v2/captures/8ac7a49f7297dc2701729954fc4c1f71")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
request.body = {
    amount: 10
}.to_json

response = https.request(request)
puts response.read_body

Result Format
{
    "transaction_type": "once-off",
    "payment_id": "8ac7a4a07297e42e01729955d6f40fa2",
    "transaction_id": "171OO",
    "captured_amount": 10,
    "amount": 1500.12,
    "balance": 10,
    "currency": "ZAR",
    "ref_number": "123",
    "shipping_information": true,
    "status": "capture",
    "capture_date": "2020-06-09T13:47:19.000Z"
}
{
    "result": "failed",
    "message": "Payment is not found."
}

Request Samples
Loading...
Cancel a subscription

Cancel a subscription that is already paid in the payment history with type scheduled. You have to include the payment_id of the scheduled payment in the payment history in order to cancel it.

Request URL  
https://live.mobipaid.io/v2/payments/subscription/{payment_id}
Examples
curl -X DELETE https://live.mobipaid.io/v2/payments/subscription/{payment_id} \
--header "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
import requests
import json

url = "https://live.mobipaid.io/v2/payments/subscription/8ac7a49f7297dc2701729954fc4c1f71"

payload = {}
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_A83ucDEekfzqOATsxfrj'
}

response = requests.request("DELETE", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "DELETE",
    url: "https://live.mobipaid.io/v2/payments/subscription/8ac7a4a07532805d017540b10b420dbd",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
    },
};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://live.mobipaid.io/v2/payments/subscription/8ac7a4a07532805d017540b10b420dbd",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "DELETE",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://live.mobipaid.io/v2/payments/subscription/8ac7a4a07532805d017540b10b420dbd")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Delete.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"

response = https.request(request)
puts response.read_body

Result Format
{
    "transaction_type": "scheduled",
    "payment_id": "8ac7a4a2753280600175404c232c4189",
    "email": "whibi9999@gmail.com",
    "mobile_number": "+6282115888911",
    "amount": 56,
    "currency": "ZAR",
    "ref_number": "ref001",
    "status": "subscription_ended"
}
{
    "result": "failed",
    "message": "Payment is not found."
}

Request Samples
Loading...
Reversal

Reverse a paid payment. You have to include the payment_id of the specific payment you want reversed.

Body Params

Field Description
email

 

string

A reversal receipt will be sent to this email address if you add it.

mobile_number

 

string

A reversal receipt will be sent to this mobile number if you add it.

Request URL  
https://test.mobipaid.io/v2/reversal/{payment_id}
Request Body
{
       "email": "example@example.com",
       "mobile_number": "+12345678"
}

Examples
curl -X POST https://test.mobipaid.io/v2/reversal/8ac7a49f7297dc2701729954fc4c1f71 \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_A83ucDEekfzqOATsxfrj" \
--data '{
    "email" : "example@example.com",
    "mobile_number: "+12345678"
}'
import requests

url = "https://test.mobipaid.io/v2/reversal/{payment_id}"

payload = "{\n\"email\": \"example@example.com\",\n\"mobile_number\": \"+12345678\"\n}\n\n"
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://test.mobipaid.io/v2/reversal/{payment_id}',
  'headers': {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
  },
  body: JSON.stringify({"email":"example@example.com","mobile_number":"+12345678"})

};
request(options, function (error, response) { 
  if (error) throw new Error(error);
  console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/reversal/{payment_id}",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS =>"{\n\"email\": \"example@example.com\",\n\"mobile_number\": \"+12345678\"\n}\n\n",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"

url = URI("https://test.mobipaid.io/v2/reversal/{payment_id}")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
request.body = "{\n\"email\": \"example@example.com\",\n\"mobile_number\": \"+12345678\"\n}\n\n"

response = https.request(request)
puts response.read_body

Result Format
{
    "transaction_type": "once-off",
    "payment_id": "8ac7a4a27d452ef8017d45f8eb6a434b",
    "transaction_id": "2199496OO",
    "email": "example@example.com",
    "mobile_number": "+12345678",
    "reversal_amount": 4.98,
    "amount": 4.98,
    "balance": 0,
    "currency": "USD",
    "ref_number": "",
    "status": "reversal",
    "reversal_date": "2021-11-22T04:48:00.000Z"
}
{
    "result": "failed",
    "message": "Payment is not found."
}

Request Samples
Loading...
Message Templates

Create new message template for SMS and Email with this feature.

We support Credit Card, Direct Debit, Paypal, Apple Pay, Google Pay, Nedbank, etc. With mobipaid wallet in place, customer can pay quickly with payment options that has been saved.

You can create message template based on transaction type.

Create a Message Template

Create a new message template for the merchant.

Body Params
Field Description
template_name

 

string

Message template name. Example : "Once-off payment request template".

transaction_type

 

string

The transaction type which message template belongs to. Can only be filled with "once-off" or "scheduled".

email_subject

 

string

The subject of message template. For example : "Payment due to Mad Decent".

email_content

 

string

The content of email message template.

sms_content

 

string

The content of SMS message template.

default

 

boolean

Use "true" if you want to set this message template as default once-off/scheduled message template for this merchant.

global_template

 

boolean

Use "true" if you want to set this message template available for other user under this merchant. Use "false" if you want message template can only be used by the owner.

Request URL  
https://live.mobipaid.io/v2/message-templates
Request Body
{
    "template_name": "Test Once Off Template",
    "transaction_type": "once-off",
    "email_subject": "Test Once Off",
    "email_content": "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content": "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default": true, "global_template": true }

Examples
curl -X POST https://live.mobipaid.io/v2/message-templates \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0" \
--data '{
    "template_name": "Test Once Off Template",
    "transaction_type": "once-off",
    "email_subject": "Test Once Off",
    "email_content": "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content": "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default": true, "global_template": true }'
import requests
import json

url = "https://live.mobipaid.io/v2/message-templates"

payload = json.dumps( {
    "template_name": "Test Once Off Template",
    "transaction_type": "once-off",
    "email_subject": "Test Once Off",
    "email_content": "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content": "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default": true, "global_template": true } ) headers = { 'Content-Type': 'application/json', 'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0' } response = requests.request("POST", url, headers=headers, data = payload) print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "POST",
    url: "https://live.mobipaid.io/v2/message-templates",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
    },
    body: JSON.stringify({
        "template_name": "Test Once Off Template",
	    "transaction_type": "once-off",
	    "email_subject": "Test Once Off",
	    "email_content": "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content": "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default": true, "global_template": true }) }; request(options, function (error, response) { if (error) throw new Error(error); console.log(response.body); });
$curl = curl_init();

$data = array(
    "template_name" => "Test Once Off Template",
    "transaction_type" => "once-off",
    "email_subject" => "Test Once Off",
    "email_content" => "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content" => "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default" => true, "global_template" => true ); $data = json_encode($data); curl_setopt_array($curl, array( CURLOPT_URL => "https://live.mobipaid.io/v2/message-templates", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => $data, CURLOPT_HTTPHEADER => array( "Content-Type: application/json", "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0" ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://live.mobipaid.io/v2/message-templates")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
request.body = {
    "template_name": "Test Once Off Template",
    "transaction_type": "once-off",
    "email_subject": "Test Once Off",
    "email_content": "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content": "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default": true, "global_template": true }.to_json response = https.request(request) puts response.read_body

Result Format
{
    "result": "success",
    "template_id": "j4nJ74Xa",
    "template_name": "Test Once Off Template",
    "transaction_type": "once-off",
    "email_subject": "Test Once Off",
    "email_content": "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content": "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default": true, "global_template": true }
{
    "is_valid": false,
    "error_field": "transaction_type",
    "error_message": "Disallowed transaction_type found. Please check the documentation again."
}

Request Samples
Loading...
Edit a Message Template

You can update the message template by using the same parameters from create a message template, but you have to add template_id to the body.

Required Header:

  • Authorization
Request URL  
https://live.mobipaid.io/v2/message-templates
Request Body
{
    "template_id": "j4nJ74Xa",
    "template_name": "Test Once Off Template",
    "transaction_type": "once-off",
    "email_subject": "Test Once Off",
    "email_content": "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content": "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default": true, "global_template": true }

Examples
curl -X PUT https://live.mobipaid.io/v2/message-templates \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0" \
--data '{
    "template_id": "j4nJ74Xa",
    "template_name": "Test Once Off Template",
    "transaction_type": "once-off",
    "email_subject": "Test Once Off",
    "email_content": "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content": "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default": true, "global_template": true }'
import requests
import json

url = "https://live.mobipaid.io/v2/message-templates"

payload = json.dumps( {
    "template_id": "j4nJ74Xa",
    "template_name": "Test Once Off Template",
    "transaction_type": "once-off",
    "email_subject": "Test Once Off",
    "email_content": "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content": "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default": true, "global_template": true } ) headers = { 'Content-Type': 'application/json', 'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0' } response = requests.request("PUT", url, headers=headers, data = payload) print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "PUT",
    url: "https://live.mobipaid.io/v2/message-templates",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
    },
    body: JSON.stringify({
        "template_id": "j4nJ74Xa",
		"template_name": "Test Once Off Template",
		"transaction_type": "once-off",
		"email_subject": "Test Once Off",
		"email_content": "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content": "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default": true, "global_template": true }) }; request(options, function (error, response) { if (error) throw new Error(error); console.log(response.body); });
$curl = curl_init();

$data = array(
    "template_id" => "j4nJ74Xa",
	"template_name" => "Test Once Off Template",
	"transaction_type" => "once-off",
	"email_subject" => "Test Once Off",
	"email_content" => "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content" => "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default" => true, "global_template" => true ); $data = json_encode($data); curl_setopt_array($curl, array( CURLOPT_URL => "https://live.mobipaid.io/v2/message-templates", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "PUT", CURLOPT_POSTFIELDS => $data, CURLOPT_HTTPHEADER => array( "Content-Type: application/json", "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0" ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://live.mobipaid.io/v2/message-templates")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Put.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
request.body = {
    "template_id": "j4nJ74Xa",
	"template_name": "Test Once Off Template",
	"transaction_type": "once-off",
	"email_subject": "Test Once Off",
	"email_content": "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content": "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default": true, "global_template": true }.to_json response = https.request(request) puts response.read_body

Result Format
{
    "result": "success",
    "template_id": "j4nJ74Xa",
    "template_name": "Test Once Off Template",
    "transaction_type": "once-off",
    "email_subject": "Test Once Off",
    "email_content": "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content": "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default": true, "global_template": true }
{
    "is_valid": false,
    "error_field": "transaction_type",
    "error_message": "Disallowed transaction_type found. Please check the documentation again."
}

Request Samples
Loading...
Get a Message Template detail

You can fetch a message template detail by using GET method with a template_id in the route parameter

Required Header:

  • Authorization
Request URL  
https://live.mobipaid.io/v2/message-templates/{template_id}
Examples
curl -X GET https://test.mobipaid.io/v2/message-templates/{template_id} \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
import requests
import json

url = "https://live.mobipaid.io/v2/message-templates?page=5&limit=1"

payload = {}
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("GET", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "GET",
    url: "https://test.mobipaid.io/v2/message-templates?page=5&limit=1",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
    },
};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://live.mobipaid.io/v2/message-templates?page=5&limit=1",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://live.mobipaid.io/v2/message-templates?page=5&limit=1")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "limit": 10,
    "page": 1,
    "page_count": 1,
    "total_count": 1,
    "templates": [
        {
            "template_id": "j4nJ74Xa",
            "template_name": "Test Once Off Template",
            "transaction_type": "once-off",
            "email_subject": "Test Once Off",
            "email_content": "Hi, #email#
We want to inform that you have new payment request with the amount of #currency# #amount#.
Click #url# for auto redirected to payment page.", "sms_content": "Hi, we want to inform that you have new payment request with the amount of #currency# #amount#. Click #url# for auto redirected to payment page", "default": true, "global_template": true } ] }
{
    "is_valid": false,
    "error_field": "template_id",
    "error_message": "template_id is not valid"
}

Request Samples
Loading...
Delete a Message Template

You can delete a message template by using the DELETE method with a template_id in the route parameter.

Required Header:

  • Authorization
Request URL  
https://live.mobipaid.io/v2/message-templates/{template_id}
Examples
curl -X DELETE https://test.mobipaid.io/v2/message-templates/{template_id} \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
import requests
import json

url = "https://live.mobipaid.io/v2/message-templates/j4nJ74Xa"

payload = {}
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("DELETE", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "DELETE",
    url: "https://live.mobipaid.io/v2/message-templates/j4nJ74Xa",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
    },
};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://live.mobipaid.io/v2/message-templates/j4nJ74Xa",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "DELETE",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://live.mobipaid.io/v2/message-templates/j4nJ74Xa")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Delete.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "template_id": "j4nJ74Xa"
}
{
    "is_valid": false,
    "error_field": "template_id",
    "error_message": "template_id is not valid"
}

Request Samples
Loading...
Customers

You can get, create, edit and delete customer with this feature.

Create a Customer

Create a new customer for the merchant.

Body Params
Field Description
email

required with condition

string

Customer's email. You must fill either email or mobile_no field. Example : "john@doe.com".

mobile_no

required with condition

string

Customer's mobile number. You must fill either email or mobile_no field. Example : "+1234567890".

customer_group_id

 

string

Customer's group id. Example : "K1Z2J2Zl".

salutation

 

string

Customer's salutation. Example : "Mr.".

first_name

required

string

Customer's first name.

last_name

 

string

Customer's last name.

description

 

string

Customer's specific description.

country_iso

 

string

Customer's country ISO. Example : "DE".

state

 

string

Customer's state. Example : "DE".

city

 

string

Customer's city. Example : "Munchen".

postal_code

 

string

Customer's postal code. Example : "12345".

reference_number

 

string

Customer's reference number. Example : "12345".

additional_value

 

json

Customer's additional value. Example : {"age": 20, "gender": "male"}.

Request URL  
https://live.mobipaid.io/v2/customers
Request Body
{
    "email": "john@doe.com",
    "mobile_no": "+1234567890",
    "customer_group_id": "K1Z2J2Zl",
    "salutation": "Mr.",
    "first_name": "john",
    "last_name": "doe",
    "description": "customer john doe",
    "country_iso": "DE",
    "state": "Bayern",
    "city": "Munchen",
    "postal_code": "12345",
    "reference_number": "1234",
    "additional_value": {"age": 20, "gender": "male"}
}

Examples
curl -X POST https://live.mobipaid.io/v2/customers \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_A83ucDEekfzqOATsxfrj" \
--data '{
    "email": "john@doe.com",
    "mobile_no": "+1234567890",
    "customer_group_id": "K1Z2J2Zl",
    "salutation": "Mr.",
    "first_name": "john",
    "last_name": "doe",
    "description": "customer john doe",
    "country_iso": "DE",
    "state": "Bayern",
    "city": "Munchen",
    "postal_code": "12345",
    "reference_number": "1234",
    "additional_value": {"age": 20, "gender": "male"}
}'
import requests
import json

url = "https://live.mobipaid.io/v2/customers"

payload = json.dumps( {
    "email": "john@doe.com",
    "mobile_no": "+1234567890",
    "customer_group_id": "K1Z2J2Zl",
    "salutation": "Mr.",
    "first_name": "john",
    "last_name": "doe",
    "description": "customer john doe",
    "country_iso": "DE",
    "state": "Bayern",
    "city": "Munchen",
    "postal_code": "12345",
    "reference_number": "1234",
    "additional_value": {"age": 20, "gender": "male"}
} )
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "POST",
    url: "https://live.mobipaid.io/v2/customers",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
    },
    body: JSON.stringify({
        "email": "john@doe.com",
        "mobile_no": "+1234567890",
        "customer_group_id": "K1Z2J2Zl",
        "salutation": "Mr.",
        "first_name": "john",
        "last_name": "doe",
        "description": "customer john doe",
        "country_iso": "DE",
        "state": "Bayern",
        "city": "Munchen",
        "postal_code": "12345",
        "reference_number": "1234",
        "additional_value": {"age": 20, "gender": "male"}
    })

};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

$data = array(
    "email" => "john@doe.com",
    "mobile_no" => "+1234567890",
    "customer_group_id" => "K1Z2J2Zl",
    "salutation" => "Mr.",
    "first_name" => "john",
    "last_name" => "doe",
    "description" => "customer john doe",
    "country_iso" => "DE",
    "state" => "Bayern",
    "city" => "Munchen",
    "postal_code" => "12345",
    "reference_number" => "1234",
    "additional_value" => array("age" => 20, "gender" => "male")
);
$data = json_encode($data);

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://live.mobipaid.io/v2/customers",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => $data,
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://live.mobipaid.io/v2/customers")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
request.body = {
    "email": "john@doe.com",
    "mobile_no": "+1234567890",
    "customer_group_id": "K1Z2J2Zl",
    "salutation": "Mr.",
    "first_name": "john",
    "last_name": "doe",
    "description": "customer john doe",
    "country_iso": "DE",
    "state": "Bayern",
    "city": "Munchen",
    "postal_code": "12345",
    "reference_number": "1234",
    "additional_value": {"age": 20, "gender": "male"}
}.to_json

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "customer_id": "2BD8rYXr",
    "mobile_no": "+1234567890",
    "email": "john@doe.com",
    "salutation": "Mr.",
    "first_name": "john",
    "last_name": "doe",
    "customer_group_id": "K1Z2J2Zl",
    "description": "customer john doe",
    "country_iso": "DE",
    "country_name": "Germany",
    "state": "Bayern",
    "city": "Munchen",
    "postal_code": "12345",
    "reference_number": "1234",
    "additional_value": {
        "age": 20,
        "gender": "male"
    }
}
{
    "is_valid": false,
    "error_field": "mobile_no",
    "error_message": "mobile_no already exists.",
    "result": "failed"
}

Request Samples
Loading...
Edit a Customer

You can update the customer by using the same parameters from create a customer, but you have to add customer_id to the body.

Required Header:

  • Authorization
Request URL  
https://live.mobipaid.io/v2/customers
Request Body
{
    "customer_id": "j4nJ74Xa",
    "email": "john@doe.com",
    "mobile_no": "+1234567890",
    "customer_group_id": "K1Z2J2Zl",
    "salutation": "Mr.",
    "first_name": "john",
    "last_name": "doe",
    "description": "customer john doe",
    "country_iso": "DE",
    "state": "Bayern",
    "city": "Munchen",
    "postal_code": "12345",
    "reference_number": "1234",
    "additional_value": {"age": 20, "gender": "male"}
}

Examples
curl -X POST https://live.mobipaid.io/v2/customers \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_A83ucDEekfzqOATsxfrj" \
--data '{
    "customer_id": "j4nJ74Xa",
    "email": "john@doe.com",
    "mobile_no": "+1234567890",
    "customer_group_id": "K1Z2J2Zl",
    "salutation": "Mr.",
    "first_name": "john",
    "last_name": "doe",
    "description": "customer john doe",
    "country_iso": "DE",
    "state": "Bayern",
    "city": "Munchen",
    "postal_code": "12345",
    "reference_number": "1234",
    "additional_value": {"age": 20, "gender": "male"}
}'
import requests
import json

url = "https://live.mobipaid.io/v2/customers"

payload = json.dumps( {
    "customer_id": "j4nJ74Xa",
    "email": "john@doe.com",
    "mobile_no": "+1234567890",
    "customer_group_id": "K1Z2J2Zl",
    "salutation": "Mr.",
    "first_name": "john",
    "last_name": "doe",
    "description": "customer john doe",
    "country_iso": "DE",
    "state": "Bayern",
    "city": "Munchen",
    "postal_code": "12345",
    "reference_number": "1234",
    "additional_value": {"age": 20, "gender": "male"}
} )
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "POST",
    url: "https://live.mobipaid.io/v2/customers",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
    },
    body: JSON.stringify({
        "customer_id": "j4nJ74Xa",
        "email": "john@doe.com",
        "mobile_no": "+1234567890",
        "customer_group_id": "K1Z2J2Zl",
        "salutation": "Mr.",
        "first_name": "john",
        "last_name": "doe",
        "description": "customer john doe",
        "country_iso": "DE",
        "state": "Bayern",
        "city": "Munchen",
        "postal_code": "12345",
        "reference_number": "1234",
        "additional_value": {"age": 20, "gender": "male"}
    })

};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

$data = array(
    "customer_id" => "j4nJ74Xa",
    "email" => "john@doe.com",
    "mobile_no" => "+1234567890",
    "customer_group_id" => "K1Z2J2Zl",
    "salutation" => "Mr.",
    "first_name" => "john",
    "last_name" => "doe",
    "description" => "customer john doe",
    "country_iso" => "DE",
    "state" => "Bayern",
    "city" => "Munchen",
    "postal_code" => "12345",
    "reference_number" => "1234",
    "additional_value" => array("age" => 20, "gender" => "male")
);
$data = json_encode($data);

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://live.mobipaid.io/v2/customers",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => $data,
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://live.mobipaid.io/v2/customers")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
request.body = {
    "customer_id": "j4nJ74Xa",
    "email": "john@doe.com",
    "mobile_no": "+1234567890",
    "customer_group_id": "K1Z2J2Zl",
    "salutation": "Mr.",
    "first_name": "john",
    "last_name": "doe",
    "description": "customer john doe",
    "country_iso": "DE",
    "state": "Bayern",
    "city": "Munchen",
    "postal_code": "12345",
    "reference_number": "1234",
    "additional_value": {"age": 20, "gender": "male"}
}.to_json

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "customer_id": "2BD8rYXr",
    "mobile_no": "+1234567890",
    "email": "john@doe.com",
    "salutation": "Mr.",
    "first_name": "john",
    "last_name": "doe",
    "customer_group_id": "K1Z2J2Zl",
    "description": "customer john doe",
    "country_iso": "DE",
    "country_name": "Germany",
    "state": "Bayern",
    "city": "Munchen",
    "postal_code": "12345",
    "reference_number": "1234",
    "additional_value": {
        "age": 20,
        "gender": "male"
    }
}
{
    "is_valid": false,
    "error_field": "mobile_no",
    "error_message": "mobile_no already exists.",
    "result": "failed"
}

Request Samples
Loading...
Get a Customer detail

You can fetch a customer detail by using GET method with a customer_id in the route parameter

Required Header:

  • Authorization
Request URL  
https://live.mobipaid.io/v2/customers/{customer_id}
Examples
curl -X GET https://live.mobipaid.io/v2/customers/{customer_id} \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
import requests
import json

url = "https://live.mobipaid.io/v2/customers?page=5&limit=1"

payload = {}
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("GET", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "GET",
    url: "https://live.mobipaid.io/v2/customers?page=5&limit=1",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
    },
};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://live.mobipaid.io/v2/customers?page=5&limit=1",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://live.mobipaid.io/v2/customers?page=5&limit=1")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "limit": 10,
    "page": 1,
    "page_count": 1,
    "total_count": 1,
    "customers": [
        {
            "customer_id": "2BD8rYXr",
            "mobile_no": "+1234567890",
            "email": "john@doe.com",
            "salutation": "Mr.",
            "first_name": "john",
            "last_name": "doe",
            "customer_group_id": "K1Z2J2Zl",
            "description": "customer john doe",
            "country_iso": "DE",
            "country_name": "Germany",
            "state": "Bayern",
            "city": "Munchen",
            "postal_code": "12345",
            "reference_number": "1234",
            "additional_value": {
                "age": 20,
                "gender": "male"
            }
        }
    ]
}
{
    "is_valid": false,
    "error_field": "customer_id",
    "error_message": "customer_id is not found.",
    "result": "failed"
}

Request Samples
Loading...
Delete a Customer

You can delete a customer by using the DELETE method with a customer_id in the route parameter.

Required Header:

  • Authorization
Request URL  
https://live.mobipaid.io/v2/customers/{customer_id}
Examples
curl -X DELETE https://live.mobipaid.io/v2/customers/j4nJ74Xa \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
import requests
import json

url = "https://live.mobipaid.io/v2/customers/j4nJ74Xa"

payload = {}
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("DELETE", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "DELETE",
    url: "https://live.mobipaid.io/v2/customers/j4nJ74Xa",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
    },
};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://live.mobipaid.io/v2/customers/j4nJ74Xa",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "DELETE",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://live.mobipaid.io/v2/customers/j4nJ74Xa")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Delete.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "customer_id": "2BD8rYXr"
}
{
    "is_valid": false,
    "error_field": "customer_id",
    "error_message": "customer_id is not found.",
    "result": "failed"
}

Request Samples
Loading...
Customer Groups

You can get, create, edit and delete customer group with this feature.

Create a Customer Group

Create a new customer group for the customer.

Body Params
Field Description
group_name

required

string

Customer group's name.

description

 

string

Customer group's specific description.

Request URL  
https://live.mobipaid.io/v2/customers/groups
Request Body
{
    "group_name" : "Card",
    "description" : "group for card"
}

Examples
curl -X POST https://live.mobipaid.io/v2/customers/groups \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_A83ucDEekfzqOATsxfrj" \
--data '{
    "group_name" : "Card",
    "description" : "group for card"
}'
import requests
import json

url = "https://live.mobipaid.io/v2/customers/groups"

payload = json.dumps( {
    "group_name" : "Card",
    "description" : "group for card"
} )
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "POST",
    url: "https://live.mobipaid.io/v2/customers/groups",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
    },
    body: JSON.stringify({
        "group_name" : "Card",
        "description" : "group for card"
    })

};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

$data = array(
    "group_name" => "Card",
    "description" => "group for card"
);
$data = json_encode($data);

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://live.mobipaid.io/v2/customers/groups",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => $data,
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://live.mobipaid.io/v2/customers/groups")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
request.body = {
    "group_name" : "Card",
    "description" : "group for card"
}.to_json

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "customer_group_id": "K1Z2J2Zl",
    "group_name": "card",
    "description": "group for card"
}
{
    "is_valid": false,
    "error_field": "group_name",
    "error_message": "group_name already exists.",
    "result": "failed"
}

Request Samples
Loading...
Edit a Customer Group

You can update the customer group by using the same parameters from create a customer group, but you have to add customer_group_id to the body.

Required Header:

  • Authorization
Request URL  
https://live.mobipaid.io/v2/customers/groups
Request Body
{
    "customer_group_id" : "K1Z2J2Zl",
    "group_name" : "Card",
    "description" : "group for card"
}

Examples
curl -X POST https://live.mobipaid.io/v2/customers/groups \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_A83ucDEekfzqOATsxfrj" \
--data '{
    "customer_group_id" : "K1Z2J2Zl",
    "group_name" : "Card",
    "description" : "group for card"
}'
import requests
import json

url = "https://live.mobipaid.io/v2/customers/groups"

payload = json.dumps( {
    "customer_group_id" : "K1Z2J2Zl",
    "group_name" : "Card",
    "description" : "group for card"
} )
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "POST",
    url: "https://live.mobipaid.io/v2/customers/groups",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
    },
    body: JSON.stringify({
        "customer_group_id" : "K1Z2J2Zl",
        "group_name" : "Card",
        "description" : "group for card"
    })

};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

$data = array(
    "customer_group_id" => "K1Z2J2Zl",
    "group_name" => "Card",
    "description" => "group for card"
);
$data = json_encode($data);

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://live.mobipaid.io/v2/customers/groups",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => $data,
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://live.mobipaid.io/v2/customers/groups")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
request.body = {
    "customer_group_id" : "K1Z2J2Zl",
    "group_name" : "Card",
    "description" : "group for card"
}.to_json

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "customer_group_id": "K1Z2J2Zl",
    "group_name": "card",
    "description": "group for card"
}
{
    "is_valid": false,
    "error_field": "group_name",
    "error_message": "group_name already exists.",
    "result": "failed"
}

Request Samples
Loading...
Get a Customer Group detail

You can fetch a customer group detail by using GET method with a customer_group_id in the route parameter

Required Header:

  • Authorization
Request URL  
https://live.mobipaid.io/v2/customers/groups/{customer_group_id}
Examples
curl -X GET https://live.mobipaid.io/v2/customers/groups/{customer_group_id} \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
import requests
import json

url = "https://live.mobipaid.io/v2/customers/groups?page=5&limit=1"

payload = {}
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("GET", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "GET",
    url: "https://live.mobipaid.io/v2/customers/groups?page=5&limit=1",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
    },
};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://live.mobipaid.io/v2/customers/groups?page=5&limit=1",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://live.mobipaid.io/v2/customers/groups?page=5&limit=1")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "limit": 10,
    "page": 1,
    "page_count": 1,
    "total_count": 1,
    "customer_groups": [
        {
            "customer_group_id": "K1Z2J2Zl",
            "group_name": "card",
            "description": "group for card"
        }
    ]
}
{
    "is_valid": false,
    "error_field": "customer_group_id",
    "error_message": "customer_group_id is not found.",
    "result": "failed"
}

Request Samples
Loading...
Delete a Customer Group

You can delete a customer group by using the DELETE method with a customer_group_id in the route parameter.

Required Header:

  • Authorization
Request URL  
https://live.mobipaid.io/v2/customers/groups/{customer_group_id}
Examples
curl -X DELETE https://live.mobipaid.io/v2/customers/groups/K1Z2J2Zl \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
import requests
import json

url = "https://live.mobipaid.io/v2/customers/groups/K1Z2J2Zl"

payload = {}
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_test_w3Lwv3CZIZzye4cYxxr0'
}

response = requests.request("DELETE", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "DELETE",
    url: "https://live.mobipaid.io/v2/customers/groups/K1Z2J2Zl",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
    },
};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://live.mobipaid.io/v2/customers/groups/K1Z2J2Zl",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "DELETE",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://live.mobipaid.io/v2/customers/groups/K1Z2J2Zl")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Delete.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_test_w3Lwv3CZIZzye4cYxxr0"

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "customer_group_id": "K1Z2J2Zl"
}
{
    "is_valid": false,
    "error_field": "customer_group_id",
    "error_message": "customer_group_id is not found.",
    "result": "failed"
}

Request Samples
Loading...
Application Manager

The application management API provides api requests for your created applications in
developer portal along with merchant management functions.

To access this API, you need a special access key with the prefix mp_app_. You can get this
access key in your users_profile page in developer portal once you login. Authentication to
the API is performed via HTTP Bearer Auth. Provide your Access key as the bearer auth
value.

Get a list of applications

The get all apps route provides the developer with a list of all applications under the
developer identified by his/her access token. You will be able to retrieve a full list of
applications in the api route.

Request URL  
https://test.mobipaid.io/v2/app
Examples
GET https://test.mobipaid.io/v2/app \
-H "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
import requests

url = "https://test.mobipaid.io/v2/app"

payload = {}
headers = {
  'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzX'
}

response = requests.request("GET", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
  'method': 'GET',
  'url': 'https://test.mobipaid.io/v2/app',
  'headers': {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzX'
  }
};
request(options, function (error, response) { 
  if (error) throw new Error(error);
  console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/app",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"

url = URI("https://test.mobipaid.io/v2/app")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = "Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "apps": [
        {
            "app_id": "msFyZrmMczkAkED7oUPYD-ZALrTe02KIo2U8MzwtLV8-WFGJhB2G4lmB89dU",
            "user_id": 36,
            "app_status": "published",
            "app_name": "Test Published App",
            "app_description": "Test Published App Desc",
            "license_agreement_url": null,
            "privacy_policy_url": null,
            "logo_url": null
        },
        {
            "app_id": "y39B1ENNjOSkojYM18UW-fwSmFDBDRY3gCjzZIf-9Bcty1ecVPVwvNykcylT",
            "user_id": 36,
            "app_status": "draft",
            "app_name": "Test Draft",
            "app_description": "Test Draft Description",
            "license_agreement_url": null,
            "privacy_policy_url": null,
            "logo_url": "Xs1Z6nqAdv_20210602092407.jpg"
        }
    ]
}
{
    "message": "App access Key not found"
}

Request Samples
Loading...
Get application detail

Get the details of one app based on app_id, containing a list of merchants connected to it along with his/her access key to your applications.

Request URL  
https://test.mobipaid.io/v2/app/{app_id}
Examples
https://test.mobipaid.io/v2/app/{app_id} \
--header "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
import requests

url = "https://test.mobipaid.io/v2/app/{app_id}"

payload = {}
headers = {
  'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzX'
}

response = requests.request("GET", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
  'method': 'GET',
  'url': 'https://test.mobipaid.io/v2/app/{app_id}',
  'headers': {
    'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzX'
  }
};
request(options, function (error, response) { 
  if (error) throw new Error(error);
  console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/app/{app_id}",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"

url = URI("https://test.mobipaid.io/v2/app/{app_id}")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = "Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "app_id": "msFyZrmMczkAkED7oUPYD-ZALrTe02KIo2U8MzwtLV8-WFGJhB2G4lmB89dU",
    "token": "58116137",
    "merchants": [
        {
            "merchant_id": "BLDQVvnm",
            "name": "The dummy merchant please ignore",
            "phone_number": "+6281222324170",
            "address_line1": "Ancol Timur III / 41",
            "email": "merchant@gmail.com",
            "signatory_first_name": "First ",
            "signatory_last_name": "Last ",
            "access_key": "mp_dummy_zZOQWkesvf1iGlSeHLxR",
            "app_id": "msFyZrmMczkAkED7oUPYD-ZALrTe02KIo2U8MzwtLV8-WFGJhB2G4lmB89dU"
        }
    ]
}
{
    "message": "App access Key not found"
}

Request Samples
Loading...
Create a new application

Create a new application in the developer portal.

Body Params
Field Description
app_name

required

string

Application name must be provided

app_description

required

string

Brief description about the application created please provide
an accurate description of your application for your
customers. This must include all functionality.

app_logo

optional

string

Fill in with image url with extension .jpg/.jpeg/.png/.gif. The
maximum file size allowed is 500kB. We will scrape the logo
from the url provided.

license_agreement_url

optional

 

string

License agreement URL used by the created application if you
have specific license agreement requirements please provide
them for the merchant.

privacy_policy_url

optional

string

Privacy policy URL used by the created application. This is
required to be accepted by merchants. If no policy url is
specified the application will use mobipaid default Privacy
policy.

Request URL  
https://test.mobipaid.io/v2/app
Request Body
{
	"app_name" : "Test App Demo",
	"app_description" : "Description Test App Demo",
	"app_logo": "https://fakeurl.com/image-sample.png",
    "license_agreement_url": "https://www.google.com",
    "privacy_policy_url": "https://www.yahoo.com"
}

Examples
curl -X POST https://test.mobipaid.io/v2/app \
-H "Content-Type: application/json" \
-H "Authorization: Bearer app_mp_test_yEtHTVY2mjFySrV2ryHF" \
--data '{
	"app_name" : "Test App Demo",
	"app_description" : "Description Test App Demo",
	"app_logo": "https://fakeurl.com/image-sample.png",
    "license_agreement_url": "https://www.google.com",
    "privacy_policy_url": "https://www.yahoo.com"
}'
import requests
import json

url = "https://test.mobipaid.io/v2/app"

payload = json.dumps({
	"app_name" : "Test App Demo",
	"app_description" : "Description Test App Demo",
	"app_logo": "https://fakeurl.com/sample-image.png",
        "license_agreement_url": "https://www.google.com",
        "privacy_policy_url": "https://www.yahoo.com"
} )
headers = {
  'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzY'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
    'method': 'POST',
    'url': 'https://test.mobipaid.io/v2/app',
    'headers': {
        'Content-Type': 'application/json',
        'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzY'
    },
    body: JSON.stringify({
	"app_name" : "Test App Demo",
	"app_description" : "Description Test App Demo",
	"app_logo": "https://fakeurl.com/sample-image.png",
        "license_agreement_url": "https://www.google.com",
        "privacy_policy_url": "https://www.yahoo.com"
})

};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

$data = array(
	"app_name" => "Test App Demo",
	"app_description" => "Description Test App Demo",
	"app_logo" => "https://fakeurl.com/sample-image.png",
        "license_agreement_url" => "https://www.google.com",
        "privacy_policy_url" => "https://www.yahoo.com"
);
$data = json_encode($data);

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/app",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => $data,
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzY"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require 'json'

url = URI("https://test.mobipaid.io/v2/app")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer app_mp_test_05hd2V93RYW8MlhxdnzY"
request.body = {
	"app_name" : "Test App Demo",
	"app_description" : "Description Test App Demo",
	"app_logo": "https://fakeurl.com/sample-image.png",
        "license_agreement_url": "https://www.google.com",
        "privacy_policy_url": "https://www.yahoo.com"
}.to_json

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "app_id": "pfpGlPfw4ePdlb-VSWiqifWBES3Sf5hfecPihDoUPbeA6TEQ-FwjzTYiuDpt",
    "app_name": "Test App Demo",
    "app_status": "draft",
    "token": "38741548"
}
{
    "is_valid": false,
    "error_field": "app_logo",
    "error_message": "App Logo URL is not valid"
}

Request Samples
Loading...
Edit application

This request has the same body structure as the Create New Application endpoint. The difference is the addition of url parameter app_id this is the unique identifier for your application that you have created and require to be edited.

Request URL  
https://test.mobipaid.io/v2/app/{app_id}
Request Body
{
       "app_name" : "Test App Demo",
	"app_description" : "Description Test App Demo",
	"app_logo": "https://fakeurl.com/sample-image.png",
        "license_agreement_url": "https://www.google.com",
        "privacy_policy_url": "https://www.yahoo.com"
}

Examples
curl -X PUT https://test.mobipaid.io/v2/app/{app_id} \
-H "Content-Type: application/json" \
-H "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX" \
--data '{
	"app_description" : "Description Test App Demo",
	"app_logo": "https://fakeurl.com/sample-image.png",
        "license_agreement_url": "https://www.google.com",
        "privacy_policy_url": "https://www.yahoo.com"
}'
import requests
import json

url = "https://test.mobipaid.io/v2/app/{app_id}"

payload = json.dumps( {
        "app_name" : "Test App Demo"
	"app_description" : "Description Test App Demo",
	"app_logo": "https://fakeurl.com/sample-image.png",
        "license_agreement_url": "https://www.google.com",
        "privacy_policy_url": "https://www.yahoo.com"
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzX'
}

response = requests.request("PUT", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
    'method': 'PUT',
    'url': 'https://test.mobipaid.io/v2/app/{app_id}',
    'headers': {
        'Content-Type': 'application/json',
        'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzX'
    },
    body: JSON.stringify({
        "app_name": "Test App Demo",
	"app_description" : "Description Test App Demo",
	"app_logo": "https://fakeurl.com/sample-image.png",
        "license_agreement_url": "https://www.google.com",
        "privacy_policy_url": "https://www.yahoo.com"
})

};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

$data = array(
        "app_name" => "Test App Demo",
	"app_description" => "Description Test App Demo",
	"app_logo" => "https://fakeurl.com/sample-image.png",
        "license_agreement_url" => "https://www.google.com",
        "privacy_policy_url" => "https://www.yahoo.com"
);
$data = json_encode($data);

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/app/{app_id}",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "PUT",
  CURLOPT_POSTFIELDS => $data,
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require 'json'

url = URI("https://test.mobipaid.io/v2/app/{app_id}")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Put.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer app_mp_test_w3Lwv3CZIZzye4cYxxr0"
request.body = {
	"app_name" : "Test Demo Apps",
	"app_description" : "Test Demo Apps Description",
	"app_logo": "https://fakeurl.com/sample-image.png",
        "license_agreement_url": "https://www.google.com",
        "privacy_policy_url": "https://www.yahoo.com"
}.to_json

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "app_id": "cmOhiROUk5zcwC5PXUZZTH-p71jQzjBFMiArZB-lWPu2DVFjUG0QZgpicKSO",
    "app_name": "Test App Demo",
    "app_status": "draft",
    "token": "91404459"
}
{
    "message": "App access Key not found"
}

Request Samples
Loading...
Get your application status

This request provides application status given app_id in the url parameter. The available status is deleted, drafted, published, and suspended.

Draft - Status is not yet published on production developer is required to update the status from draft for production implementation.


Deleted - The application has been removed from the merchants , the application is no longer able to be accessed from merchants.


Published - The application is published for production from the developer.


Suspended - The application is suspended from usage , there is a temporary suspension placed on your application no merchants will be able to get access to your application or be able to use your application.

Request URL  
https://test.mobipaid.io/v2/app/status/{app_id}
Examples
curl -X GET https://test.mobipaid.io/v2/app/status/{app_id} \
--header "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
import requests

url = "https://test.mobipaid.io/v2/app/status/{app_id}"

payload = {}
headers = {
  'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzX'
}

response = requests.request("GET", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
  'method': 'GET',
  'url': 'https://test.mobipaid.io/v2/app/status/{app_id}',
  'headers': {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzX'
  }
};
request(options, function (error, response) { 
  if (error) throw new Error(error);
  console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/app/status/{app_id}",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "net/http"

url = URI("https://test.mobipaid.io/v2/app/status/{app_id}")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "app_id": "MBZVOR1rWlJwp85B-FAH3jXXztDVbS1AlhDWg6Z-OLGJ6IRSYDZxmeR2ZSHq",
    "app_status": "draft"
}
{
    "message": "App access Key not found"
}

Request Samples
Loading...
Edit application status

Modify status of application into Draft, Deleted, Published, and Suspended given the app_id in url parameter.

Draft - Status is not yet published on production developer is required to update the status from draft for production implementation.


Deleted - The application has been removed from the merchants , the application is no longer able to be accessed from merchants.


Published - The application is published for production from the developer.

Suspended - The application is suspended from usage , there is a temporary suspension placed on your application no merchants will be able to get access to your application or be able to use your application.

Request URL  
https://test.mobipaid.io/v2/app/status/{app_id}
Request Body
{
       "app_status" : "published"
}

Examples
curl -X PUT https://test.mobipaid.io/v2/app/status/{app_id} \
-H "Content-Type: application/json" \
-H "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX" \
--data '{
    "app_status": "published"
}'
import requests
import json

url = "https://test.mobipaid.io/v2/app/status/{app_id}"

payload = json.dumps( {
    "app_status": "published"
} )
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzX'
}

response = requests.request("PUT", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "PUT",
    url: "https://test.mobipaid.io/v2/app/status/{app_id}",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
    },
    body: JSON.stringify({
        app_status : "published"
    })

};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

$data = array(
      "app_status": "published"
);
$data = json_encode($data);

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/app/status/{app_id}",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "PUT",
  CURLOPT_POSTFIELDS => $data,
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://test.mobipaid.io/v2/app/status/{app_id}")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Put.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
request.body = {
    app_status : "published"
}.to_json

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "app_id": "kIJ99lL3I9tFLlcHPe-on2IMsnKUrlYcHN0CF0gSNrGSL-IdVtBg4rWmG82W",
    "app_status": "published"
}


Request Samples
Loading...
Invite a merchant to the application

This requests a return token that can be used by the merchant to connect to the application, by the given app_id in the url parameter.


Please keep in mind that the token will only be returned if the developer already has agreed to the eula in that specific application. Otherwise, the application can't access messages returned.

Request URL  
https://test.mobipaid.io/v2/app/{app_id}/merchants/invite
Request Body
{}

Examples
curl -X POST https://test.mobipaid.io/v2/app/{app_id}/merchants/invite \
-H "Content-Type: application/json" \
-H "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX" \
--data '{}'
import requests
import json

url = "https://test.mobipaid.io/v2/app/{app_id}/merchants/invite"

payload = json.dumps( {} )
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzX'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "POST",
    url: "https://test.mobipaid.io/v2/app/{app_id}/merchants/invite",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
    },
    body: JSON.stringify({})

};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

$data = array();
$data = json_encode($data);

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/app/{app_id}/merchants/invite",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => $data,
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://test.mobipaid.io/v2/app/{app_id}/merchants/invite")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
request.body = {}.to_json

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "app_id": "msFyZrmMczkAkED7oUPYD-ZALrTe02KIo2U8MzwtLV8-WFGJhB2G4lmB89dU",
    "token": "31873800"
}
{
    "error_message": "This application can't be accessed.",
    "result": "failed"
}

Request Samples
Loading...
Get merchant detail in the specific application

This request returns the details of the merchant connected to the application, given the app_id and merchant_id in the request.

Request URL  
https://test.mobipaid.io/v2/app/{app_id}/merchants/{merchant_id}
Examples
curl -X GET https://test.mobipaid.io/v2/app/{app_id}/merchants/{merchant_id} \
--header "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
import requests

url = "https://test.mobipaid.io/v2/app/{app_id}/merchants/{merchant_id}"

payload = {}
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzX'
}

response = requests.request("GET", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
  'method': 'GET',
  'url': 'https://test.mobipaid.io/v2/app/{app_id}/merchants/{merchant_id}',
  'headers': {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzX'
  }
};
request(options, function (error, response) { 
  if (error) throw new Error(error);
  console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/app/{app_id}/merchants/{merchant_id}",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"

url = URI("https://test.mobipaid.io/v2/app/{app_id}/merchants/{merchant_id}")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "app_id": "msFyZrmMczkAkED7oUPYD-ZALrTe02KIo2U8MzwtLV8-WFGJhB2G4lmB89dU",
    "token": "31873800",
    "merchants": [
        {
            "merchant_id": "BLDQVvnm",
            "name": "Dummy Merchant please ignore",
            "phone_number": "+6281222324170",
            "address_line1": "Ancol Timur III / 41",
            "email": "merchant@gmail.com",
            "signatory_first_name": "First ",
            "signatory_last_name": "Last",
            "access_key": "mp_dummy_zZOQWkesvf1iGlSeHLxR",
            "app_id": "msFyZrmMczkAkED7oUPYD-ZALrTe02KIo2U8MzwtLV8-WFGJhB2G4lmB89dU"
        }
    ]
}


Request Samples
Loading...
Remove a merchant from the application

Disconnect the merchant from application. It will disconnect automatically from developer's side and merchant's side, given the merchant_id and app_id in the url parameters.

Request URL  
https://test.mobipaid.io/v2/app/{app_id}/merchants/{merchant_id}
Examples
curl -X DELETE https://test.mobipaid.io/v2/app/{app_id}/merchants/{merchant_id} \
--header "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
import requests

url = "https://test.mobipaid.io/v2/app/{app_id}/merchants/{merchant_id}"

payload  = {}
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzX'
}

response = requests.request("DELETE", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require('request');
var options = {
  'method': 'DELETE',
  'url': 'https://test.mobipaid.io/v2/app/{app_id}/merchants/{merchant_id}',
  'headers': {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer app_mp_test_05hd2V93RYW8MlhxdnzX'
  }
};
request(options, function (error, response) { 
  if (error) throw new Error(error);
  console.log(response.body);
});
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://test.mobipaid.io/v2/app/{app_id}/merchants/{merchant_id}",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "DELETE",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"

url = URI("https://test.mobipaid.io/v2/app/{app_id}/merchants/{merchant_id}")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Delete.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer app_mp_test_05hd2V93RYW8MlhxdnzX"

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success"
}

Request Samples
Loading...
EMV QR Code
Generate EMV QR Code

Generate QR code links represent the EMV payload based on the EMVCo-Merchant-Presented-QR-specification document. The country code should be present in the URL param as iso3 country code format as represented in ISO 3166-1 standard.

Body Params
Field Description
payment_type

required

string

Represent the pos link payment method, only consists of two valid values : DB (Debit) or PA (Pre-authorization)

tip_amount

optional

number

The amount of tip you want to pay instead of the original amount. Example : 2.13

amount

required

number

The amount you want to pay via EMV payload. Example : 10.11

reference

optional

 

string

The identification code for your payment

currency

required

string

Three-letter currency code for payment based on ISO 4217 specification.

Request URL  
https://live.mobipaid.io/v2/emv/{country_code}
Request Body
{
    "payment_type": "DB",
    "tip_amount": 10.23,
    "amount": 0,
    "reference": "RED-SHIRT-123",
    "currency": "ZAR"
}

Examples
curl -X POST https://live.mobipaid.io/v2/emv/{country_code} \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mp_live_9Au2ABAwToHDfMf1kiwr" \
--data '{
    "payment_type": "DB",
    "tip_amount": 2.24,
    "amount": 15.00,
    "reference": "RED-SHIRT-123",
    "currency": "ZAR"
}'
import requests
import json

url = "https://live.mobipaid.io/v2/emv/{country_code}"

payload = json.dumps({
    "payment_type": "DB",
    "tip_amount": 2.24,
    "amount": 15.00,
    "reference": "RED-SHIRT-123",
    "currency": "ZAR"
})
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer mp_live_9Au2ABAwToHDfMf1kiwr'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
var request = require("request");

var options = {
    method: "POST",
    url: "https://live.mobipaid.io/v2/emv/{country_code}",
    headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer mp_live_9Au2ABAwToHDfMf1kiwr"
    },
    body: JSON.stringify({
    "payment_type": "DB",
    "tip_amount": 2.24,
    "amount": 15.00,
    "reference": "RED-SHIRT-123",
    "currency": "ZAR"
})

};
request(options, function (error, response) { 
    if (error) throw new Error(error);
    console.log(response.body);
});
$curl = curl_init();

$data = array(
    "payment_type" => "DB",
    "tip_amount" => 2.24,
    "amount" => 15.00,
    "reference" => "RED-SHIRT-123",
    "currency" => "ZAR"
);
$data = json_encode($data);

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://live.mobipaid.io/v2/emv/{country_code}",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => $data,
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer mp_live_9Au2ABAwToHDfMf1kiwr"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
require "uri"
require "net/http"
require "json"

url = URI("https://live.mobipaid.io/v2/emv/{country_code")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "Bearer mp_live_9Au2ABAwToHDfMf1kiwr"
request.body = {
    "payment_type": "DB",
    "tip_amount": 2.24,
    "amount": 15.00,
    "reference": "RED-SHIRT-123",
    "currency": "ZAR"
}.to_json

response = https.request(request)
puts response.read_body

Result Format
{
    "result": "success",
    "qrcode_link": "https://mp-qrcodes.s3.amazonaws.com/stage/pos_payment/EMV-U1JwInASoK.png",
    "qrcode_base64": "data:image/png;base64,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"
}

Request Samples
Loading...
User Account

Fetch your user account from Mobipaid.

Required Header:

  • Authorization