Getting Started

Integration is seamless and easy. Integration to your platform can be done by using

  1. Simple HTML Forms
  2. Mobile / Server to server API
  3. Inline Payment new_releasesNEW
  4. Command API (Automate function on your account.)
  5. Query transaction responses

Know The Parameters

First, take a few minutes to familiarize yourself with the supported parameters required to complete your integration through our API.

Parameters Expected value Explanation
v_merchant_id (required)

Provided by the Merchant.

Your merchant ID is your unique account identifier.

In sandbox / development environment, simply use DEMO as your merchant id.
Sandbox / development environment gives you the opportunity to simulate payments (Approved and Declined transactions).

Once you have simulated transactions and ready to go LIVE. Change the DEMO used for sandbox / development to your LIVE merchant ID.
Your merchant id can be found on the left side of your dashboard. Your merchant ID are a set of numbers separated with an hypen (-) e.g 1234-0000

cur (optional)

Provided by the Merchant

Supported currency codes

NGN - Nigerian Naira
USD - US Dollar
EUR - Euro
GBP - British Pound
ZAR - South African Rand

This field is optional. If not provided, transaction will be initiated and processed in default currency of your VoguePay account.

In situations when a currency code is provided, and the provided country code differs from the VoguePay account currency. VoguePay conversion rates will be used for settlements.

merchant_ref (optional)

Provided by the merchant.

This identifier is recommened but yet remains optional.

Any value provided here, will be returned with the confirmation results. VoguePay does not use this value, it is used by the merchant to store any data he wishess to retrieve later with the transaction details.

memo (optional)

Provided by the Merchant.

This is the transaction summary or description

item_x Provided by the merchant.

The name of the product(item) being purchased.

(x) is a value starting from 1.

If there are more than 1 products, you can have item_1, item_2, item_3...

As shown in the Sample HTML Form below. Each item_x has a corresponding description_x and price_x

description_x Provided by the merchant.

The short description of the product being purchased.

(x) is a value starting from 1.

If there are more than 1 products(item), you can have multiple description to match each product(item)s specified description_1, description_2, description_3...

As shown in the Sample HTML Form below. Each item_x has a corresponding description_x and price_x

price_x Provided by the merchant.

The price of the product(item)s being purchased. x corresponds to the number in item_x and description_x.

(x) is a value starting from 1.

If there are more than 1 products(item), you can have multiple prices to match each product(item)s and description(s) specified e.g price_1, price_2, price_3...

As shown in the Sample HTML Form below. Each item_x has a corresponding item_x, description_x and price_x

developer_code (optional) Provided by the merchant.

A code unique to every developer. Using this code earns the developer a commission on every successful transaction made through any selected integration methods.

store_id (optional) Provided by the merchant.

A unique store identifier which identifies a particular store a transaction was made.

total (optional) Provided by the merchant

Total of all the prices_x (price_1 + price_2 + price_3...)

This optional field serves as a check for the submitted form. If included, this will be used instead of the sum of all the prices.

notify_url (optional) Provided by the merchant.

If provided, a notification is sent automatically to this notification URL immediately the status of a transaction is confirmed. This does not require redirecion.

A notification URL can also be set in the account settings (requires login).
Notable conditions;

  • If a notification url is provided in the account settings and notification URL is provided in the API data. The notification URL set in the account settings over rides the notification URL provided in the data sent to the API
  • When no notification URL is provided and no notification URL set in the account settings. No notification is sent to the notification url on transaction completion.

NB: This does not require a redirection to be triggered.

success_url (optional) Provided by the merchant.

If provided, buyers are automatically redirected to the success URL on completion of a successful transaction.
Notable conditions;

  • If a success url is provided in the account settings and success URL is provided in the API data. The success URL set in the account settings over rides the success URL provided in the data sent to the API
  • When no success URL is provided and no success URL is set in the account settings, buyers are automatically redirected to the URL from which the transaction originated. (Referral URL)

NB: This requires a redirection to be triggered.

fail_url (optional) Provided by the merchant

