import cobo_waas2
from cobo_waas2.models.top_up_address import TopUpAddress
from cobo_waas2.models.update_top_up_address import UpdateTopUpAddress
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)
update_top_up_address = cobo_waas2.UpdateTopUpAddress(
token_id="ETH_USDT", custom_payer_id="payer_0001"
)
try:
# Update top-up address
api_response = api_instance.update_top_up_address(
update_top_up_address=update_top_up_address
)
print("The response of PaymentApi->update_top_up_address:\n")
pprint(api_response)
except Exception as e:
print("Exception when calling PaymentApi->update_top_up_address: %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.*;
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();
UpdateTopUpAddress updateTopUpAddress =
new UpdateTopUpAddress().tokenId("ETH_USDT").customPayerId("payer_0001");
try {
TopUpAddress result = apiInstance.updateTopUpAddress(updateTopUpAddress);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling PaymentApi#updateTopUpAddress");
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() {
updateTopUpAddress := *coboWaas2.NewUpdateTopUpAddress("ETH_USDT", "payer_0001")
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.UpdateTopUpAddress(ctx).
UpdateTopUpAddress(updateTopUpAddress).
Execute()
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `PaymentAPI.UpdateTopUpAddress``: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `UpdateTopUpAddress`: TopUpAddress
fmt.Fprintf(os.Stdout, "Response from `PaymentAPI.UpdateTopUpAddress`: %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 = {
UpdateTopUpAddress: CoboWaas2.UpdateTopUpAddress.constructFromObject({
token_id: "ETH_USDT",
custom_payer_id: "payer_0001",
}),
};
apiInstance.updateTopUpAddress(opts).then(
(data) => {
console.log("API called successfully. Returned data: " + data);
},
(error) => {
console.error(error);
},
);
{
"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"
}Update top-up address
This operation updates the dedicated top-up address assigned to a specific payer under a merchant on a specified chain.
You can update the top-up address for a given payer a maximum of 10 times. If you exceed this limit, the API request will return an error.
import cobo_waas2
from cobo_waas2.models.top_up_address import TopUpAddress
from cobo_waas2.models.update_top_up_address import UpdateTopUpAddress
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)
update_top_up_address = cobo_waas2.UpdateTopUpAddress(
token_id="ETH_USDT", custom_payer_id="payer_0001"
)
try:
# Update top-up address
api_response = api_instance.update_top_up_address(
update_top_up_address=update_top_up_address
)
print("The response of PaymentApi->update_top_up_address:\n")
pprint(api_response)
except Exception as e:
print("Exception when calling PaymentApi->update_top_up_address: %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.*;
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();
UpdateTopUpAddress updateTopUpAddress =
new UpdateTopUpAddress().tokenId("ETH_USDT").customPayerId("payer_0001");
try {
TopUpAddress result = apiInstance.updateTopUpAddress(updateTopUpAddress);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling PaymentApi#updateTopUpAddress");
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() {
updateTopUpAddress := *coboWaas2.NewUpdateTopUpAddress("ETH_USDT", "payer_0001")
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.UpdateTopUpAddress(ctx).
UpdateTopUpAddress(updateTopUpAddress).
Execute()
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `PaymentAPI.UpdateTopUpAddress``: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `UpdateTopUpAddress`: TopUpAddress
fmt.Fprintf(os.Stdout, "Response from `PaymentAPI.UpdateTopUpAddress`: %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 = {
UpdateTopUpAddress: CoboWaas2.UpdateTopUpAddress.constructFromObject({
token_id: "ETH_USDT",
custom_payer_id: "payer_0001",
}),
};
apiInstance.updateTopUpAddress(opts).then(
(data) => {
console.log("API called successfully. Returned data: " + data);
},
(error) => {
console.error(error);
},
);
{
"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.top_up_address import TopUpAddress
from cobo_waas2.models.update_top_up_address import UpdateTopUpAddress
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)
update_top_up_address = cobo_waas2.UpdateTopUpAddress(
token_id="ETH_USDT", custom_payer_id="payer_0001"
)
try:
# Update top-up address
api_response = api_instance.update_top_up_address(
update_top_up_address=update_top_up_address
)
print("The response of PaymentApi->update_top_up_address:\n")
pprint(api_response)
except Exception as e:
print("Exception when calling PaymentApi->update_top_up_address: %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.*;
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();
UpdateTopUpAddress updateTopUpAddress =
new UpdateTopUpAddress().tokenId("ETH_USDT").customPayerId("payer_0001");
try {
TopUpAddress result = apiInstance.updateTopUpAddress(updateTopUpAddress);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling PaymentApi#updateTopUpAddress");
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() {
updateTopUpAddress := *coboWaas2.NewUpdateTopUpAddress("ETH_USDT", "payer_0001")
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.UpdateTopUpAddress(ctx).
UpdateTopUpAddress(updateTopUpAddress).
Execute()
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `PaymentAPI.UpdateTopUpAddress``: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `UpdateTopUpAddress`: TopUpAddress
fmt.Fprintf(os.Stdout, "Response from `PaymentAPI.UpdateTopUpAddress`: %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 = {
UpdateTopUpAddress: CoboWaas2.UpdateTopUpAddress.constructFromObject({
token_id: "ETH_USDT",
custom_payer_id: "payer_0001",
}),
};
apiInstance.updateTopUpAddress(opts).then(
(data) => {
console.log("API called successfully. Returned data: " + data);
},
(error) => {
console.error(error);
},
);
Authorizations
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
The request body to update top-up address.
The request body to update top-up address.
The token ID, which is a unique identifier that specifies both the blockchain network and cryptocurrency token in the format {CHAIN}_{TOKEN}. Supported values include:
- USDC:
ETH_USDC,ARBITRUM_USDCOIN,SOL_USDC,BASE_USDC,MATIC_USDC2,BSC_USDC - USDT:
TRON_USDT,ETH_USDT,ARBITRUM_USDT,SOL_USDT,BASE_USDT,MATIC_USDT,BSC_USDT
"ETH_USDT"
A unique identifier assigned by the developer to track and identify individual payers in their system.
"payer_0001"
The merchant ID.
"M1001"
Response
Top-up address updated successfully.
The dedicated top-up address assigned to a specific payer under a merchant on a specified chain.
"0x1234567890abcdef..."
A unique identifier assigned by Cobo to track and identify individual payers.
"P20250619T0310056d7aa"
A unique identifier assigned by the developer to track and identify individual payers in their system.
"user_abc_10001"
The merchant ID.
"M1001"
The token ID, which is a unique identifier that specifies both the blockchain network and cryptocurrency token in the format {CHAIN}_{TOKEN}.
"ETH_USDT"
The minimum top-up amount allowed for this address. Top-ups below this threshold will not be credited to merchant or developer funds.
"0.1"
The chain ID.
"ETH"
The developer fee rate applied to top-up transactions made to this address. Expressed as a decimal string where "0.1" represents 10%.
"0.01"
The creation time of the top-up address, represented as a UNIX timestamp in seconds.
1744689600
The last update time of the top-up address, represented as a UNIX timestamp in seconds.
1744689600
