Generate Deposits (Pay-In)

Learn how to generate deposits

On generating a deposit request, the system initiates the creation of the deposit and then redirects the user to the provided payment link.

You must transmit all necessary information to facilitate the completion of the deposit request. Upon receipt of this information, our system will reply with the payment metadata, which includes an external link for the user to access and view their payment details.

Note:** If not all required fields are provided in your request, the API endpoint will return an error response.

INR Deposit Request

import axios from 'axios';

const options = {
  method: 'POST',
  url: 'https:/api.aqua.test.krayondigital.com/main/api/v1/deposits',
  headers: {
    'accept': 'application/json',
    'content-type': 'application/json',
    'Authorization': 'Bearer YOUR-API-TOKEN'
  },
  data: {
    "amount": "500",
    "reference_id": "payment_1",
    "description": "first payment for the organization",
    "currency": "INR",
    "customer": {
      "reference_id": "krayon_1337",
      "country_code": "IN",
      "email": "[email protected]",
      "first_name": "elon",
      "last_name": "mush",
      "phone": "919895270111",
    },
    "billing_address": {
      "country_code": "IN",
      "address_line1": "Address Line 1",
    },
    "payment_method": "UPI",
    "type": "DEPOSIT"
  }
};

axios
  .request(options)
  .then(function (response) {
    console.log(response.data);
  })
  .catch(function (error) {
    console.error(error);
  });
import requests

url = "https:/api.aqua.test.krayondigital.com/main/api/v1/deposits"

payload =  {
    "amount": "500",
    "reference_id": "payment_1",
    "description": "first payment for the organization",
    "currency": "INR",
    "customer": {
      "reference_id": "krayon_1337",
      "country_code": "IN",
      "email": "[email protected]",
      "first_name": "elon",
      "last_name": "mush",
      "phone": "919895270111",
    },
    "billing_address": {
      "country_code": "IN",
      "address_line1": "Address Line 1",
    },
    "payment_method": "UPI",
    "type": "DEPOSIT"
}

