kamiPay LogokamiPay Docs

Wallets

List the wallets available to your merchant account.

Wallets are pre-registered during onboarding and determine where USDt settlements are sent after a payment is received. Each checkout must be linked to one wallet. Use the endpoint below to retrieve your available wallets before creating a checkout, and pick one on Polygon (network_id 5).

Access: every Account Administration endpoint needs credentials with the pay-in scope (the ones kamiPay gives you have it) and a user with a management role, which they normally have; otherwise 401 without the scope, or 403 without the role, so contact support.


List Wallets

GET /v2/merchants/wallets

Returns all wallets associated with your merchant account.

Example Request

const url = `${baseURL}/v2/merchants/wallets`

const response = await fetch(url, {
  method: "GET",
  headers: {
    Authorization: `Bearer ${access_token}`,
  },
});
import requests

url = f"{base_url}/v2/merchants/wallets"

headers = {
  "Authorization": f"Bearer {access_token}",
}

response = requests.get(url, headers=headers)
package main

import (
  "fmt"
  "net/http"
)

func main() {
  url := baseURL + "/v2/merchants/wallets"

  req, _ := http.NewRequest("GET", url, nil)
  req.Header.Add("Authorization", fmt.Sprintf("Bearer %s", accessToken))

  client := &http.Client{}
  resp, err := client.Do(req)
  if err != nil {
    fmt.Println("Error making request:", err)
    return
  }
  defer resp.Body.Close()
}

Response

[
  {
    "wallet_id": 1,
    "wallet_desc": "Main wallet",
    "address": "0x46d52020**********1fbdcc297d",
    "network_id": 5
  },
  {
    "wallet_id": 2,
    "wallet_desc": "Secondary wallet",
    "address": "0x8fa31120**********3acde918f",
    "network_id": 5
  }
]

With an invalid or expired token:

{
  "detail": "Could not validate credentials"
}

With a valid token without the pay-in scope:

{
  "detail": "Token Profile Not Authorized for this Endpoint"
}
{
  "detail": "User role not authorized for this endpoint"
}

A plain-text body, not JSON:

Internal Server Error

Response Fields

FieldTypeDescription
wallet_idintegerWallet identifier. Use this when creating a checkout.
wallet_descstringHuman-readable description of the wallet.
addressstringBlockchain address where settlements are sent.
network_idintegerThe wallet's blockchain network. 5 is Polygon, the only network a checkout takes. Any other value is a deprecated network, such as 3: assigning such a wallet to a checkout is rejected with 400 and "Wallet network deprecated", whether through Create Checkout, Update Checkout or the wallet_id or address of Create Printed Dynamic QR.

On this page