Skip to main content
POST
/
payments
/
topup
/
address
import cobo_waas2
from cobo_waas2.models.create_top_up_addresses import CreateTopUpAddresses
from cobo_waas2.models.create_top_up_addresses201_response import (
    CreateTopUpAddresses201Response,
)
from cobo_waas2.rest import ApiException
from pprint import pprint

# See configuration.py for a list of all supported configurations.
configuration = cobo_waas2.Configuration(
    # Replace `<YOUR_PRIVATE_KEY>` with your private key
    api_private_key="<YOUR_PRIVATE_KEY>",
    # Select the development environment. To use the production environment, change the URL to https://api.cobo.com/v2.
    host="https://api.dev.cobo.com/v2",
)
# Enter a context with an instance of the API client
with cobo_waas2.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = cobo_waas2.PaymentApi(api_client)
    create_top_up_addresses = cobo_waas2.CreateTopUpAddresses(
        token_id="ETH_USDT", custom_payer_ids=["O20250304-P1001-1001"]
    )

    try:
        # Batch create top-up addresses
        api_response = api_instance.create_top_up_addresses(
            create_top_up_addresses=create_top_up_addresses
        )
        print("The response of PaymentApi->create_top_up_addresses:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling PaymentApi->create_top_up_addresses: %s\n" % e)

