Getting Started
This page describes how a partner onboards on Axis Instant Swap
We have provided a list of endpoints to make the integration and onboarding seamless. Below is the description of how to authenticate with our endpoints and a list of endpoints needed to successfully onboard.
Getting Started
To Authenticate you do the following:
Onboard on the partner onboarding list to get your partner ID and credentials
Whitelist your IP (Please ensure IPS are static IPs ) -Follow the Telegram channel and request IP whitelisting through our technical team.
You will be required to perform KYC & sign a contract before your IP can be considered for whitelisting. To Start your KYC visit https://kyc.fuspay.finance
Activate your Axis account using your partner ID
Authentication
IP must be whitelisted
Authorization Header {Authorization: "Bearer partner_secret_key" }. In every request, your secret key will be added to the authorization header as a bearer token
KYC
The Axis system is KYC dependent- meaning only orders from a user that has done KYC will be fulfilled. If a non KYC user initiates an order the order is left in a pending state until the user performs KYC or their KYC data is posted to the B2CUpdateKYC endpoint.
There are 2 types of KYC for a user
Basic KYC
Extended KYC (E-KYC)
With Each KYC category there are transactional limits.
Two Ways of doing KYC
Method 1
This is for B2C merchants that have already done KYC for their users
This is done by posting your users' existing KYC data to this endpoint
POST
https://exchanger-api.fuspay.finance/
api/v1/no-auth/Axis/B2cUpdateUserKyc
Method 2
This is for B2B merchants that haven't done KYC for their users
While creating on-ramp and off-ramp orders, Axis requires some KYC data (firstname, lastname, email, & phonenumber). If the above KYC data is not on our users KYC database, Axis will return a KYC URL where your user can perform a one-time transactional KYC .
Webhook/Callback Signature
Callback signatures are used as an integrity test.
SHA-512 is the encryption algorithm used to sign the callback/webhooks; the event body is signed with the concatenation of the public key and secret key
sha512(body, public_key+secret_key)
Partner Onboarding Endpoints
This endpoint returns a one time link containing your ID and Credentials .
This endpoint is to register a partner
POST
https://exchanger-api.fuspay.finance/api/v1/no-auth/PartnerP2P/OnboardPartner.
Partner's Public, Secret Keys, and partners ID will be sent to Partner email as a one-time link.
Headers
Content-Type*
String
application/json
Request Body
partner_code*
String
a code signifying the partner
email*
String
email of the partner
Example request- Code.
After onboarding on the partner onboarding endpoint, you have to provide the IPs for your system. As the IPs need to whitelist on our system.
Partner Activate Endpoint
This is used to activate partner ID to start using axis
POST
https://exchanger-api.fuspay.finance/api/v1/no-auth/Axis/Activate/
Headers
x-partner-id*
String
your partner ID
Request Body
String
Body of request is empty requires only the header
{ success: true, message: string, data: null }
Regenerate Partners Public & Private Keys
This endpoint is used by partners to regenerate their keys
POST
https://exchanger-api.fuspay.finance/api/v1/no-auth/PartnerP2P/OnboardPartner./
A One time reset link is sent to the partner email address to regenerate the keys
Old keys becomes invalid
Headers
Content-type*
String
application/json
Authorization*
String
Bearer pk_partner_xxxx
Request Body
email*
String
sample@example.com
signature*
String
sha512-req-body-signed-with-sk_partner_xxxxx
partner_code*
String
the partner code used on partner onboarding
Example Request- Code
Digital Signature
This endpoint is used to sign the request body. and generate the digital signature.
POST
https://exchanger-api.fuspay.finance/api/v1/no-auth/PartnerP2P/SignRequestSha512/
The object is signed without including the signature field. Also sign exactly the fields that would be posted to the endpoint
Please make sure we have whitelisted all your IPs
Only Collection or Order creation requires using of merchant secret and partner secret all other request to be signed are to be signed using partner secret alone
Headers
Content-Type*
String
application/json
Example Request Body
Request body may be different depending on what you would like to sign
partner_order_id*
String
the order id on partners end
amount_to_collect*
String
the amount to be collected
timestamp*
String
the time the order was created
currency*
String
the currency of collection eg GHS, NGN
partner_callback_url*
String
the url where payment confirmation would be posted
partner_redirect_url
String
partners site where users would be redirected after successful payment
secret*
String
Signed with partner secret.
Sample code
Last updated