If provided, buyers are automatically redirected to the fail URL when a transaction is declined or not successful.
Notable conditions;

  • If a fail url is provided in the account settings and fail URL is provided in the API data. The fail URL set in the account settings over rides the fail URL provided in the data sent to the API
  • When no fail URL is provided and no fail URL is set in the account settings, buyers are automatically redirected to the URL from which the transaction originated. (Referral URL)

NB: This requires a redirection to be triggered.

Checkout Images

The image to use for submit button. You are free to use any image. We recommend that you use one of the VoguePay buttons from the urls listed below:



Button link - https://voguepay.com/images/buttons/buynow_blue.png



Button Link - https://voguepay.com/images/buttons/buynow_red.png



Button Link - https://voguepay.com/images/buttons/buynow_green.png



Button Link - https://voguepay.com/images/buttons/buynow_grey.png



Button Link - https://voguepay.com/images/buttons/checkout_blue.png



Button Link - https://voguepay.com/images/buttons/checkout_red.png



Button Link - https://voguepay.com/images/buttons/checkout_green.png



Button Link - https://voguepay.com/images/buttons/checkout_grey.png



Button Link - https://voguepay.com/images/buttons/donate_blue.png



Button Link - https://voguepay.com/images/buttons/donate_red.png



Button Link - https://voguepay.com/images/buttons/donate_green.png



Button Link - https://voguepay.com/images/buttons/donate_grey.png



Button Link - https://voguepay.com/images/buttons/make_payment_blue.png



Button Link - https://voguepay.com/images/buttons/make_payment_red.png



Button Link - https://voguepay.com/images/buttons/make_payment_green.png



Button Link - https://voguepay.com/images/buttons/make_payment_grey.png

Choosing An Integration Option

VoguePay integration options has been simplified and made seamless. It is just as simple as copying our sample codes and changing the required parameters to suit your needs.

new_releasesNEW Integrations can now be completed inline. This mean you do not have to redirect your buyers to our platform before your transactions are completed.

No worries! If you have previously integrated our API, our platform is backward compatible. Your redirections will work without any hassels.

Simple HTML Form

Integration is as simple as copying the HTML form below into your website.

Remember :

  • For sandbox / development, user DEMO as the merchant ID
  • Simply go live by changing the Merchant ID to the live merchant ID, which can be found on your dashboard when logged in.

To enable the inline payment option, include the VoguePay inline script anywhere on your page but above Inline Payment Script (2)

Inline Payment script (1)

<script src="//voguepay.com/js/voguepay.js"></script>

HTML Form 1

This form explains the usage of item_x, description_x and price_x explained in 'Accepted Parameters' section

<form id='payform' onsubmit='return false;' method='POST' action='https://voguepay.com/pay/'>
    <input type='hidden' name='v_merchant_id' value='qa331322179752' />
    <input type='hidden' name='merchant_ref' value='234-567-890' />
    <input type='hidden' name='memo' value='Bulk order from McAckney Web Shop' />
<input type='hidden' name='item_1' value='Face Cap' /> <input type='hidden' name='description_1' value='Blue Zizi facecap' /> <input type='hidden' name='price_1' value='2000' />
<input type='hidden' name='item_2' value='Laban T-shirt' /> <input type='hidden' name='description_2' value='Green XXL' /> <input type='hidden' name='price_2' value='3000' />
<input type='hidden' name='item_3' value='Black Noni Shoe' /> <input type='hidden' name='description_3' value='Size 42' /> <input type='hidden' name='price_3' value='8000' />
<input type='hidden' name='developer_code' value='pq7778ehh9YbZ' /> <input type='hidden' name='store_id' value='25' />
<input type='hidden' name='total' value='13000' /> <input type='image' src='http://voguepay.com/images/buttons/buynow_blue.png' alt='Submit' /> </form>

One more thing .... Include the script below on your page. This script helps to submit your form and completes the inline payment cycle.

Inline Payment Script (2)

Sumbit form for processing. Include the VoguePay inline script 2 below [voguepay] inline script 1.

When the form is submitted. The javacript below runs and submits your form while you are still on the same page. No redirections required.

NB: If you do not wish to use the inline payment options, simply do not include the javascript files in your codes.