// Import classes:
import com.cobo.waas2.ApiClient;
import com.cobo.waas2.ApiException;
import com.cobo.waas2.Configuration;
import com.cobo.waas2.Env;
import com.cobo.waas2.api.PaymentApi;
import com.cobo.waas2.model.*;
import java.util.Arrays;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = Configuration.getDefaultApiClient();
    // Select the development environment. To use the production environment, replace `Env.DEV` with
    // `Env.PROD
    defaultClient.setEnv(Env.DEV);

    // Replace `<YOUR_PRIVATE_KEY>` with your private key
    defaultClient.setPrivKey("<YOUR_PRIVATE_KEY>");
    PaymentApi apiInstance = new PaymentApi();
    CreateTopUpAddresses createTopUpAddresses =
        new CreateTopUpAddresses()
            .tokenId("ETH_USDT")
            .customPayerIds(Arrays.asList("O20250304-P1001-1001"));
    try {
      CreateTopUpAddresses201Response result =
          apiInstance.createTopUpAddresses(createTopUpAddresses);
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling PaymentApi#createTopUpAddresses");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}

package main

import (
	"context"
	"fmt"
	coboWaas2 "github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2"
	"github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2/crypto"
	"os"
)

func main() {
	createTopUpAddresses := *coboWaas2.NewCreateTopUpAddresses("ETH_USDT", []string{"O20250304-P1001-1001"})

	configuration := coboWaas2.NewConfiguration()
	// Initialize the API client
	apiClient := coboWaas2.NewAPIClient(configuration)
	ctx := context.Background()

	// Select the development environment. To use the production environment, replace coboWaas2.DevEnv with coboWaas2.ProdEnv
	ctx = context.WithValue(ctx, coboWaas2.ContextEnv, coboWaas2.DevEnv)
	// Replace `<YOUR_PRIVATE_KEY>` with your private key
	ctx = context.WithValue(ctx, coboWaas2.ContextPortalSigner, crypto.Ed25519Signer{
		Secret: "<YOUR_PRIVATE_KEY>",
	})
	resp, r, err := apiClient.PaymentAPI.CreateTopUpAddresses(ctx).
		CreateTopUpAddresses(createTopUpAddresses).
		Execute()
	if err != nil {
		fmt.Fprintf(os.Stderr, "Error when calling `PaymentAPI.CreateTopUpAddresses``: %v\n", err)
		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
	}
	// response from `CreateTopUpAddresses`: CreateTopUpAddresses201Response
	fmt.Fprintf(os.Stdout, "Response from `PaymentAPI.CreateTopUpAddresses`: %v\n", resp)
}

const CoboWaas2 = require("@cobo/cobo-waas2");
// Initialize the API client
const apiClient = CoboWaas2.ApiClient.instance;
// Select the development environment. To use the production environment, replace `Env.DEV` with `Env.PROD`
apiClient.setEnv(CoboWaas2.Env.DEV);
// Replace `<YOUR_PRIVATE_KEY>` with your private key
apiClient.setPrivateKey("<YOUR_PRIVATE_KEY>");
// Call the API
const apiInstance = new CoboWaas2.PaymentApi();
const opts = {
  CreateTopUpAddresses: CoboWaas2.CreateTopUpAddresses.constructFromObject({
    token_id: "ETH_USDT",
    custom_payer_ids: ["O20250304-P1001-1001"],
  }),
};
apiInstance.createTopUpAddresses(opts).then(
  (data) => {
    console.log("API called successfully. Returned data: " + data);
  },
  (error) => {
    console.error(error);
  },
);

{
  "data": [
    {
      "address": "0x1234567890abcdef...",
      "payer_id": "P20250619T0310056d7aa",
      "custom_payer_id": "user_abc_10001",
      "merchant_id": "M1001",
      "token_id": "ETH_USDT",
      "min_amount": "0.1",
      "chain": "ETH",
      "developer_fee_rate": "0.01",
      "created_timestamp": 1744689600,
      "updated_timestamp": 1744689600
    }
  ]
}
{
"error_code": 123,
"error_message": "<string>",
"error_id": "0b6ddf19083c4bd1a9ca01bec44b24dd"
}
{
"error_code": 123,
"error_message": "<string>",
"error_id": "0b6ddf19083c4bd1a9ca01bec44b24dd"
}
import cobo_waas2
from cobo_waas2.models.create_top_up_addresses import CreateTopUpAddresses
from cobo_waas2.models.create_top_up_addresses201_response import (
    CreateTopUpAddresses201Response,
)
from cobo_waas2.rest import ApiException
from pprint import pprint

# See configuration.py for a list of all supported configurations.
configuration = cobo_waas2.Configuration(
    # Replace `<YOUR_PRIVATE_KEY>` with your private key
    api_private_key="<YOUR_PRIVATE_KEY>",
    # Select the development environment. To use the production environment, change the URL to https://api.cobo.com/v2.
    host="https://api.dev.cobo.com/v2",
)
# Enter a context with an instance of the API client
with cobo_waas2.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = cobo_waas2.PaymentApi(api_client)
    create_top_up_addresses = cobo_waas2.CreateTopUpAddresses(
        token_id="ETH_USDT", custom_payer_ids=["O20250304-P1001-1001"]
    )

    try:
        # Batch create top-up addresses
        api_response = api_instance.create_top_up_addresses(
            create_top_up_addresses=create_top_up_addresses
        )
        print("The response of PaymentApi->create_top_up_addresses:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling PaymentApi->create_top_up_addresses: %s\n" % e)

// Import classes:
import com.cobo.waas2.ApiClient;
import com.cobo.waas2.ApiException;
import com.cobo.waas2.Configuration;
import com.cobo.waas2.Env;
import com.cobo.waas2.api.PaymentApi;
import com.cobo.waas2.model.*;
import java.util.Arrays;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = Configuration.getDefaultApiClient();
    // Select the development environment. To use the production environment, replace `Env.DEV` with
    // `Env.PROD
    defaultClient.setEnv(Env.DEV);

    // Replace `<YOUR_PRIVATE_KEY>` with your private key
    defaultClient.setPrivKey("<YOUR_PRIVATE_KEY>");
    PaymentApi apiInstance = new PaymentApi();
    CreateTopUpAddresses createTopUpAddresses =
        new CreateTopUpAddresses()
            .tokenId("ETH_USDT")
            .customPayerIds(Arrays.asList("O20250304-P1001-1001"));
    try {
      CreateTopUpAddresses201Response result =
          apiInstance.createTopUpAddresses(createTopUpAddresses);
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling PaymentApi#createTopUpAddresses");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}

package main

import (
	"context"
	"fmt"
	coboWaas2 "github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2"
	"github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2/crypto"
	"os"
)

func main() {
	createTopUpAddresses := *coboWaas2.NewCreateTopUpAddresses("ETH_USDT", []string{"O20250304-P1001-1001"})

	configuration := coboWaas2.NewConfiguration()
	// Initialize the API client
	apiClient := coboWaas2.NewAPIClient(configuration)
	ctx := context.Background()

	// Select the development environment. To use the production environment, replace coboWaas2.DevEnv with coboWaas2.ProdEnv
	ctx = context.WithValue(ctx, coboWaas2.ContextEnv, coboWaas2.DevEnv)
	// Replace `<YOUR_PRIVATE_KEY>` with your private key
	ctx = context.WithValue(ctx, coboWaas2.ContextPortalSigner, crypto.Ed25519Signer{
		Secret: "<YOUR_PRIVATE_KEY>",
	})
	resp, r, err := apiClient.PaymentAPI.CreateTopUpAddresses(ctx).
		CreateTopUpAddresses(createTopUpAddresses).
		Execute()
	if err != nil {
		fmt.Fprintf(os.Stderr, "Error when calling `PaymentAPI.CreateTopUpAddresses``: %v\n", err)
		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
	}
	// response from `CreateTopUpAddresses`: CreateTopUpAddresses201Response
	fmt.Fprintf(os.Stdout, "Response from `PaymentAPI.CreateTopUpAddresses`: %v\n", resp)
}

const CoboWaas2 = require("@cobo/cobo-waas2");
// Initialize the API client
const apiClient = CoboWaas2.ApiClient.instance;
// Select the development environment. To use the production environment, replace `Env.DEV` with `Env.PROD`
apiClient.setEnv(CoboWaas2.Env.DEV);
// Replace `<YOUR_PRIVATE_KEY>` with your private key
apiClient.setPrivateKey("<YOUR_PRIVATE_KEY>");
// Call the API
const apiInstance = new CoboWaas2.PaymentApi();
const opts = {
  CreateTopUpAddresses: CoboWaas2.CreateTopUpAddresses.constructFromObject({
    token_id: "ETH_USDT",
    custom_payer_ids: ["O20250304-P1001-1001"],
  }),
};
apiInstance.createTopUpAddresses(opts).then(
  (data) => {
    console.log("API called successfully. Returned data: " + data);
  },
  (error) => {
    console.error(error);
  },
);

Authorizations

BIZ-API-KEY
string
header
required

The API key. For more details, refer to API key.

In the API playground, enter your API secret, and your API key will be accordingly calculated.

Body

application/json

The request body of the create top-up addresses operation.

The request body to batch create top-up addresses.

token_id
string
required

The token ID, which identifies the cryptocurrency.

Example:

"ETH_USDT"

custom_payer_ids
string[]
required

A list of unique custom payer IDs required to create top-up addresses.

Maximum array length: 50

Unique customer identifier on the merchant side, used to allocate a dedicated top-up address.

merchant_id
string

The merchant ID. If not provided, the default merchant created during organization initialization will be used.

Example:

"M1001"

Response

The information about created top-up addresses.

data
object[]