Overview

Merchants with multiple sub-vendors can use the Multi-vendor API option. To do so, the merchant should have a UPay account with proper details in the "My Account" section. Once the details are verified, deposits can be made.

To enable the Multi-vendor API option, you need to define an array called "ExtraMerchantsData" while creating the payment request. This will allow you to include additional information about the sub-vendors and enable the multi-vendor functionality. By using this option, you can easily manage payments for multiple sub-vendors within the same transaction.

Request Model

The request is a POST request with the following parameters:

Input ParameterTypeLengthDescription
extraMerchantData.knetChargefloat, mandatory2,2Main vendor Knet charge rate for the sub vendor. This is the merchant's (main vendor) commission for each transaction from the sub-vendor. This amount is credited to the main vendor
extraMerchantData.knetChargeTypestring, mandatory10Knet charge type (Fixed or Percentage)
extraMerchantData.ccChargefloat, mandatory2,2Main vendor Credit Card charge rate for the sub-vendor. This is the merchants' (main vendor) commission for each transaction from the sub-vendor. (Includes MasterCard, Visa, Samsung Pay, Google Pay, and Apple Pay). This amount is credited to the main vendor
extraMerchantData.ccChargeTypestring, mandatory10CC charge type (Fixed or Percentage)
extraMerchantData.ibanNumberstring, array, mandatory30Sub-vendor IBAN Numbers. Defines which Sub vendor bank account to deposit the Order amount after commisions are deducted.
"extraMerchantData": [
	{
		"amount": 10,
		"knetCharge": 5,
		"knetChargeType": "fixed",
		"ccCharge": 10,
		"ccChargeType": "percentage",
		"ibanNumber": "KW91KFHO0000000000051010173254"
	},
	{
		"amount": 10,
		"knetCharge": 5,
		"knetChargeType": "fixed",
		"ccCharge": 7,
		"ccChargeType": "percentage",
		"ibanNumber": "KW31NBOK0000000000002010177457"
	}
]

Example

"extraMerchantData": [
        {
            "amount": 100,
            "knetCharge": 20,
            "knetChargeType": "percentage",
            "ccCharge": 92,
            "ccChargeType": "percentage",
            "ibanNumber": "Sub-vendor-A"
        },
        {
            "amount": 50,
            "knetCharge": 92,
            "knetChargeType": "percentage",
            "ccCharge": 92,
            "ccChargeType": "percentage",
            "ibanNumber": "Sub-vendor-B"
        },
        {
            "amount": 30,
            "knetCharge": 92,
            "knetChargeType": "percentage",
            "ccCharge": 92,
            "ccChargeType": "percentage",
            "ibanNumber": "Sub-vendor-C"
        }
    ]

Explanation

For Sub-vendor-A

  • If a cardholder pays through KNET, Sub-vendor-A gets 80 KWD/USD (80%) and 20% will go to the main vendor (API owner).
  • If a cardholder pays via MasterCard/Visa/Apple Pay/Samsung Pay/Google Pay, the Sub-vendor-B will get 8 KWD/USD (8%) and 92% will go to the main vendor which is the owner of the API.

For Sub-vendor-B

  • If a customer pays from any payment module then Sub-vendor- will get 4 KWD/USD (8%) and 92% will go to the main vendor which is the owner of the API.

For Sub-vendor-C

  • If a customer pays from any payment module then Sub-vendor-C will get 2.4 KWD/USD (8%) and 92% will go to the main vendor which is the owner of the API