headers = {
    "accept": "application/json",
    "content-type": "application/json",
 		"Authorization": "Bearer YOUR-API-TOKEN"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
{
  "amount": "500",
  "reference_id": "payment_1",
  "description": "first payment for the organization",
  "currency": "INR",
  "customer": {
    "reference_id": "krayon_1337",
    "country_code": "IN",
    "email": "[email protected]",
    "first_name": "elon",
    "last_name": "mush",
    "phone": "919895270111",
  },
  "billing_address": {
    "country_code": "IN",
    "address_line1": "Address Line 1",
  },
  "payment_method": "UPI",
  "type": "DEPOSIT",
  "webhook_url": "https://krayondigital.webhook.com",
}

Response

{
  "data": {
    "id": "8c7d6aac220c495fa50670a46b458e9d",
    "organization": "org_aAgoWL5DjwSvQSf0",
    "wallet": None,
    "status": "PENDING",
    "amount": 500.0,
    "currency": "INR",
    "symbol": "USDT",
    "type": "DEPOSIT",
    "payment_method": "UPI",
    "description": "this is the payment description",
    "qr_code": "upi://pay?pa=INNOV781.29@CMSIDFC&pn=Krayon Digital&tn=121237361371281&tr=1278361287361287312&am=500.0&cu=INR",
    "return_url": "https://www.krayondigital.com",
    "redirect_url": "https://prod.teal.krayondigital/checkouts/8c7d6aac220c495fa50670a46b458e9d",
    "customer_email": "[email protected]",
    "customer_country": "IN",
    "return_url": "https://www.krayondigital.com",
    "redirect_url": "https://prod.teal.krayondigital/checkouts/8c7d6aac220c495fa50670a46b458e9d",
    "payment_fee": 41.65,
    "net_amount": 458.35,
    "destination_vpa": "INNOV781.29@CMSIDFC",
    "created_at": "2023-01-01 10:57:49"
  }

NGN Deposit Request

import axios from 'axios';

const options = {
  method: 'POST',
  url: 'https:/api.aqua.test.krayondigital.com/main/api/v1/deposits',
  headers: {
    'accept': 'application/json',
    'content-type': 'application/json',
    'Authorization': 'Bearer YOUR-API-TOKEN'
  },
  data: {
    "amount": "2500",
    "reference_id": "payout_1",
    "description": "first payout for the organization",
    "currency": "NGN",
    "customer": {
      "reference_id": "krayon_1337",
      "country_code": "NG",
      "email": "[email protected]",
      "first_name": "elon",
      "last_name": "mush",
      "phone": "23408084111223",
      "account_number": "1111111111"
    },
    "billing_address": {
      "country_code": "NG",
      "address_line1": "Address Line 1",
    },
    "payment_method": "NETBANKING",
    "type": "DEPOSIT"
  }
};

axios
  .request(options)
  .then(function (response) {
    console.log(response.data);
  })
  .catch(function (error) {
    console.error(error);
  });
import requests

url = "https:/api.aqua.test.krayondigital.com/main/api/v1/deposits"

payload = {
    "amount": "2500",
    "reference_id": "payout_1",
    "description": "first payout for the organization",
    "currency": "NGN",
    "customer": {
      "reference_id": "krayon_1337",
      "country_code": "NG",
      "email": "[email protected]",
      "first_name": "elon",
      "last_name": "mush",
      "phone": "23408084111223",
      "account_number": "1111111111"
    },
    "billing_address": {
      "country_code": "NG",
      "address_line1": "Address Line 1",
    },
    "payment_method": "NETBANKING",
    "type": "DEPOSIT"
}

headers = {
    "accept": "application/json",
    "content-type": "application/json",
 		"Authorization": "Bearer YOUR-API-TOKEN"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
{
    "amount": "2500",
    "reference_id": "payout_1",
    "description": "first payout for the organization",
    "currency": "NGN",
    "customer": {
      "reference_id": "krayon_1337",
      "country_code": "NG",
      "email": "[email protected]",
      "first_name": "elon",
      "last_name": "mush",
      "phone": "23408084111223",
      "account_number": "1111111111"
    },
    "billing_address": {
      "country_code": "NG",
      "address_line1": "Address Line 1",
    },
    "payment_method": "NETBANKING",
    "type": "DEPOSIT"
}

Reposne

{
  "data": {
    "id": "8c7d6aac220c495fa50670a46b458e9d",
    "organization": "org_aAgoWL5DjwSvQSf0",
    "wallet": None,
    "status": "PENDING",
    "amount": 500.0,
    "currency": "NGN",
    "symbol": "USDT",
    "webhook_url": "https://krayondigital.webhook.com",
    "type": "DEPOSIT",
    "payment_method": "NETBANKING",
    "description": "this is the payment description",
    "qr_code": "",
    "customer_email": "[email protected]",
    "customer_country": "NG",
    "return_url": "https://www.krayondigital.com",
    "redirect_url": "https://prod.teal.krayondigital/checkouts/8c7d6aac220c495fa50670a46b458e9d",
    "payment_fee": 41.65,
    "net_amount": 458.35,
    "destination_vpa": "",
    "created_at": "2023-01-01 10:57:49",
    "payment_details": {
      "account_number": "3192406772",
      "account_name": "Ken Adams",
      "bank_name": "PAGA",
      "type": "NGN_bank_transfer",
      "reference": "KD1788203",
    },
  }

ZAR Deposit Request

import axios from 'axios';

const options = {
  method: 'POST',
  url: 'https:/api.aqua.test.krayondigital.com/main/api/v1/deposits',
  headers: {
    'accept': 'application/json',
    'content-type': 'application/json',
    'Authorization': 'Bearer YOUR-API-TOKEN'
  },
  data: {
    "amount": "100",
    "reference_id": "112233445566",
    "description": "Test ZAR",
    "currency": "ZAR",
    "customer": {
        "reference_id": "1337",
        "country_code": "ZA",
        "email": "[email protected]",
        "first_name": "elon",
        "last_name": "mush",
        "phone": "+27824972080",
        "account_number": "123456789"
    },
    "billing_address": {
        "country_code": "ZA",
        "address_line1": "8601 Corners port, Portland, Montana 82346"
    },
    "payment_method": "NETBANKING",
    "type": "DEPOSIT"
 }
};

axios
  .request(options)
  .then(function (response) {
    console.log(response.data);
  })
  .catch(function (error) {
    console.error(error);
  });
import requests
import requests

url = "https:/api.aqua.test.krayondigital.com/main/api/v1/deposits"

payload = {
    "amount": "100",
    "reference_id": "112233445566",
    "description": "Test ZAR",
    "currency": "ZAR",
    "customer": {
        "reference_id": "1337",
        "country_code": "ZA",
        "email": "[email protected]",
        "first_name": "elon",
        "last_name": "mush",
        "phone": "+27824972080",
        "account_number": "123456789"
    },
    "billing_address": {
        "country_code": "ZA",
        "address_line1": "8601 Corners port, Portland, Montana 82346"
    },
    "payment_method": "NETBANKING",
    "type": "DEPOSIT"
 }

headers = {
    "accept": "application/json",
    "content-type": "application/json",
 	  "Authorization": "Bearer YOUR-API-TOKEN"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
{
    "amount": "100",
    "reference_id": "112233445566",
    "description": "Test ZAR",
    "currency": "ZAR",
    "customer": {
        "reference_id": "1337",
        "country_code": "ZA",
        "email": "[email protected]",
        "first_name": "elon",
        "last_name": "mush",
        "phone": "+27824972080",
        "account_number": "123456789"
    },
    "billing_address": {
        "country_code": "ZA",
        "address_line1": "8601 Corners port, Portland, Montana 82346"
    },
    "payment_method": "NETBANKING",
    "type": "DEPOSIT"
}

Response - Same as NGN but with a different currency/country


KES Deposit Request

import axios from 'axios';

const options = {
  method: 'POST',
  url: 'https:/api.aqua.test.krayondigital.com/main/api/v1/deposits',
  headers: {
    'accept': 'application/json',
    'content-type': 'application/json',
    'Authorization': 'Bearer YOUR-API-TOKEN'
  },
  data: {
    "amount": "300",
    "reference_id": "1122334455662",
    "description": "Test KES with Krayon",
    "currency": "KES",
    "customer": {
        "reference_id": "1337",
        "country_code": "KE",
        "email": "[email protected]",
        "first_name": "elon",
        "last_name": "mush",
        "phone": "254722931111",
        "account_number":"+254722931111" // Same as the phone number
    },
    "billing_address": {
        "country_code": "KE",
        "address_line1": "8601 Corners port, Portland, Montana 82346"
    },
    "payment_method": "MOBILE_MONEY",
    "type": "DEPOSIT"
}
};

axios
  .request(options)
  .then(function (response) {
    console.log(response.data);
  })
  .catch(function (error) {
    console.error(error);
  });
import requests

url = "https:/api.aqua.test.krayondigital.com/main/api/v1/deposits"

payload = {
    "amount": "300",
    "reference_id": "1122334455662",
    "description": "Test KES with Krayon",
    "currency": "KES",
    "customer": {
        "reference_id": "1337",
        "country_code": "KE",
        "email": "[email protected]",
        "first_name": "elon",
        "last_name": "mush",
        "phone": "254722931111",
        "account_number":"+254722931111" # Same as the phone number
    },
    "billing_address": {
        "country_code": "KE",
        "address_line1": "8601 Corners port, Portland, Montana 82346"
    },
    "payment_method": "MOBILE_MONEY",
    "type": "DEPOSIT"
}

headers = {
    "accept": "application/json",
    "content-type": "application/json",
 		"Authorization": "Bearer YOUR-API-TOKEN"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
{
    "amount": "300",
    "reference_id": "1122334455662",
    "description": "Test KES with Krayon",
    "currency": "KES",
    "customer": {
        "reference_id": "1337",
        "country_code": "KE",
        "email": "[email protected]",
        "first_name": "elon",
        "last_name": "mush",
        "phone": "254722931111",
        "account_number":"+254722931111"
    },
    "billing_address": {
        "country_code": "KE",
        "address_line1": "8601 Corners port, Portland, Montana 82346"
    },
    "payment_method": "MOBILE_MONEY",
    "type": "DEPOSIT"
}

Response

{
  "data": {
    "id": "8c7d6aac220c495fa50670a46b458e9d",
    "organization": "org_aAgoWL5DjwSvQSf0",
    "wallet": None,
    "status": "PENDING",
    "amount": 500.0,
    "currency": "KES",
    "symbol": "USDT",
    "webhook_url": "https://krayondigital.webhook.com",
    "type": "DEPOSIT",
    "payment_method": "MOBILE_MONEY",
    "description": "this is the payment description",
    "qr_code": "",
    "customer_email": "[email protected]",
    "customer_country": "KE",
    "return_url": "https://www.krayondigital.com",
    "redirect_url": "https://prod.teal.krayondigital/checkouts/8c7d6aac220c495fa50670a46b458e9d",
    "payment_fee": 41.65,
    "net_amount": 458.35,
    "destination_vpa": "",
    "created_at": "2023-01-01 10:57:49",
  },
}

XAF Deposit Request

import axios from 'axios';

const options = {
  method: 'POST',
  url: 'https:/api.aqua.test.krayondigital.com/main/api/v1/deposits',
  headers: {
    'accept': 'application/json',
    'content-type': 'application/json',
    'Authorization': "Bearer YOUR-API-TOKEN"
  },
  data: {
    "amount": "1000",
    "reference_id": "1122334455662",
    "description": "Test XAF with Krayon",
    "currency": "XAF",
    "customer": {
        "reference_id": "1337",
        "country_code": "CM",
        "email": "[email protected]",
        "first_name": "elon",
        "last_name": "mush",
        "phone": "237722931111",
        "account_number":"+237722931111" // Same as the phone number
    },
    "billing_address": {
        "country_code": "CM",
        "address_line1": "8601 Corners port, Portland, Montana 82346"
    },
    "payment_method": "MOBILE_MONEY",
    "type": "DEPOSIT"
}
};

axios
  .request(options)
  .then(function (response) {
    console.log(response.data);
  })
  .catch(function (error) {
    console.error(error);
  });
import requests

url = "https:/api.aqua.test.krayondigital.com/main/api/v1/deposits"

payload = {
    "amount": "1000",
    "reference_id": "1122334455662",
    "description": "Test XAF with Krayon",
    "currency": "XAF",
    "customer": {
        "reference_id": "1337",
        "country_code": "CM",
        "email": "[email protected]",
        "first_name": "elon",
        "last_name": "mush",
        "phone": "237722931111",
        "account_number":"+237722931111" // Same as the phone number
    },
    "billing_address": {
        "country_code": "CM",
        "address_line1": "8601 Corners port, Portland, Montana 82346"
    },
    "payment_method": "MOBILE_MONEY",
    "type": "DEPOSIT"
}

headers = {
    "accept": "application/json",
    "content-type": "application/json",
 		"Authorization": "Bearer YOUR-API-TOKEN"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
{
    "amount": "1000",
    "reference_id": "1122334455662",
    "description": "Test XAF with Krayon",
    "currency": "XAF",
    "customer": {
        "reference_id": "1337",
        "country_code": "CM",
        "email": "[email protected]",
        "first_name": "elon",
        "last_name": "mush",
        "phone": "237722931111",
        "account_number":"+237722931111" // Same as the phone number
    },
    "billing_address": {
        "country_code": "CM",
        "address_line1": "8601 Corners port, Portland, Montana 82346"
    },
    "payment_method": "MOBILE_MONEY",
    "type": "DEPOSIT"
}

Response

{
  "data": {
    "id": "8c7d6aac220c495fa50670a46b458e9d",
    "organization": "org_aAgoWL5DjwSvQSf0",
    "wallet": None,
    "status": "PENDING",
    "amount": 1000.0,
    "currency": "XAF",
    "symbol": "USDT",
    "webhook_url": "https://krayondigital.webhook.com",
    "type": "DEPOSIT",
    "payment_method": "MOBILE_MONEY",
    "description": "this is the payment description",
    "qr_code": "",
    "customer_email": "[email protected]",
    "customer_country": "CM",
    "return_url": "https://www.krayondigital.com",
    "redirect_url": "https://prod.teal.krayondigital/checkouts/8c7d6aac220c495fa50670a46b458e9d",
    "payment_fee": 83.3,
    "net_amount": 916.7,
    "destination_vpa": "",
    "created_at": "2023-01-01 10:57:49",
  },
}

Please check the limits and payment methods for each region. Payment Methods
Please check deposits API ref for more information and response object fields. Create deposit
Please check the deposit object for more information. Deposit Object