<script>
    Voguepay.init({form:'payform'});
</script>
                                

Notifications With Simple HTML Forms

Sample HTML form 2

As explained above. Remember to include the VoguePay Inline Payment Script (1)

<form method='POST' id='payform' action='//voguepay.com/pay/' onsubmit='return false;'>
    <input type='hidden' name='v_merchant_id' value='qa331322179752' />
    <input type='hidden' name='merchant_ref' value='234-567-890' />
    <input type='hidden' name='memo' value='Bulk order from McAckney Web Shop' />

    <input type='hidden' name='notify_url' value='//www.mydomain.com/notification.php' />
    <input type='hidden' name='success_url' value='//www.mydomain.com/thank_you.html' />
    <input type='hidden' name='fail_url' value='//www.mydomain.com/failed.html' />

    <input type='hidden' name='developer_code' value='pq7778ehh9YbZ' />
    <input type='hidden' name='store_id' value='25' />

    ##Use notify url if you want a transaction response to be sent to the notify##
    <input type='hidden' name='notify_url' value='//www.mydomain.com/notification.php' />

    ##Success and fail URL are not required if integration method is inline.##
    ##These are to be uses if you are using the form redirect method.##
    <input type='hidden' name='success_url' value='//www.mydomain.com/thank_you.html' />
    <input type='hidden' name='fail_url' value='//www.mydomain.com/failed.html' />

    <input type='hidden' name='total' value='13000' />

    ##notification triggers for inline payments only##
    <input type='hidden' name='closed' value='closedFunction'>
    <input type='hidden' name='success' value='successFunction'>
    <input type='hidden' name='failed' value='failedFunction'>

    <input type='image' src='//voguepay.com/images/buttons/buynow_blue.png' alt='Submit' />
</form>
                            

Submit form using VoguePay Inline script 2

<script>
    Voguepay.init({form:'payform'});
</script>
                            

3 New fields are available to process notification / action triggers for inline payments

  1. closed : when defined, this allows you to perform further actions in the VoguePay Inline Script 3 when the iframe closes.
  2. success : when defined, this allows you to perform further actions in the VoguePay Inline Script 3 when the transaction performed is successful
  3. failed : when defined, this allows you to perform further actions in the VoguePay Inline Script 3 when the transaction performed is not successful

VoguePay Inline Payment Script (3)

<script>
    closedFunction=function() {
        alert('window closed');
    }

     successFunction=function(transaction_id) {
        alert('Transaction was successful, Ref: '+transaction_id)
    }

     failedFunction=function(transaction_id) {
         alert('Transaction was not successful, Ref: '+transaction_id)
    }
</script>
                            

JavaScript Samples

The script below submits the form fields specified, using the inline method to VoguePay.

Sample JS (1)

Here is a sample code that calls VoguePay and also handles the response.

<script src="//voguepay.com/js/voguepay.js"></script>

<script>
    closedFunction=function() {
        alert('window closed');
    }

     successFunction=function(transaction_id) {
        alert('Transaction was successful, Ref: '+transaction_id)
    }

     failedFunction=function(transaction_id) {
         alert('Transaction was not successful, Ref: '+transaction_id)
    }
</script>

 <script>
    function pay(item,price){
       //Initiate voguepay inline payment
        Voguepay.init({
            v_merchant_id: 'demo',
            total: price,
            notify_url:'http://domain.com/notification.php',
            cur: 'NGN',
            merchant_ref: 'ref123',
            memo:'Payment for '+item,
            recurrent: true,
            frequency: 10,
            developer_code: '5a61be72ab323',
            store_id:1,
            items: [
                {
                    name: "Item name 1",
                    description: "Description 1",
                    price: 500
                },
                {
                    name: "Item name 2",
                    description: "Description 2",
                    price: 1000
                }
            ],
           closed:closedFunction,
           success:successFunction,
           failed:failedFunction
       });
    }

 </script>

 <button type="button" onclick="pay('shirt',500)"> Pay for shirt </button>
 <button type="button" onclick="pay('shoe',10000)"> Pay for shoe </button>
                            

Javascript Inline Sample (2)

Loading VoguePay using javascript Onclick function

