Create Order-Without Payment Pages or in Nigeria

This endpoint is also used to create an order on Intrapay

POST https://exchanger-api.fuspay.finance/api/v1/no-auth/PartnerP2P/CreateOrder/

If you have a payment page for collecting your end-user's phone number and network (mobile money regions) or you want to collect in NIGERIA; Please add "intrapay_merchant_id" and partner_id in the request body. For Nigeria, The virtual bank account is sent as a JSON response from the API

Note: The intrapay merchant id is different for each account (currency) created on Intrapay. You can find your intrapay merchant id at the bottom left AFTER YOU HAVE SETUP the wallet of that currency.

The merchant secret is also different per currency. Find your merchant secret at the partner mapping screen by clicking on your name on the partner list.

Once callback is received order appears on intrapay dashboard.

Headers

NameTypeDescription

Content-Type*

String

application/json

Authorization*

String

Authorization is a bearer token which is Partners public key

Request Body

NameTypeDescription

partner_order_id*

String

Id of order generated on partners' system

amount_to_collect*

String

amount seller or buy as listed

timestamp*

Number

Time order was created. unix or epoch time in milleseconds (GMT+0)

order_expiration*

String

the time to be elapsed before order becomes invalid. unix or epoch time in millseconds (GMT+0)

currency*

String

currency the buyer is paying the merchant with

partner_callback_url*

String

payment notification used by IntraPay to notify Partner System about the Payment status of the order

partner_redirect_url*

String

provided by partner. url to redirect partner's users

signature*

String

SHA-512 of request payload signed with both merchant and partner secret key(SK_merchant_xxx+SK_partner_xxx)

phone

String

The phone number of the sender. for Mobile Money only

mobile_money_network

String

This is the mobile money provider. eg MTN, VOD, ATM

intrapay_merchant_id*

String

The intrapay merchant id is found on your intrapay dashboard on your fiat tab.

partner_id*

String

this is the ID gotten from the partner onboard endpoint


//API Response 
{
message:"OK",
redirect_url:""
}




//Response sent to callback URL
{
  "status": "success",
  "messsage": "",
  "virtual_account": {
  "account_name": "",
    "bank_name": "",
    "account_number": ""
  },
  "order_details": {
  "status": "PENDING",
  "partner_order_id": "",
  "intrapay_order_reference": "",
 }

}

Example Request- Code

const request = require('request')
const options = {
  method: 'POST',
  url: 'http://localhost:5000/api/v1/no-auth/PartnerP2P/CreateOrder',
  headers: {
    'Content-Type': 'application/json',
    Authorization: 'Bearer pk_partner_xxxxxxxx'
  },
  body: {
    partner_order_id: 'my-server-order-id',
    amount_to_collect: '100',
    timestamp: 1693285902419,
    order_expiration: 1693285902419,
    currency: 'NGN', // GHS | KHS | NGN | UGX | ZAR
    intrapay_merchant_id: "",
    partner_id: "",
    partner_callback_url: 'https://xxx...',
    partner_redirect_url: 'https://example.com?status=success&order=my-server-order-id',
    signature: 'fe04ee69d4f9a93c71f3d1bbf37d49d541e5c4fb159c4a75924f398262e2af146d0e2e33b1379a9b57c641d822c410158e03b64faab34dc98d528bfa234f9dd3'
  },
  json: true
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

Last updated