Xprizo Manuals - Merchant Manual

This manual serves as a comprehensive guide for merchants to effectively utilize the Xprizo platform. It includes topics such as account setup and onboarding, payment processing, inventory management, and customer engagement strategies.

How to become a Merchant?


User Journey Mapping (15).jpg

1. Login/Registration

register.png


2. Add Wallet

To be able to perform any kind of transaction or manage funds the user needs to add a wallet in their profile to execute various transactional activities. By adding a wallet user can store their funds securely and carry out transactions directly from their account. To add a wallet follow the steps outlined below.

Add a New Wallet

3. Add User Details

To be able to send a merchant request to the back office, you will first need to complete user details for your profile. There you will need to complete your full name and address details. For a step-by-step guide, please click on the link below to learn how to add user details.

User Details

4. Add KYC Details

The next step is to complete KYC details and become KYC compliant. For this, you would have to upload your documents to verify your KYC. To initiate the KYC process, follow the provided steps below to complete the necessary procedures for KYC verification.

KYC Details

5. Send Merchant Request


Screenshot 2024-01-21 143739.png


Screenshot 2024-01-21 143850.png


Integrating with the Xprizo API

This chapter provides detailed steps for setting up your merchant profile, creating a processing profile with access to the merchant wallet, and navigating through testing (sandbox) and production (live) environments. Additionally, it walks you through the deposit process using Xprizo Wallet, card, MPESA, and UPI, covering the flow, validation, callbacks, deposit transaction creation, approval webhook set up, and status checking. Follow the sections below to manage your account and transactions efficiently.

Integrating with the Xprizo API

Account Setup

You need to create two profiles where the first profile will be of the Merchant having a wallet to be able to receive funds and the other profile will be of Processing which will be used for creating the transactions on the merchant's account wallet.

Merchant profile

To create a merchant profile use the link below where you can find how to do registration, profile updation, KYC, and procedure for merchant requests.

How to Become a Merchant 

Processor profile

A processor profile is required to manage the transactions of the merchant wallet. This processor profile will help the merchant, to secure his wallet by giving only the required access to the processor on the merchant profile. To configure the processor profile use the below-mentioned link where you can find all the steps to configure the processor profile (linking of merchant profile and processor profile, and after that how to give access to the processor profile of the merchant profile).

** You can also use a merchant profile as a processor profile, but this is advisable to have a separate processor profile to manage the transactions to make your main merchant profile secure.

Processor Profile Configuration 

Test profile

To test the merchant account you will have to create a sample/test account which you will use to check if the integration is done properly or not.

Integrating with the Xprizo API

Environment & Authentication​

Before starting the integration, the user needs to know about the available environment and authentication methods required for integration. Use the below-mentioned link where you can find details about the available environment, and authentication methods (how to generate token & API key and usage of these).

Environment & Authentication


Integrating with the Xprizo API

Deposit Using Xprizo Wallet

To make a deposit, funds are transferred from a user's wallet to the merchant's wallet. This process is done by requesting a payment from the user through the Transaction/RequestPayment endpoint.


Integrating with the Xprizo API

Deposit Using Card

Flow​

User Journey Mapping (20).jpg

Steps​

After you have called the Transaction/CardDeposit endpoint, a payment request is sent to the Acquirer network to process the card payment. A pending transaction is also created and Xprizo will continue monitoring the Acquirer network until an approval or rejection is received.

If the card is 'Approved' (2DS) then the transaction will be added to the merchant's wallet and the API will return an 'Active' status. No further action is required.

If there is a problem creating the transaction then the API will return a status of 'Rejected'.

It is possible that a card is not processed immediately such as some kind of delay or the user might need to approve the transaction using another device, then a 'Pending' status will be returned.

In the case of 3DS, there could be a redirect to an alternate URL. In this case, a 'Redirect' status and URL is returned.

The Merchant will get updates on the status of the transaction via callbacks. To receive a callback, you will need to request to set this up on your Merchant account (the profile that is used to create this transaction). This can be done by going to settings/preferences and setting the "Approval Webhook" to point to a URL of your choice. You can also set this using Preference/SetApprovalWebhook

A callback will be sent when

You can use this link to see the response coming on this Webhook.

** You should, however, check the status, after you get a callback to confirm that the transaction was completed successfully. You can use Transaction/Status endpoint to check the status.


Integrating with the Xprizo API

Deposit Using MPESA


Integrating with the Xprizo API

Deposit Using UPI


Integrating with the Xprizo API

Withdrawals

Create, Approve, Check

Use this method if the creation and approval of transactions are not done at the same time. For instance, the platform might initiate the transaction, and the merchant may approve the transaction

With this method, the platform needs to continuously poll Xprizo in case there's no immediate response from Xprizo to confirm whether the transaction was successfully created or not.

Flow

User Journey Mapping (25).jpg

Steps

At any time you can cancel the transaction by calling Transaction/Cancel

Create, Hold, Check

Use this method if you prefer Xprizo to conduct the final check. Xprizo will verify that the transaction has been created on the platform by sending a callback and awaiting a valid response. Depending on the platform's response, Xprizo will either confirm the transaction or cancel it.

By using this method involves Xprizo initiating a transaction and placing it on hold. It will then send a callback to verify whether the platform has successfully updated the transaction on its end. If Xprizo receives a positive response, then the transaction will be completed. If a negative response is received or there is no response within 24 hours, the transaction is voided.

Flow

User Journey Mapping (27).jpg

Steps

Withdrawal to Bank Account

When a user needs to transfer funds from their wallet to someone's bank account, they can easily initiate this process by providing the recipient's name, account number, and the desired amount to be transferred. This withdrawal method facilitates direct transfers to bank accounts, ensuring seamless transactions between users and their chosen recipients.

Flow

User Journey Mapping (29).jpg

Steps

Xprizo Instant Payments (Payment Link)

Introduction

How to create a Payment Link?

Follow the steps written in the image below to be able to create the Payment URL.

Screenshot 2024-08-14 at 4.24.45 PM.png

To receive the notifications for the payment you've received through webhook then you can set this by navigating to the settings of your profile page this process will be done from the UI side, For reference click on the link below.

Create Payment URL Webhook

To perform the same process with the help of API click on the below link for the reference.

Approval Webhook

Creating a Payment Link via the Xprizo Wallet API

Add a Product

First, you need to add a product by calling the /Item/AddProduct endpoint:

List the Products you have added in the Xprizo Platform

To get the list of products, call the /Item/ProductList endpoint:

To generate a payment link for a product purchase:

To complete the payment flow, the user must enter their card details, and click “Proceed to Pay”.