<script src="//voguepay.com/js/voguepay.js"></script>

<script>
    closedFunction=function() {
        alert('window closed');
    }

     successFunction=function(transaction_id) {
        alert('Transaction was successful, Ref: '+transaction_id)
    }

     failedFunction=function(transaction_id) {
         alert('Transaction was not successful, Ref: '+transaction_id)
    }
</script>

<button onclick="Voguepay.init( 
{v_merchant_id: 'demo',total: 2000,notify_url:'http://domain.com/notification.php',
loadText:'Custom load text',cur: 'NGN',
merchant_ref: 'ref123',memo:'Payment for books',recurrent: true,frequency: 10,
developer_code: '5a61be72ab323',store_id:1, 
items: [{ name: 'Item name 1',description: 'Description 1',price: '500'},
{name: 'Item name 2',description: 'Description 2',price: '1000' }],
closed:closedFunction,
success:successFunction,
failed:failedFunction})">Pay using onclick</button>

                                

Javascript Inline Sample (3)

Loading VoguePay using function call

NOTE: The function name (pay3) can be changed.

<script src="//voguepay.com/js/voguepay.js"></script>

<script>
    closedFunction=function() {
        alert('window closed');
    }

     successFunction=function(transaction_id) {
        alert('Transaction was successful, Ref: '+transaction_id)
    }

     failedFunction=function(transaction_id) {
         alert('Transaction was not successful, Ref: '+transaction_id)
    }
</script>
                                
  <script>
     function pay3() {
         Voguepay.init({
             v_merchant_id: 'demo',
             total: 1500,
             notify_url: 'http://domain.com/notification.php',
             cur: 'NGN',
             merchant_ref: 'ref123',
             memo: 'Payment for shirt',
             recurrent: true,
             frequency: 10,
             developer_code: '5a61be72ab323',
             store_id: 1,
             loadText:'Custom load text',
             items: [
                 {
                     name: "Item name 1",
                     description: "Description 1",
                     price: 500
                 },
                 {
                     name: "Item name 2",
                     description: "Description 2",
                     price: 1000
                 }
             ],
             closed:closedFunction,
             success:successFunction,
             failed:failedFunction
         });
     }
  </script>

  <button onclick="pay3()">Pay function call</button>

                                

Javascript Inline Sample (4)

Loading VoguePay on window load

<script src="//voguepay.com/js/voguepay.js"></script>

<script>
    closedFunction=function() {
        alert('window closed');
    }

     successFunction=function(transaction_id) {
        alert('Transaction was successful, Ref: '+transaction_id)
    }

     failedFunction=function(transaction_id) {
         alert('Transaction was not successful, Ref: '+transaction_id)
    }
</script>
                                
<script
    data-v_merchant_id="demo"
    data-total="1500"
    data-email="email"
    data-phone="phone"
    data-notify_url="http://domain.com/notification.php"
    data-cur="NGN"
    data-merchant_ref="ref123"
    data-memo="Payment for laptop"
    data-recurrent="true"
    data-frequency="10"
    data-developer_code="5a61be72ab323"
    data-store_id="1"
    data-items='[{"name": "Item name 1",
        "description": "Description 1", 
        "price": "500"},
        {"name": "Item name 2",
        "description": "Description 2",
        "price": "1000"
    }]'
    data-closed="closedFunction"
    data-success="successFunction"
    data-failed="failedFunction"
    data-loadText="Custom load text"
    src="//voguepay.com/js/voguepay.js">
</script>

                                

Mobile/Server-to-server API

To use VoguePay on mobile or via server-to-server connection, you can get a URL for payment by sending your merchant ID and other necessary parameters in the format:

Sample Request Url

 https://voguepay.com/?p=linkToken&v_merchant_id=demo&
 memo=Payment for laptop&total=1000&merchant_ref=ref123&
 notify_url=https://example.com/notification.php&
 success_url=https://example.com/success.php&
 fail_url=https://example.com/fail.php&developer_code=ddd&cur=NGN
                            

Sample Response Url

https://voguepay.com/pay/bnlink/1521822726-x0     
                            

