curl --request POST \
--url https://api.hel.io/v1/paylink/create/api-key \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"price": "<string>",
"pricingCurrency": "<string>",
"features": {
"canChangeQuantity": true,
"requireQuantityLimits": true,
"canChangePrice": true,
"isEscrowed": true,
"showDiscountCode": true,
"requireAllowlist": true,
"requireRaffle": true,
"shouldRedirectOnSuccess": true,
"isSubscription": true,
"showDetailsForCharge": true,
"isEventEnabled": true,
"requireEmail": true,
"requireDiscordUsername": true,
"requireDiscordLogin": true,
"requireFullName": true,
"requireTwitterUsername": true,
"requireTelegramUsername": true,
"requireCountry": true,
"requireDeliveryAddress": true,
"requirePhoneNumber": true,
"requireProductDetails": true,
"requireMaxTransactions": true,
"requireNftGate": true,
"requireDiscordAuth": true,
"requireAccessCode": true,
"requireXFollow": true,
"canSwapTokens": true,
"canPayWithCard": true,
"allowAffiliate": true,
"enableCountdown": true,
"customThemeEnabled": true,
"disableEmailReceipt": true
},
"recipients": [
{
"currencyId": "<string>",
"walletId": "<string>",
"sourceBlockchainEngine": "<string>"
}
],
"discountCodes": [
{
"percent": 123,
"token": "<string>",
"prId": "<string>",
"id": "<string>"
}
],
"minQuantity": 123,
"maxQuantity": 123,
"raffleDetails": {},
"redirectUrl": "<string>",
"redirectTimeout": 0,
"redirectQueryParams": [
{
"queryParamType": "WALLET_ADDRESS",
"value": "<string>"
}
],
"description": "<string>",
"notifySenderByEmail": false,
"notifyReceiverByEmail": false,
"addDiscordRole": false,
"discordRoleIds": [
"<string>"
],
"disabled": true,
"dynamic": true,
"content": {
"text": "<string>",
"mediaUrl": "<string>",
"mediaAttachmentId": "<string>"
},
"maxTransactions": 123,
"product": {
"name": "<string>",
"description": "<string>",
"active": true
},
"nftCollectionAddress": "<string>",
"discordAuthDetails": [
{
"serverId": "<string>",
"roleId": "<string>"
}
]
}
'import requests
url = "https://api.hel.io/v1/paylink/create/api-key"
payload = {
"name": "<string>",
"price": "<string>",
"pricingCurrency": "<string>",
"features": {
"canChangeQuantity": True,
"requireQuantityLimits": True,
"canChangePrice": True,
"isEscrowed": True,
"showDiscountCode": True,
"requireAllowlist": True,
"requireRaffle": True,
"shouldRedirectOnSuccess": True,
"isSubscription": True,
"showDetailsForCharge": True,
"isEventEnabled": True,
"requireEmail": True,
"requireDiscordUsername": True,
"requireDiscordLogin": True,
"requireFullName": True,
"requireTwitterUsername": True,
"requireTelegramUsername": True,
"requireCountry": True,
"requireDeliveryAddress": True,
"requirePhoneNumber": True,
"requireProductDetails": True,
"requireMaxTransactions": True,
"requireNftGate": True,
"requireDiscordAuth": True,
"requireAccessCode": True,
"requireXFollow": True,
"canSwapTokens": True,
"canPayWithCard": True,
"allowAffiliate": True,
"enableCountdown": True,
"customThemeEnabled": True,
"disableEmailReceipt": True
},
"recipients": [
{
"currencyId": "<string>",
"walletId": "<string>",
"sourceBlockchainEngine": "<string>"
}
],
"discountCodes": [
{
"percent": 123,
"token": "<string>",
"prId": "<string>",
"id": "<string>"
}
],
"minQuantity": 123,
"maxQuantity": 123,
"raffleDetails": {},
"redirectUrl": "<string>",
"redirectTimeout": 0,
"redirectQueryParams": [
{
"queryParamType": "WALLET_ADDRESS",
"value": "<string>"
}
],
"description": "<string>",
"notifySenderByEmail": False,
"notifyReceiverByEmail": False,
"addDiscordRole": False,
"discordRoleIds": ["<string>"],
"disabled": True,
"dynamic": True,
"content": {
"text": "<string>",
"mediaUrl": "<string>",
"mediaAttachmentId": "<string>"
},
"maxTransactions": 123,
"product": {
"name": "<string>",
"description": "<string>",
"active": True
},
"nftCollectionAddress": "<string>",
"discordAuthDetails": [
{
"serverId": "<string>",
"roleId": "<string>"
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
price: '<string>',
pricingCurrency: '<string>',
features: {
canChangeQuantity: true,
requireQuantityLimits: true,
canChangePrice: true,
isEscrowed: true,
showDiscountCode: true,
requireAllowlist: true,
requireRaffle: true,
shouldRedirectOnSuccess: true,
isSubscription: true,
showDetailsForCharge: true,
isEventEnabled: true,
requireEmail: true,
requireDiscordUsername: true,
requireDiscordLogin: true,
requireFullName: true,
requireTwitterUsername: true,
requireTelegramUsername: true,
requireCountry: true,
requireDeliveryAddress: true,
requirePhoneNumber: true,
requireProductDetails: true,
requireMaxTransactions: true,
requireNftGate: true,
requireDiscordAuth: true,
requireAccessCode: true,
requireXFollow: true,
canSwapTokens: true,
canPayWithCard: true,
allowAffiliate: true,
enableCountdown: true,
customThemeEnabled: true,
disableEmailReceipt: true
},
recipients: [
{
currencyId: '<string>',
walletId: '<string>',
sourceBlockchainEngine: '<string>'
}
],
discountCodes: [{percent: 123, token: '<string>', prId: '<string>', id: '<string>'}],
minQuantity: 123,
maxQuantity: 123,
raffleDetails: {},
redirectUrl: '<string>',
redirectTimeout: 0,
redirectQueryParams: [{queryParamType: 'WALLET_ADDRESS', value: '<string>'}],
description: '<string>',
notifySenderByEmail: false,
notifyReceiverByEmail: false,
addDiscordRole: false,
discordRoleIds: ['<string>'],
disabled: true,
dynamic: true,
content: {text: '<string>', mediaUrl: '<string>', mediaAttachmentId: '<string>'},
maxTransactions: 123,
product: {name: '<string>', description: '<string>', active: true},
nftCollectionAddress: '<string>',
discordAuthDetails: [{serverId: '<string>', roleId: '<string>'}]
})
};
fetch('https://api.hel.io/v1/paylink/create/api-key', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.hel.io/v1/paylink/create/api-key",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'price' => '<string>',
'pricingCurrency' => '<string>',
'features' => [
'canChangeQuantity' => true,
'requireQuantityLimits' => true,
'canChangePrice' => true,
'isEscrowed' => true,
'showDiscountCode' => true,
'requireAllowlist' => true,
'requireRaffle' => true,
'shouldRedirectOnSuccess' => true,
'isSubscription' => true,
'showDetailsForCharge' => true,
'isEventEnabled' => true,
'requireEmail' => true,
'requireDiscordUsername' => true,
'requireDiscordLogin' => true,
'requireFullName' => true,
'requireTwitterUsername' => true,
'requireTelegramUsername' => true,
'requireCountry' => true,
'requireDeliveryAddress' => true,
'requirePhoneNumber' => true,
'requireProductDetails' => true,
'requireMaxTransactions' => true,
'requireNftGate' => true,
'requireDiscordAuth' => true,
'requireAccessCode' => true,
'requireXFollow' => true,
'canSwapTokens' => true,
'canPayWithCard' => true,
'allowAffiliate' => true,
'enableCountdown' => true,
'customThemeEnabled' => true,
'disableEmailReceipt' => true
],
'recipients' => [
[
'currencyId' => '<string>',
'walletId' => '<string>',
'sourceBlockchainEngine' => '<string>'
]
],
'discountCodes' => [
[
'percent' => 123,
'token' => '<string>',
'prId' => '<string>',
'id' => '<string>'
]
],
'minQuantity' => 123,
'maxQuantity' => 123,
'raffleDetails' => [
],
'redirectUrl' => '<string>',
'redirectTimeout' => 0,
'redirectQueryParams' => [
[
'queryParamType' => 'WALLET_ADDRESS',
'value' => '<string>'
]
],
'description' => '<string>',
'notifySenderByEmail' => false,
'notifyReceiverByEmail' => false,
'addDiscordRole' => false,
'discordRoleIds' => [
'<string>'
],
'disabled' => true,
'dynamic' => true,
'content' => [
'text' => '<string>',
'mediaUrl' => '<string>',
'mediaAttachmentId' => '<string>'
],
'maxTransactions' => 123,
'product' => [
'name' => '<string>',
'description' => '<string>',
'active' => true
],
'nftCollectionAddress' => '<string>',
'discordAuthDetails' => [
[
'serverId' => '<string>',
'roleId' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.hel.io/v1/paylink/create/api-key"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"price\": \"<string>\",\n \"pricingCurrency\": \"<string>\",\n \"features\": {\n \"canChangeQuantity\": true,\n \"requireQuantityLimits\": true,\n \"canChangePrice\": true,\n \"isEscrowed\": true,\n \"showDiscountCode\": true,\n \"requireAllowlist\": true,\n \"requireRaffle\": true,\n \"shouldRedirectOnSuccess\": true,\n \"isSubscription\": true,\n \"showDetailsForCharge\": true,\n \"isEventEnabled\": true,\n \"requireEmail\": true,\n \"requireDiscordUsername\": true,\n \"requireDiscordLogin\": true,\n \"requireFullName\": true,\n \"requireTwitterUsername\": true,\n \"requireTelegramUsername\": true,\n \"requireCountry\": true,\n \"requireDeliveryAddress\": true,\n \"requirePhoneNumber\": true,\n \"requireProductDetails\": true,\n \"requireMaxTransactions\": true,\n \"requireNftGate\": true,\n \"requireDiscordAuth\": true,\n \"requireAccessCode\": true,\n \"requireXFollow\": true,\n \"canSwapTokens\": true,\n \"canPayWithCard\": true,\n \"allowAffiliate\": true,\n \"enableCountdown\": true,\n \"customThemeEnabled\": true,\n \"disableEmailReceipt\": true\n },\n \"recipients\": [\n {\n \"currencyId\": \"<string>\",\n \"walletId\": \"<string>\",\n \"sourceBlockchainEngine\": \"<string>\"\n }\n ],\n \"discountCodes\": [\n {\n \"percent\": 123,\n \"token\": \"<string>\",\n \"prId\": \"<string>\",\n \"id\": \"<string>\"\n }\n ],\n \"minQuantity\": 123,\n \"maxQuantity\": 123,\n \"raffleDetails\": {},\n \"redirectUrl\": \"<string>\",\n \"redirectTimeout\": 0,\n \"redirectQueryParams\": [\n {\n \"queryParamType\": \"WALLET_ADDRESS\",\n \"value\": \"<string>\"\n }\n ],\n \"description\": \"<string>\",\n \"notifySenderByEmail\": false,\n \"notifyReceiverByEmail\": false,\n \"addDiscordRole\": false,\n \"discordRoleIds\": [\n \"<string>\"\n ],\n \"disabled\": true,\n \"dynamic\": true,\n \"content\": {\n \"text\": \"<string>\",\n \"mediaUrl\": \"<string>\",\n \"mediaAttachmentId\": \"<string>\"\n },\n \"maxTransactions\": 123,\n \"product\": {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"active\": true\n },\n \"nftCollectionAddress\": \"<string>\",\n \"discordAuthDetails\": [\n {\n \"serverId\": \"<string>\",\n \"roleId\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.hel.io/v1/paylink/create/api-key")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"price\": \"<string>\",\n \"pricingCurrency\": \"<string>\",\n \"features\": {\n \"canChangeQuantity\": true,\n \"requireQuantityLimits\": true,\n \"canChangePrice\": true,\n \"isEscrowed\": true,\n \"showDiscountCode\": true,\n \"requireAllowlist\": true,\n \"requireRaffle\": true,\n \"shouldRedirectOnSuccess\": true,\n \"isSubscription\": true,\n \"showDetailsForCharge\": true,\n \"isEventEnabled\": true,\n \"requireEmail\": true,\n \"requireDiscordUsername\": true,\n \"requireDiscordLogin\": true,\n \"requireFullName\": true,\n \"requireTwitterUsername\": true,\n \"requireTelegramUsername\": true,\n \"requireCountry\": true,\n \"requireDeliveryAddress\": true,\n \"requirePhoneNumber\": true,\n \"requireProductDetails\": true,\n \"requireMaxTransactions\": true,\n \"requireNftGate\": true,\n \"requireDiscordAuth\": true,\n \"requireAccessCode\": true,\n \"requireXFollow\": true,\n \"canSwapTokens\": true,\n \"canPayWithCard\": true,\n \"allowAffiliate\": true,\n \"enableCountdown\": true,\n \"customThemeEnabled\": true,\n \"disableEmailReceipt\": true\n },\n \"recipients\": [\n {\n \"currencyId\": \"<string>\",\n \"walletId\": \"<string>\",\n \"sourceBlockchainEngine\": \"<string>\"\n }\n ],\n \"discountCodes\": [\n {\n \"percent\": 123,\n \"token\": \"<string>\",\n \"prId\": \"<string>\",\n \"id\": \"<string>\"\n }\n ],\n \"minQuantity\": 123,\n \"maxQuantity\": 123,\n \"raffleDetails\": {},\n \"redirectUrl\": \"<string>\",\n \"redirectTimeout\": 0,\n \"redirectQueryParams\": [\n {\n \"queryParamType\": \"WALLET_ADDRESS\",\n \"value\": \"<string>\"\n }\n ],\n \"description\": \"<string>\",\n \"notifySenderByEmail\": false,\n \"notifyReceiverByEmail\": false,\n \"addDiscordRole\": false,\n \"discordRoleIds\": [\n \"<string>\"\n ],\n \"disabled\": true,\n \"dynamic\": true,\n \"content\": {\n \"text\": \"<string>\",\n \"mediaUrl\": \"<string>\",\n \"mediaAttachmentId\": \"<string>\"\n },\n \"maxTransactions\": 123,\n \"product\": {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"active\": true\n },\n \"nftCollectionAddress\": \"<string>\",\n \"discordAuthDetails\": [\n {\n \"serverId\": \"<string>\",\n \"roleId\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hel.io/v1/paylink/create/api-key")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"price\": \"<string>\",\n \"pricingCurrency\": \"<string>\",\n \"features\": {\n \"canChangeQuantity\": true,\n \"requireQuantityLimits\": true,\n \"canChangePrice\": true,\n \"isEscrowed\": true,\n \"showDiscountCode\": true,\n \"requireAllowlist\": true,\n \"requireRaffle\": true,\n \"shouldRedirectOnSuccess\": true,\n \"isSubscription\": true,\n \"showDetailsForCharge\": true,\n \"isEventEnabled\": true,\n \"requireEmail\": true,\n \"requireDiscordUsername\": true,\n \"requireDiscordLogin\": true,\n \"requireFullName\": true,\n \"requireTwitterUsername\": true,\n \"requireTelegramUsername\": true,\n \"requireCountry\": true,\n \"requireDeliveryAddress\": true,\n \"requirePhoneNumber\": true,\n \"requireProductDetails\": true,\n \"requireMaxTransactions\": true,\n \"requireNftGate\": true,\n \"requireDiscordAuth\": true,\n \"requireAccessCode\": true,\n \"requireXFollow\": true,\n \"canSwapTokens\": true,\n \"canPayWithCard\": true,\n \"allowAffiliate\": true,\n \"enableCountdown\": true,\n \"customThemeEnabled\": true,\n \"disableEmailReceipt\": true\n },\n \"recipients\": [\n {\n \"currencyId\": \"<string>\",\n \"walletId\": \"<string>\",\n \"sourceBlockchainEngine\": \"<string>\"\n }\n ],\n \"discountCodes\": [\n {\n \"percent\": 123,\n \"token\": \"<string>\",\n \"prId\": \"<string>\",\n \"id\": \"<string>\"\n }\n ],\n \"minQuantity\": 123,\n \"maxQuantity\": 123,\n \"raffleDetails\": {},\n \"redirectUrl\": \"<string>\",\n \"redirectTimeout\": 0,\n \"redirectQueryParams\": [\n {\n \"queryParamType\": \"WALLET_ADDRESS\",\n \"value\": \"<string>\"\n }\n ],\n \"description\": \"<string>\",\n \"notifySenderByEmail\": false,\n \"notifyReceiverByEmail\": false,\n \"addDiscordRole\": false,\n \"discordRoleIds\": [\n \"<string>\"\n ],\n \"disabled\": true,\n \"dynamic\": true,\n \"content\": {\n \"text\": \"<string>\",\n \"mediaUrl\": \"<string>\",\n \"mediaAttachmentId\": \"<string>\"\n },\n \"maxTransactions\": 123,\n \"product\": {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"active\": true\n },\n \"nftCollectionAddress\": \"<string>\",\n \"discordAuthDetails\": [\n {\n \"serverId\": \"<string>\",\n \"roleId\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": "6812817fcf4943d0f0e4d5a1",
"platform": "HELIO",
"template": "OTHER",
"disabled": false,
"inactive": false,
"notifySenderByEmail": false,
"notifyReceiverByEmail": false,
"addDiscordRole": false,
"addTelegramGroup": false,
"features": {
"canChangeQuantity": false,
"canChangePrice": false,
"requireQuantityLimits": false,
"requireCountry": false,
"requireEmail": false,
"requireDeliveryAddress": false,
"requireDiscordUsername": false,
"requireDiscordLogin": false,
"requireFullName": false,
"requirePhoneNumber": false,
"requireTwitterUsername": false,
"requireTelegramUsername": false,
"requireProductDetails": false,
"requireMaxTransactions": false,
"requireNftGate": false,
"requireDiscordAuth": false,
"requireAccessCode": false,
"requireXFollow": false,
"requireRaffle": false,
"canSwapTokens": false,
"canPayWithCard": true,
"nftDropEnabled": false,
"showDiscountCode": false,
"isEscrowed": false,
"requireAllowlist": false,
"allowAffiliate": false,
"isEventEnabled": false,
"enableCountdown": false,
"requireCaptchaValidation": false,
"shouldRedirectOnSuccess": true,
"customThemeEnabled": false,
"isSubscription": false,
"showDetailsForCharge": false,
"hasRedirectQueryParams": true
},
"name": "Query Params Pay Link Test",
"discordAuthDetails": [],
"dynamic": false,
"affiliateDetails": null,
"price": "10000",
"normalizedPrice": "10000",
"redirectUrl": "https://www.google.com/",
"redirectTimeout": 3,
"redirectQueryParams": [
{
"queryParamType": "WALLET_ADDRESS"
}
],
"content": {},
"creator": {
"id": "667c1f9352919e407156128a",
"userType": "MERCHANT",
"email": "jesse.baffour@helio.co",
"name": "",
"isDisabled": false,
"kycVerified": false,
"platformDetails": {
"platform": "HELIO"
}
},
"company": {
"id": "667c1f9352919e407156128c",
"name": "Helio",
"email": "jesse@hel.io",
"websiteUrl": "",
"discordUsername": "",
"address": "",
"phoneNumber": "",
"escrowFunds": false,
"twitterConfirmed": false,
"kycVerified": false,
"kybVerified": false
},
"currency": {
"id": "6340313846e4f91b8abc519b",
"name": "USD Coin",
"decimals": 6,
"order": 1,
"mintAddress": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"coinMarketCapId": 3408,
"symbol": "USDC",
"symbolPrefix": "$",
"type": "DIGITAL",
"iconUrl": "USDC.svg",
"features": [
"PAYMENT_PRICING",
"PAYMENT_RECIPIENT",
"SWAP"
],
"blockchain": {
"id": "6340313846e4f91b8abc515c",
"name": "SOL",
"symbol": "SOL",
"engine": {
"id": "63b6b1200cfb4b3f6131f2b4",
"type": "SOL"
}
}
},
"wallet": {
"id": "667c1f9352919e4071561294",
"name": "",
"publicKey": "7YancRyNQyp9s6G7YNwx9H93UqswoKWqF9GuNJPufyvW",
"btcProperties": null,
"type": "EXTENSION"
},
"recipients": [
{
"currency": {
"id": "6340313846e4f91b8abc519b",
"name": "USD Coin",
"decimals": 6,
"order": 1,
"mintAddress": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"coinMarketCapId": 3408,
"symbol": "USDC",
"symbolPrefix": "$",
"type": "DIGITAL",
"iconUrl": "USDC.svg",
"features": [
"PAYMENT_PRICING",
"PAYMENT_RECIPIENT",
"SWAP"
],
"blockchain": {
"id": "6340313846e4f91b8abc515c",
"name": "SOL",
"symbol": "SOL",
"engine": {
"id": "63b6b1200cfb4b3f6131f2b4",
"type": "SOL"
}
}
},
"wallet": {
"id": "667c1f9352919e4071561294",
"name": "",
"publicKey": "7YancRyNQyp9s6G7YNwx9H93UqswoKWqF9GuNJPufyvW",
"btcProperties": null,
"type": "EXTENSION",
"blockchainEngine": {
"id": "63b6b1200cfb4b3f6131f2b4",
"type": "SOL"
}
}
}
],
"volume": 0,
"sales": "0",
"product": null,
"additionalImages": [],
"additionalImageUrls": [],
"discountCodes": [],
"discordRoleIds": [],
"telegramGroupIds": [],
"pricingCurrency": {
"id": "6340313846e4f91b8abc519b",
"name": "USD Coin",
"decimals": 6,
"order": 1,
"mintAddress": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"coinMarketCapId": 3408,
"symbol": "USDC",
"symbolPrefix": "$",
"type": "DIGITAL",
"iconUrl": "USDC.svg",
"features": [
"PAYMENT_PRICING",
"PAYMENT_RECIPIENT",
"SWAP"
],
"blockchain": {
"id": "6340313846e4f91b8abc515c",
"name": "SOL",
"symbol": "SOL",
"engine": {
"id": "63b6b1200cfb4b3f6131f2b4",
"type": "SOL"
}
}
},
"createdAt": "2025-04-30T20:01:03.910Z"
}{
"message": "Api key or token is invalid",
"code": 401
}Create a Pay Link
Create a new paylink using your API key with full control over pricing, currency, and payout configuration.
curl --request POST \
--url https://api.hel.io/v1/paylink/create/api-key \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"price": "<string>",
"pricingCurrency": "<string>",
"features": {
"canChangeQuantity": true,
"requireQuantityLimits": true,
"canChangePrice": true,
"isEscrowed": true,
"showDiscountCode": true,
"requireAllowlist": true,
"requireRaffle": true,
"shouldRedirectOnSuccess": true,
"isSubscription": true,
"showDetailsForCharge": true,
"isEventEnabled": true,
"requireEmail": true,
"requireDiscordUsername": true,
"requireDiscordLogin": true,
"requireFullName": true,
"requireTwitterUsername": true,
"requireTelegramUsername": true,
"requireCountry": true,
"requireDeliveryAddress": true,
"requirePhoneNumber": true,
"requireProductDetails": true,
"requireMaxTransactions": true,
"requireNftGate": true,
"requireDiscordAuth": true,
"requireAccessCode": true,
"requireXFollow": true,
"canSwapTokens": true,
"canPayWithCard": true,
"allowAffiliate": true,
"enableCountdown": true,
"customThemeEnabled": true,
"disableEmailReceipt": true
},
"recipients": [
{
"currencyId": "<string>",
"walletId": "<string>",
"sourceBlockchainEngine": "<string>"
}
],
"discountCodes": [
{
"percent": 123,
"token": "<string>",
"prId": "<string>",
"id": "<string>"
}
],
"minQuantity": 123,
"maxQuantity": 123,
"raffleDetails": {},
"redirectUrl": "<string>",
"redirectTimeout": 0,
"redirectQueryParams": [
{
"queryParamType": "WALLET_ADDRESS",
"value": "<string>"
}
],
"description": "<string>",
"notifySenderByEmail": false,
"notifyReceiverByEmail": false,
"addDiscordRole": false,
"discordRoleIds": [
"<string>"
],
"disabled": true,
"dynamic": true,
"content": {
"text": "<string>",
"mediaUrl": "<string>",
"mediaAttachmentId": "<string>"
},
"maxTransactions": 123,
"product": {
"name": "<string>",
"description": "<string>",
"active": true
},
"nftCollectionAddress": "<string>",
"discordAuthDetails": [
{
"serverId": "<string>",
"roleId": "<string>"
}
]
}
'import requests
url = "https://api.hel.io/v1/paylink/create/api-key"
payload = {
"name": "<string>",
"price": "<string>",
"pricingCurrency": "<string>",
"features": {
"canChangeQuantity": True,
"requireQuantityLimits": True,
"canChangePrice": True,
"isEscrowed": True,
"showDiscountCode": True,
"requireAllowlist": True,
"requireRaffle": True,
"shouldRedirectOnSuccess": True,
"isSubscription": True,
"showDetailsForCharge": True,
"isEventEnabled": True,
"requireEmail": True,
"requireDiscordUsername": True,
"requireDiscordLogin": True,
"requireFullName": True,
"requireTwitterUsername": True,
"requireTelegramUsername": True,
"requireCountry": True,
"requireDeliveryAddress": True,
"requirePhoneNumber": True,
"requireProductDetails": True,
"requireMaxTransactions": True,
"requireNftGate": True,
"requireDiscordAuth": True,
"requireAccessCode": True,
"requireXFollow": True,
"canSwapTokens": True,
"canPayWithCard": True,
"allowAffiliate": True,
"enableCountdown": True,
"customThemeEnabled": True,
"disableEmailReceipt": True
},
"recipients": [
{
"currencyId": "<string>",
"walletId": "<string>",
"sourceBlockchainEngine": "<string>"
}
],
"discountCodes": [
{
"percent": 123,
"token": "<string>",
"prId": "<string>",
"id": "<string>"
}
],
"minQuantity": 123,
"maxQuantity": 123,
"raffleDetails": {},
"redirectUrl": "<string>",
"redirectTimeout": 0,
"redirectQueryParams": [
{
"queryParamType": "WALLET_ADDRESS",
"value": "<string>"
}
],
"description": "<string>",
"notifySenderByEmail": False,
"notifyReceiverByEmail": False,
"addDiscordRole": False,
"discordRoleIds": ["<string>"],
"disabled": True,
"dynamic": True,
"content": {
"text": "<string>",
"mediaUrl": "<string>",
"mediaAttachmentId": "<string>"
},
"maxTransactions": 123,
"product": {
"name": "<string>",
"description": "<string>",
"active": True
},
"nftCollectionAddress": "<string>",
"discordAuthDetails": [
{
"serverId": "<string>",
"roleId": "<string>"
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
price: '<string>',
pricingCurrency: '<string>',
features: {
canChangeQuantity: true,
requireQuantityLimits: true,
canChangePrice: true,
isEscrowed: true,
showDiscountCode: true,
requireAllowlist: true,
requireRaffle: true,
shouldRedirectOnSuccess: true,
isSubscription: true,
showDetailsForCharge: true,
isEventEnabled: true,
requireEmail: true,
requireDiscordUsername: true,
requireDiscordLogin: true,
requireFullName: true,
requireTwitterUsername: true,
requireTelegramUsername: true,
requireCountry: true,
requireDeliveryAddress: true,
requirePhoneNumber: true,
requireProductDetails: true,
requireMaxTransactions: true,
requireNftGate: true,
requireDiscordAuth: true,
requireAccessCode: true,
requireXFollow: true,
canSwapTokens: true,
canPayWithCard: true,
allowAffiliate: true,
enableCountdown: true,
customThemeEnabled: true,
disableEmailReceipt: true
},
recipients: [
{
currencyId: '<string>',
walletId: '<string>',
sourceBlockchainEngine: '<string>'
}
],
discountCodes: [{percent: 123, token: '<string>', prId: '<string>', id: '<string>'}],
minQuantity: 123,
maxQuantity: 123,
raffleDetails: {},
redirectUrl: '<string>',
redirectTimeout: 0,
redirectQueryParams: [{queryParamType: 'WALLET_ADDRESS', value: '<string>'}],
description: '<string>',
notifySenderByEmail: false,
notifyReceiverByEmail: false,
addDiscordRole: false,
discordRoleIds: ['<string>'],
disabled: true,
dynamic: true,
content: {text: '<string>', mediaUrl: '<string>', mediaAttachmentId: '<string>'},
maxTransactions: 123,
product: {name: '<string>', description: '<string>', active: true},
nftCollectionAddress: '<string>',
discordAuthDetails: [{serverId: '<string>', roleId: '<string>'}]
})
};
fetch('https://api.hel.io/v1/paylink/create/api-key', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.hel.io/v1/paylink/create/api-key",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'price' => '<string>',
'pricingCurrency' => '<string>',
'features' => [
'canChangeQuantity' => true,
'requireQuantityLimits' => true,
'canChangePrice' => true,
'isEscrowed' => true,
'showDiscountCode' => true,
'requireAllowlist' => true,
'requireRaffle' => true,
'shouldRedirectOnSuccess' => true,
'isSubscription' => true,
'showDetailsForCharge' => true,
'isEventEnabled' => true,
'requireEmail' => true,
'requireDiscordUsername' => true,
'requireDiscordLogin' => true,
'requireFullName' => true,
'requireTwitterUsername' => true,
'requireTelegramUsername' => true,
'requireCountry' => true,
'requireDeliveryAddress' => true,
'requirePhoneNumber' => true,
'requireProductDetails' => true,
'requireMaxTransactions' => true,
'requireNftGate' => true,
'requireDiscordAuth' => true,
'requireAccessCode' => true,
'requireXFollow' => true,
'canSwapTokens' => true,
'canPayWithCard' => true,
'allowAffiliate' => true,
'enableCountdown' => true,
'customThemeEnabled' => true,
'disableEmailReceipt' => true
],
'recipients' => [
[
'currencyId' => '<string>',
'walletId' => '<string>',
'sourceBlockchainEngine' => '<string>'
]
],
'discountCodes' => [
[
'percent' => 123,
'token' => '<string>',
'prId' => '<string>',
'id' => '<string>'
]
],
'minQuantity' => 123,
'maxQuantity' => 123,
'raffleDetails' => [
],
'redirectUrl' => '<string>',
'redirectTimeout' => 0,
'redirectQueryParams' => [
[
'queryParamType' => 'WALLET_ADDRESS',
'value' => '<string>'
]
],
'description' => '<string>',
'notifySenderByEmail' => false,
'notifyReceiverByEmail' => false,
'addDiscordRole' => false,
'discordRoleIds' => [
'<string>'
],
'disabled' => true,
'dynamic' => true,
'content' => [
'text' => '<string>',
'mediaUrl' => '<string>',
'mediaAttachmentId' => '<string>'
],
'maxTransactions' => 123,
'product' => [
'name' => '<string>',
'description' => '<string>',
'active' => true
],
'nftCollectionAddress' => '<string>',
'discordAuthDetails' => [
[
'serverId' => '<string>',
'roleId' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.hel.io/v1/paylink/create/api-key"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"price\": \"<string>\",\n \"pricingCurrency\": \"<string>\",\n \"features\": {\n \"canChangeQuantity\": true,\n \"requireQuantityLimits\": true,\n \"canChangePrice\": true,\n \"isEscrowed\": true,\n \"showDiscountCode\": true,\n \"requireAllowlist\": true,\n \"requireRaffle\": true,\n \"shouldRedirectOnSuccess\": true,\n \"isSubscription\": true,\n \"showDetailsForCharge\": true,\n \"isEventEnabled\": true,\n \"requireEmail\": true,\n \"requireDiscordUsername\": true,\n \"requireDiscordLogin\": true,\n \"requireFullName\": true,\n \"requireTwitterUsername\": true,\n \"requireTelegramUsername\": true,\n \"requireCountry\": true,\n \"requireDeliveryAddress\": true,\n \"requirePhoneNumber\": true,\n \"requireProductDetails\": true,\n \"requireMaxTransactions\": true,\n \"requireNftGate\": true,\n \"requireDiscordAuth\": true,\n \"requireAccessCode\": true,\n \"requireXFollow\": true,\n \"canSwapTokens\": true,\n \"canPayWithCard\": true,\n \"allowAffiliate\": true,\n \"enableCountdown\": true,\n \"customThemeEnabled\": true,\n \"disableEmailReceipt\": true\n },\n \"recipients\": [\n {\n \"currencyId\": \"<string>\",\n \"walletId\": \"<string>\",\n \"sourceBlockchainEngine\": \"<string>\"\n }\n ],\n \"discountCodes\": [\n {\n \"percent\": 123,\n \"token\": \"<string>\",\n \"prId\": \"<string>\",\n \"id\": \"<string>\"\n }\n ],\n \"minQuantity\": 123,\n \"maxQuantity\": 123,\n \"raffleDetails\": {},\n \"redirectUrl\": \"<string>\",\n \"redirectTimeout\": 0,\n \"redirectQueryParams\": [\n {\n \"queryParamType\": \"WALLET_ADDRESS\",\n \"value\": \"<string>\"\n }\n ],\n \"description\": \"<string>\",\n \"notifySenderByEmail\": false,\n \"notifyReceiverByEmail\": false,\n \"addDiscordRole\": false,\n \"discordRoleIds\": [\n \"<string>\"\n ],\n \"disabled\": true,\n \"dynamic\": true,\n \"content\": {\n \"text\": \"<string>\",\n \"mediaUrl\": \"<string>\",\n \"mediaAttachmentId\": \"<string>\"\n },\n \"maxTransactions\": 123,\n \"product\": {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"active\": true\n },\n \"nftCollectionAddress\": \"<string>\",\n \"discordAuthDetails\": [\n {\n \"serverId\": \"<string>\",\n \"roleId\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.hel.io/v1/paylink/create/api-key")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"price\": \"<string>\",\n \"pricingCurrency\": \"<string>\",\n \"features\": {\n \"canChangeQuantity\": true,\n \"requireQuantityLimits\": true,\n \"canChangePrice\": true,\n \"isEscrowed\": true,\n \"showDiscountCode\": true,\n \"requireAllowlist\": true,\n \"requireRaffle\": true,\n \"shouldRedirectOnSuccess\": true,\n \"isSubscription\": true,\n \"showDetailsForCharge\": true,\n \"isEventEnabled\": true,\n \"requireEmail\": true,\n \"requireDiscordUsername\": true,\n \"requireDiscordLogin\": true,\n \"requireFullName\": true,\n \"requireTwitterUsername\": true,\n \"requireTelegramUsername\": true,\n \"requireCountry\": true,\n \"requireDeliveryAddress\": true,\n \"requirePhoneNumber\": true,\n \"requireProductDetails\": true,\n \"requireMaxTransactions\": true,\n \"requireNftGate\": true,\n \"requireDiscordAuth\": true,\n \"requireAccessCode\": true,\n \"requireXFollow\": true,\n \"canSwapTokens\": true,\n \"canPayWithCard\": true,\n \"allowAffiliate\": true,\n \"enableCountdown\": true,\n \"customThemeEnabled\": true,\n \"disableEmailReceipt\": true\n },\n \"recipients\": [\n {\n \"currencyId\": \"<string>\",\n \"walletId\": \"<string>\",\n \"sourceBlockchainEngine\": \"<string>\"\n }\n ],\n \"discountCodes\": [\n {\n \"percent\": 123,\n \"token\": \"<string>\",\n \"prId\": \"<string>\",\n \"id\": \"<string>\"\n }\n ],\n \"minQuantity\": 123,\n \"maxQuantity\": 123,\n \"raffleDetails\": {},\n \"redirectUrl\": \"<string>\",\n \"redirectTimeout\": 0,\n \"redirectQueryParams\": [\n {\n \"queryParamType\": \"WALLET_ADDRESS\",\n \"value\": \"<string>\"\n }\n ],\n \"description\": \"<string>\",\n \"notifySenderByEmail\": false,\n \"notifyReceiverByEmail\": false,\n \"addDiscordRole\": false,\n \"discordRoleIds\": [\n \"<string>\"\n ],\n \"disabled\": true,\n \"dynamic\": true,\n \"content\": {\n \"text\": \"<string>\",\n \"mediaUrl\": \"<string>\",\n \"mediaAttachmentId\": \"<string>\"\n },\n \"maxTransactions\": 123,\n \"product\": {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"active\": true\n },\n \"nftCollectionAddress\": \"<string>\",\n \"discordAuthDetails\": [\n {\n \"serverId\": \"<string>\",\n \"roleId\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hel.io/v1/paylink/create/api-key")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"price\": \"<string>\",\n \"pricingCurrency\": \"<string>\",\n \"features\": {\n \"canChangeQuantity\": true,\n \"requireQuantityLimits\": true,\n \"canChangePrice\": true,\n \"isEscrowed\": true,\n \"showDiscountCode\": true,\n \"requireAllowlist\": true,\n \"requireRaffle\": true,\n \"shouldRedirectOnSuccess\": true,\n \"isSubscription\": true,\n \"showDetailsForCharge\": true,\n \"isEventEnabled\": true,\n \"requireEmail\": true,\n \"requireDiscordUsername\": true,\n \"requireDiscordLogin\": true,\n \"requireFullName\": true,\n \"requireTwitterUsername\": true,\n \"requireTelegramUsername\": true,\n \"requireCountry\": true,\n \"requireDeliveryAddress\": true,\n \"requirePhoneNumber\": true,\n \"requireProductDetails\": true,\n \"requireMaxTransactions\": true,\n \"requireNftGate\": true,\n \"requireDiscordAuth\": true,\n \"requireAccessCode\": true,\n \"requireXFollow\": true,\n \"canSwapTokens\": true,\n \"canPayWithCard\": true,\n \"allowAffiliate\": true,\n \"enableCountdown\": true,\n \"customThemeEnabled\": true,\n \"disableEmailReceipt\": true\n },\n \"recipients\": [\n {\n \"currencyId\": \"<string>\",\n \"walletId\": \"<string>\",\n \"sourceBlockchainEngine\": \"<string>\"\n }\n ],\n \"discountCodes\": [\n {\n \"percent\": 123,\n \"token\": \"<string>\",\n \"prId\": \"<string>\",\n \"id\": \"<string>\"\n }\n ],\n \"minQuantity\": 123,\n \"maxQuantity\": 123,\n \"raffleDetails\": {},\n \"redirectUrl\": \"<string>\",\n \"redirectTimeout\": 0,\n \"redirectQueryParams\": [\n {\n \"queryParamType\": \"WALLET_ADDRESS\",\n \"value\": \"<string>\"\n }\n ],\n \"description\": \"<string>\",\n \"notifySenderByEmail\": false,\n \"notifyReceiverByEmail\": false,\n \"addDiscordRole\": false,\n \"discordRoleIds\": [\n \"<string>\"\n ],\n \"disabled\": true,\n \"dynamic\": true,\n \"content\": {\n \"text\": \"<string>\",\n \"mediaUrl\": \"<string>\",\n \"mediaAttachmentId\": \"<string>\"\n },\n \"maxTransactions\": 123,\n \"product\": {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"active\": true\n },\n \"nftCollectionAddress\": \"<string>\",\n \"discordAuthDetails\": [\n {\n \"serverId\": \"<string>\",\n \"roleId\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": "6812817fcf4943d0f0e4d5a1",
"platform": "HELIO",
"template": "OTHER",
"disabled": false,
"inactive": false,
"notifySenderByEmail": false,
"notifyReceiverByEmail": false,
"addDiscordRole": false,
"addTelegramGroup": false,
"features": {
"canChangeQuantity": false,
"canChangePrice": false,
"requireQuantityLimits": false,
"requireCountry": false,
"requireEmail": false,
"requireDeliveryAddress": false,
"requireDiscordUsername": false,
"requireDiscordLogin": false,
"requireFullName": false,
"requirePhoneNumber": false,
"requireTwitterUsername": false,
"requireTelegramUsername": false,
"requireProductDetails": false,
"requireMaxTransactions": false,
"requireNftGate": false,
"requireDiscordAuth": false,
"requireAccessCode": false,
"requireXFollow": false,
"requireRaffle": false,
"canSwapTokens": false,
"canPayWithCard": true,
"nftDropEnabled": false,
"showDiscountCode": false,
"isEscrowed": false,
"requireAllowlist": false,
"allowAffiliate": false,
"isEventEnabled": false,
"enableCountdown": false,
"requireCaptchaValidation": false,
"shouldRedirectOnSuccess": true,
"customThemeEnabled": false,
"isSubscription": false,
"showDetailsForCharge": false,
"hasRedirectQueryParams": true
},
"name": "Query Params Pay Link Test",
"discordAuthDetails": [],
"dynamic": false,
"affiliateDetails": null,
"price": "10000",
"normalizedPrice": "10000",
"redirectUrl": "https://www.google.com/",
"redirectTimeout": 3,
"redirectQueryParams": [
{
"queryParamType": "WALLET_ADDRESS"
}
],
"content": {},
"creator": {
"id": "667c1f9352919e407156128a",
"userType": "MERCHANT",
"email": "jesse.baffour@helio.co",
"name": "",
"isDisabled": false,
"kycVerified": false,
"platformDetails": {
"platform": "HELIO"
}
},
"company": {
"id": "667c1f9352919e407156128c",
"name": "Helio",
"email": "jesse@hel.io",
"websiteUrl": "",
"discordUsername": "",
"address": "",
"phoneNumber": "",
"escrowFunds": false,
"twitterConfirmed": false,
"kycVerified": false,
"kybVerified": false
},
"currency": {
"id": "6340313846e4f91b8abc519b",
"name": "USD Coin",
"decimals": 6,
"order": 1,
"mintAddress": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"coinMarketCapId": 3408,
"symbol": "USDC",
"symbolPrefix": "$",
"type": "DIGITAL",
"iconUrl": "USDC.svg",
"features": [
"PAYMENT_PRICING",
"PAYMENT_RECIPIENT",
"SWAP"
],
"blockchain": {
"id": "6340313846e4f91b8abc515c",
"name": "SOL",
"symbol": "SOL",
"engine": {
"id": "63b6b1200cfb4b3f6131f2b4",
"type": "SOL"
}
}
},
"wallet": {
"id": "667c1f9352919e4071561294",
"name": "",
"publicKey": "7YancRyNQyp9s6G7YNwx9H93UqswoKWqF9GuNJPufyvW",
"btcProperties": null,
"type": "EXTENSION"
},
"recipients": [
{
"currency": {
"id": "6340313846e4f91b8abc519b",
"name": "USD Coin",
"decimals": 6,
"order": 1,
"mintAddress": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"coinMarketCapId": 3408,
"symbol": "USDC",
"symbolPrefix": "$",
"type": "DIGITAL",
"iconUrl": "USDC.svg",
"features": [
"PAYMENT_PRICING",
"PAYMENT_RECIPIENT",
"SWAP"
],
"blockchain": {
"id": "6340313846e4f91b8abc515c",
"name": "SOL",
"symbol": "SOL",
"engine": {
"id": "63b6b1200cfb4b3f6131f2b4",
"type": "SOL"
}
}
},
"wallet": {
"id": "667c1f9352919e4071561294",
"name": "",
"publicKey": "7YancRyNQyp9s6G7YNwx9H93UqswoKWqF9GuNJPufyvW",
"btcProperties": null,
"type": "EXTENSION",
"blockchainEngine": {
"id": "63b6b1200cfb4b3f6131f2b4",
"type": "SOL"
}
}
}
],
"volume": 0,
"sales": "0",
"product": null,
"additionalImages": [],
"additionalImageUrls": [],
"discountCodes": [],
"discordRoleIds": [],
"telegramGroupIds": [],
"pricingCurrency": {
"id": "6340313846e4f91b8abc519b",
"name": "USD Coin",
"decimals": 6,
"order": 1,
"mintAddress": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"coinMarketCapId": 3408,
"symbol": "USDC",
"symbolPrefix": "$",
"type": "DIGITAL",
"iconUrl": "USDC.svg",
"features": [
"PAYMENT_PRICING",
"PAYMENT_RECIPIENT",
"SWAP"
],
"blockchain": {
"id": "6340313846e4f91b8abc515c",
"name": "SOL",
"symbol": "SOL",
"engine": {
"id": "63b6b1200cfb4b3f6131f2b4",
"type": "SOL"
}
}
},
"createdAt": "2025-04-30T20:01:03.910Z"
}{
"message": "Api key or token is invalid",
"code": 401
}api.hel.io/v1 and generate API keys there. For the development environment, use api.dev.hel.io/v1 and generate API keys from moonpay.dev.hel.io.Authorizations
Authentication using JWT token
Query Parameters
API key can be generated on helio dashboard settings page
Body
Name or title of the pay link product or service.
Price is an int64 represented in base units of the currency, e.g. "1000000" = 1 USDC.
Currency ID used to price the paylink (fiat or crypto). Retrieve this value from the Get Currencies endpoint.
Feature flags and behavioral options for the pay link.
Show child attributes
Show child attributes
List of recipient wallets and currencies.
Show child attributes
Show child attributes
Layout or presentation style of the pay link checkout.
PRODUCT, SUBSCRIPTION, PRE_SALE, SINGLE_NFT, VIDEO, DISCORD_MEMBERSHIP, INVOICE, EMBEDDED, LINK_OR_FILE, TRADING_VIEW, EVENT, WOO_COMMERCE, OTHER, LEGACY, RAFFLE, SHOPIFY, BLINK Array of discount codes applicable to the pay link.
Show child attributes
Show child attributes
Restricts sales to a transaction count or specific Discord ID.
transaction, discordId Minimum quantity a user must purchase.
Maximum quantity a user can purchase.
Settings for affiliate tracking and revenue sharing.
Show child attributes
Show child attributes
Configuration for raffle-based sales.
URL to redirect users after completing the payment.
Delay (in seconds) before redirecting the user to redirectUrl after a successful payment. Use 0 for an instant redirect, or 3 to show the confirmation screen for 3 seconds before redirecting.
0, 3 0
Appends dynamic query parameters (e.g. the payer's wallet address) to the redirect URL after a successful payment. Requires shouldRedirectOnSuccess and hasRedirectQueryParams to be enabled in features.
Show child attributes
Show child attributes
Indicates whether the pay link was created via private or public API.
PRIVATE_API, PUBLIC_API Subscription settings for recurring payments.
Show child attributes
Show child attributes
Description of the product or service offered.
If true, notifies the sender via email after a successful payment.
If true, notifies the receiver via email after a successful payment.
Automatically assigns a Discord role upon successful payment.
List of Discord role IDs to be assigned.
If true, disables the pay link without deleting it.
Enables dynamic pricing features for the pay link.
Additional content like files or links associated with the pay link.
Show child attributes
Show child attributes
Maximum number of transactions allowed for this pay link.
Optional product object associated with the pay link.
Show child attributes
Show child attributes
Blockchain address of the NFT collection used in this pay link.
Details for Discord authentication and role assignment.
Show child attributes
Show child attributes
Access code configuration for gated content or purchases.
Show child attributes
Show child attributes
Event-related configuration like dates and venues.
Show child attributes
Show child attributes
Countdown timer settings for scheduled launches.
Show child attributes
Show child attributes
Applies a custom color scheme to the paylink.
Show child attributes
Show child attributes
Response
Show child attributes
Show child attributes
transaction, discordId Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
