Fuspay
WebsiteSupportDemo Meeting
  • Overview
    • Welcome
  • API ONBOARDING
    • Introduction
    • Partner Onboarding
    • Regenerate Partner Keys
    • IP Check & Whitelisting
  • API Onboarding
  • Authentication
    • Swap, Collection, & P2P Automation
  • Webhook Validation & Request Integrity
  • Currency Swap
    • Introduction
    • Authentication
      • Partner Onboarding Endpoints
      • Partner Activate Endpoint
      • Regenerate Partners Public & Private Keys
      • Digital Signature
    • User KYC
      • Create KYC
      • Verify KYC Status
      • Reconciliation
      • Post KYC Data
    • Exchange Rate
    • Buy
      • Create Order
      • Events
    • Sell
      • Create Order
      • Events
    • Transaction Resolution
      • Overview
      • Log Issue
      • Check Issue Status
    • Transaction Records
      • Pending Transaction
      • Get Single Order Endpoint
      • Get Multiple Order Endpoint
      • Sell/Payout Verification Endpoint
    • Provider/Bank Codes
  • Virtual card
    • Introduction
      • Getting Started
        • Partner Onboarding
        • Partner Activate Endpoint
    • Authentication
    • Partner
      • Create Merchant
      • List of Merchants
    • Merchant
      • Create User
      • Verify User KYC Status
      • List Users
    • User
      • Create Card
      • Fetch Cards
      • Get Card Details
    • Card
      • Fund Card
      • Freeze Card
      • Delete Card
    • Payments
      • Withdraw From Card
      • Withdrawal History
    • Transactions
      • Card Transactions
      • Export Card Transactions
      • Filter Card Transactions
    • Wallet
      • Merchant Wallet Balance
      • Card Wallet Balance
  • Collection and payout
    • Introduction
    • Onboarding
    • Getting Started for Partner
      • Partner Onboarding Endpoints
      • IP Capture & Whitelisting
      • Regenerate Partners Pub/Priv Keys
    • Getting Started for Merchant
    • Collection
      • Digital Signatures
      • Collection (GHS, KHS, ZAR)
      • Collection (Virtual Account-NGN )
      • Fetch Order
      • Assigning Virtual Accounts
        • Get Available Assignable Virtual Account
        • Check if specific account is available for use
        • Create Order- using Available Virtual Account from your Account Pool
        • Cancel Order
      • Get Mobile Money Providers
    • Payout
      • Account verification
      • Payout
      • Payout Status
      • Crypto Withdrawal
        • Wallet Balance
        • Withdrawal Payout
        • Get Withdrawal Payout Fee
      • Bank and Bank Codes
    • Transaction History
      • Get Transaction Records
  • P2p Automation
    • Integration Journey (API-Dashboard)
  • Payment and Utilities
    • Introduction
      • Sign Up
      • Compliance
      • Create an App
      • Configure App
    • Authentication
    • User Onboarding
    • Error Handling
    • Plugin (Frontend)
      • Integrating Finswich checkout via NPM or Yarn
      • Integrating the Finswich Checkout on your Vanilla Javascript app
      • Steps for integrating Finswich Checkout via Flutter
      • Pseudocode for Integrating Finswich Checkout in Application (Native iOS & Android)
    • Services (Backend)
      • Inter-wallet Transfer
      • Bank Transfer
      • Wallet Funding
      • Utility Purchases
  • KYC As A Service
    • Introduction
    • App Registration Endpoint
    • App Activate/Verify Endpoint
    • Request Verification Token
    • KYC (Individual)
      • Get KYC Types
      • Create KYC Request
      • Get Verification Status and User's Data
      • Create order with meta data
      • Migrate
    • KYC (Business)
      • Get KYC Types
      • Create KYC Request
      • Get Verification Status and User's Data
    • Face Stamp
      • Create Facestamp Order
      • Create OTP
      • Verify OTP
      • Post Transaction Data
    • KYC(Transactional)
    • Callbacks (Webhook Responses)
Powered by GitBook
On this page
  1. Collection and payout
  2. Collection

Collection (Virtual Account-NGN )

This is the Async method of creating collection order it is designed to provide speedy responses while creating and fetching orders

Create Order-Without Payment Pages or in Nigeria (Virtual accounts)

This endpoint is also used to create an order on Intrapay

POST https://prod-order-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

Name
Type
Description

Content-Type*

String

application/json

Authorization*

String

Authorization is a bearer token which is Partners public key

Request Body

Name
Type
Description

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)

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

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);
});

API Callback Response

//API Callback Response 
{
    "message":"OK"
}


//callback response 1
{ 
    "partner_order_id": "FUSPAY-Y-20251",
    "callbak_data": "OK"
}


//callback response 2 
{
    "status": "PENDING",
    "id": 271046,
    "partner_id": "p60037",
    "order_notify_url": " https://webhook.site/f968b3b6-964c-4418-bdb0-169f3c2c3e4c",
    "exchanger_user_id": 129,
    "intrapay_merchant_id": "intra_merchant_176833",
    "messsage": "Fetched successfully",
    "payment": { 
        "status": "PENDING",
        "sender_name": ""
        }, 
        "virtual_account": {
            "amount": 100, 
            "account_name": "John Ibikunle",
            "bank_name": "GTB",
            "account_number": "0845342528",
            "virtual_account_id": 2
        }, 
        "order_details": {}
}
{
    error: true,
    status: "error",
    message: string,
    data: null
}

Response Body

{
  "status": "success",
  "messsage": "",
  "data": {
        "payment": {
            "status": "PENDING | PAID | REFUND"

            },
        "virtual_account": {
        "amount": "",
        "account_name": "",
        "bank_name": "",
        "account_number": ""
      },
     "order_details": {
     "status": "PENDING | COMPLETED | EXPIRED | CANCELED",
     "partner_order_id": "",
     "intrapay_order_reference": ""
     }

 }

}
{
  "status": "fail",
  "messsage": ""
}
PreviousCollection (GHS, KHS, ZAR)NextFetch Order

Last updated 2 months ago