You can either redirect your customers to the above sample response URL or you could load the URL without redirection using the sample inline javascript code below

<script src="//voguepay.com/js/voguepay.js"></script>

<script>
    closedFunction=function() {
        alert('window closed');
    }

     successFunction=function(transaction_id) {
        alert('Transaction was successful, Ref: '+transaction_id)
    }

     failedFunction=function(transaction_id) {
         alert('Transaction was not successful, Ref: '+transaction_id)
    }
</script>
                                
<script>
    Voguepay.link({
        url:'https://voguepay.com/pay/bnlink/1521822726-x0',
        loadText:'Custom load text',
        closed:closedFunction,
            success:successFunction,
            failed:failedFunction
    });
</script>

                            

Where

Parameters Sample Value Expected Value
v_merchant_id demo Merchant ID (Required)
memo Payment for laptop Transaction Memo (Required)
total 1000 Total Cost (Required)
merchant_ref ref123 Merchant Reference (Any value provided by merchant. Merchant value will be returned with the confirmation results from the confirmation api. VoguePay doesnt need this value, it is used by the merchant to store any data he wishess to retrieve later with the transaction details.)
notify_url //example.com/notification.php Url to send payment notification to.
success_url //example.com/success.php Url to send buyer back to if payment is successful.
success_url //example.com/success.php Url to send buyer back to if payment is successful.
developer_code ddd A code unique to every developer. Using this code earns the developer a commission on every successful transaction made through any selected integration methods.
cur NGN Currency code in which transaction would to be carried out.

For a successful request, the api returns a url. Visting the url brings up VogiuePay payment page that can be used for payment based on the parameters supplied. The returned URL is valid for up to 24 hrs.

For failed requests, one of the following is returned:

Response Code Implication
-1 Unable to process command
-3 Empty Merchant ID
-4 Memo is empty
-14 invalid merchant id
-100 No result

Command API

The command API allows you to directly perfom several actions on VoguePay from your application.

With command API, you can:

fetch: Query our database for a list of transaction ids which can subsequently be processed with the notification API.

withdraw: You can make withdrawals to one or several bank accounts.

pay: You can transfer money to other VoguePay members.

create: You can create voguepay accounts for your members.

The Command API works for server-to-server communication.

The Command API can be consumed with the secure url:

https://voguepay.com/api

The command API accepts json, xml, yaml or ini formated parameter via HTTP POST to https://voguepay.com/api. Your query should conform to the format specified below.

Fixed key / value pairs:

Key Value PHP Example
task fetch or pay or withdraw or create (Required) $field['task'] = 'fetch';
merchant Your VoguePay Merchant ID (Required) $field['merchant'] = '1234-5678';
ref Unique id for each request (Required) $field['ref'] = time().mt_rand(0,999999999);
hash Required Security code generated by concatenating the following and passing the result through a sha512 encryption
your command api token
task specified above
your voguepay email
ref specified above
$field['hash'] = hash('sha512',$command_api_token.$field['task'].$my_voguepay_email.$field['ref']);
list Used as a parent container for non-fixed key/value pairs where multiple requests are made in a single call See example files
id unique ID for each item in a list if multiple requests are made in a single call See example files
Key Value PHP Example
quantity Number of records to fetch (Optional) $field['quantity'] = 10;
status The status of the transactions to fetch(optional).
example: Approved or Pending or Failed
$field['status'] = 'Approved';
buyer The email of the buyer to be fetched(optional) $fetch['buyer'] = '[email protected]';
time Limits the result to only the transactions that occurred in the specified lenth of time(optional).
Measured in minutes
$api['time'] = 30;//transactions for the last 30 minutes
Key Value PHP Example
amount Amount to withdraw (Required) $field['amount'] = 150000.00;
bank_name Name of the bank to withdraw into (Required) $field['bank_name'] = 'Sample Bank PLC';
bank_acct_name Name of the account holder(Required) $field['bank_acct_name'] = 'Linda Drogba';
bank_account_number Account Number for the account(Required) $fetch['bank_account_number'] = '1000100010';
bank_currency Currency of the account(optional) $field['bank_currency'] = 'US Dollars';
bank_country Country of the account(optional) $field['bank_country'] = 'Nigeria';
bank_address Address of the bank branch(optional) $field['bank_address'] = '17 example street, Lagos State';
bank_swift Swift Code(optional) $field['bank_swift'] = '508664';
bank_iban Iban Number(optional) $field['bank_iban'] = '58415596258';
bank_sort Sort Code(optional) $field['bank_sort'] = '2081';
bank_routing Routing Number(optional) $field['bank_routing'] = '65678976';
Key Value PHP Example
amount Amount to pay (Required) $field['amount'] = 150000.00;
seller Email or username of the beneficiary (Required) $field['seller'] = '[email protected]';
memo Description of the transaction(Required) $field['memo'] = 'Payment of 3rd grade school fess for whitney Barlotelli';
Key Value PHP Example
username Username of the new account (Required) $field['username'] = 'johnny247';
password Password of the new account (Required) $field['password'] = 'gT5%43HGtXx4_?';
email Email of the new account (Required) $field['email'] = '[email protected]';
firstname Firstname of the new account (Required) $field['firstname'] = 'John';
lastname Lastname of the new account (Required) $field['lastname'] = 'Clinton';
phone Mobile phone of the new account (Required) $field['phone'] = '+2348011111111';
referrer Username or email of the referrer(Required) $field['referrer'] = 'my_username';
country Country of business domiciliation of the new account(Required) $field['country'] = 'NG';
Available country codes: NG, GB, AU, CA, FR, GH, PT, ZA, US, IS, IN, CH

Return values

Command API returns the result as key/pair values in the format that it receives them (json, xml, yaml or ini).

The fields returned as explained below.

Key Value PHP Example
id The original ID submitted for each item in a list of multiple items $out['id']
username Username of the merchant on voguepay is returned $out['username']
salt String used for calculating the returned hash code $out['salt']
hash Security code for verifying the authenticity of the result.
Generated by concatenating the following and passing the result through a sha512 encryption
your command api token
your voguepay email
salt specified above
$out['hash']
list Used as a parent container for status, response, values and description where multiple requests are made in a single call See example files
status OK for successful operations or
FAIL for unsuccessful operations
$out['status']
response OK = successful operation
X001 = Invalid Merchant ID
X002 = Invalid Reference
X003 = Invalid hash
X004 = Invalid task
X005 = Invalid Merchant ID
X006 = Invalid hash
C001 = Unauthorised access
C002 = Invalid Email
C003 = Invalid username
C004 = Invalid phone number
C005 = Invalid firstname
C006 = Invalid lastname
C007 = Invalid country
C008 = Unable to create member
C009 = Unable to create member
W001 = Invalid amount
W002 = Operation Failed.
W003 = Amount is below minimum allowed
W004 = Insufficient balance
W005 = Withdrawal failed
W006 = Withdrawal failed
P001 = Invalid amount
P002 = Operation Failed.
P003 = Seller and buyer are one and the same
P004 = Invalid beneficiary
P005 = Invalid memo
P006 = payment amount is below minimum allowed
P007 = payment amount exceeds maximum allowed
P008 = Insufficient balance for payment
P009 = Payment failed
P010 = Payment failed
P011 = Payment failed
WL000 = System error
WL001 = Invalid Parameters
WL002 = Validation Error
WL003 = Transaction Request Declined
WL004 = Currency is not allowed
WL3D = 3D Authorization required
$out['response']
values Comma separated transaction IDs $out['values']
description Description of the response $out['description']

Download sample PHP files for command API implementation below:

JSON Samples
CLICK HERE TO DOWNLOAD
XML Samples
CLICK HERE TO DOWNLOAD
YAML Samples
CLICK HERE TO DOWNLOAD
INI Samples
CLICK HERE TO DOWNLOAD

Notification/Order processing API

VoguePay sends a transaction id to the notification URL provided in your account for every transaction on that account.

To receive a transaction id on your success or failure URL, you must set Send Transaction ID to Success and Failure Return URL to Yes on your account preferences page.

The transaction ID is sent as a HTTP POST variable (transaction_id) e.g:
If your notification URL is //mydomain.com/n.php
then notification will be sent to :

//mydomain.com/n.php

You can retrieve it as a POST variable e.g $_POST['transaction_id'] for PHP.

You can confirm the status and details of a transaction anytime using our REST(full) API below:

//voguepay.com/

The api accepts parameters as a GET request. Below is a sample api call.

//voguepay.com/?v_transaction_id=11111&type=xml
                            

For demo transactions, use:

//voguepay.com/?v_transaction_id=11111&type=xml&demo=true
                            
Variable Acceptable Values Default Details
v_transaction_id transaction id The transaction id of the transaction to be queried. See sample code below on how to get the transaction id.
type xml, json xml Format for the expected data

Sample XML Response

<voguepay>

<merchant_id>qa331322179752</merchant_id>

<transaction_id>11111</transaction_id>

<email>[email protected]</email>

<total>500</total>

<total_paid_by_buyer>507.61</total_paid_by_buyer>

<total_credited_to_merchant>495.00</total_credited_to_merchant>

<extra_charges_by_merchant>0.00</extra_charges_by_merchant>

<merchant_ref>2f093e72</merchant_ref>

<memo>1000 SMS units at &#8358;1.20 each on www.bulksms.com</memo>

<status>Approved</status>

<date>2012-01-09 18:56:23</date>

<referrer>http://www.afrisoft.net/viewinvoice.php?id=2012</referrer>

<fund_maturity>2012-01-11</fund_maturity>

<cur>USD</cur>

</voguepay>
                            

Sample JSON Response

{
    "merchant_id":"qa331322179752",
    "transaction_id":"11111",
    "email":"[email protected]",
    "total":500,
    "total_paid_by_buyer":"507.61",
    "total_credited_to_merchant":"495.00",
    "extra_charges_by_merchant":"0.00",
    "merchant_ref":"2f093e72",
    "memo":"1000 SMS units at &amp;#8358;1.20 each on www.bulksms.com",
    "status":"Approved",
    "date":"2012-01-09 18:56:23",
    "referrer":"http://www.afrisoft.net/viewinvoice.php?id=2012",
    "fund_maturity":"2012-01-11",
    "cur":"USD"
}
                            

Explanation of Responses

Response Key Value
merchant_id Merchant ID Of The Seller
transaction_id Transaction ID of the transaction
email email address of buyer
total Total price of products being paid for
total_paid_by_buyer Total amount paid by buyer including any other charges
total_credited_to_merchant Total amount creditable to the merchant's wallet
extra_charges_by_merchant Extra charges placed on buyer by merchant such as taxes e.t.c
merchant_ref merchant_ref value sent with the html form by the merchant
memo Transaction memo that describes the transaction
status Approved or Pending or Failed or Disputed
date Date of transaction in the format yyyy-mm-dd hh:ii:ss e.g 2012-01-09 18:56:23
referrer The merchant page from which the transaction form was sent to VoguePay e.g http://www.afrisoft.net/viewinvoice.php?id=2012
fund_maturity The date that the merchant will be able to withdraw or spend the amount credited to his/her wallet as a result of this transaction
cur Currency in which transaction was executed

Test/Demo Accounts

While integrating VoguePay, you may need a test account. We have provided a simple solution to test your integration.

Use demo as your merchant ID in test environment.

Once "demo" is used as your merchant ID, you can use any email and password to make payment.

To simulate a Failed transaction, use [email protected] e.g: [email protected] or [email protected].

To simulate a Successful transaction, You may use your real email.

Test Card Details

Usage Value
To stimulate failed transactions Card NO: 5322 2222 2222 2222
name: Demo
Exp: 01/22
Cvv: 212
To stimulate successful transactions Card NO: 5111 1111 1111 1118
name: Demo
Exp: 05/22
Cvv: 100

The transaction ID will be sent to the notify_url parameter submitted by your form e.g:

<input type="hidden" name="notify_url" value="//www.mydomain.com/notification.php" />
                            

You may then call the notification/order processing API from there.

For demo transactions, use add demo=true to the notification API as shown below:

//voguepay.com/?v_transaction_id=11111&type=xml&demo=true