Update checkout fees
curl --request PATCH \
--url https://api.hubapi.com/commerce/payments-settings/2027-03-beta/payments-settings/checkout-fees \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"checkoutFees": [
{
"appliesToPaymentType": "<string>",
"feeValue": 123,
"feeValueType": "<string>",
"name": "<string>",
"id": "<string>"
}
]
}
'import requests
url = "https://api.hubapi.com/commerce/payments-settings/2027-03-beta/payments-settings/checkout-fees"
payload = { "checkoutFees": [
{
"appliesToPaymentType": "<string>",
"feeValue": 123,
"feeValueType": "<string>",
"name": "<string>",
"id": "<string>"
}
] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
checkoutFees: [
{
appliesToPaymentType: '<string>',
feeValue: 123,
feeValueType: '<string>',
name: '<string>',
id: '<string>'
}
]
})
};
fetch('https://api.hubapi.com/commerce/payments-settings/2027-03-beta/payments-settings/checkout-fees', 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.hubapi.com/commerce/payments-settings/2027-03-beta/payments-settings/checkout-fees",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'checkoutFees' => [
[
'appliesToPaymentType' => '<string>',
'feeValue' => 123,
'feeValueType' => '<string>',
'name' => '<string>',
'id' => '<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.hubapi.com/commerce/payments-settings/2027-03-beta/payments-settings/checkout-fees"
payload := strings.NewReader("{\n \"checkoutFees\": [\n {\n \"appliesToPaymentType\": \"<string>\",\n \"feeValue\": 123,\n \"feeValueType\": \"<string>\",\n \"name\": \"<string>\",\n \"id\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("PATCH", 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.patch("https://api.hubapi.com/commerce/payments-settings/2027-03-beta/payments-settings/checkout-fees")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"checkoutFees\": [\n {\n \"appliesToPaymentType\": \"<string>\",\n \"feeValue\": 123,\n \"feeValueType\": \"<string>\",\n \"name\": \"<string>\",\n \"id\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubapi.com/commerce/payments-settings/2027-03-beta/payments-settings/checkout-fees")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"checkoutFees\": [\n {\n \"appliesToPaymentType\": \"<string>\",\n \"feeValue\": 123,\n \"feeValueType\": \"<string>\",\n \"name\": \"<string>\",\n \"id\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"checkoutFees": [
{
"appliesToPaymentType": "<string>",
"feeValue": 123,
"feeValueType": "<string>",
"id": "<string>",
"name": "<string>"
}
]
}{
"message": "Invalid input (details will vary based on the error)",
"correlationId": "aeb5f871-7f07-4993-9211-075dc63e7cbf",
"category": "VALIDATION_ERROR",
"links": {
"knowledge-base": "https://www.hubspot.com/products/service/knowledge-base"
}
}Fees
Update checkout fees
Update the checkout fees settings in your HubSpot account. This endpoint allows you to modify the configuration of checkout fees, which can be useful for adjusting fee structures or implementing new pricing strategies. Ensure that the request body contains the necessary details for the update.
PATCH
/
commerce
/
payments-settings
/
2027-03-beta
/
payments-settings
/
checkout-fees
Update checkout fees
curl --request PATCH \
--url https://api.hubapi.com/commerce/payments-settings/2027-03-beta/payments-settings/checkout-fees \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"checkoutFees": [
{
"appliesToPaymentType": "<string>",
"feeValue": 123,
"feeValueType": "<string>",
"name": "<string>",
"id": "<string>"
}
]
}
'import requests
url = "https://api.hubapi.com/commerce/payments-settings/2027-03-beta/payments-settings/checkout-fees"
payload = { "checkoutFees": [
{
"appliesToPaymentType": "<string>",
"feeValue": 123,
"feeValueType": "<string>",
"name": "<string>",
"id": "<string>"
}
] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
checkoutFees: [
{
appliesToPaymentType: '<string>',
feeValue: 123,
feeValueType: '<string>',
name: '<string>',
id: '<string>'
}
]
})
};
fetch('https://api.hubapi.com/commerce/payments-settings/2027-03-beta/payments-settings/checkout-fees', 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.hubapi.com/commerce/payments-settings/2027-03-beta/payments-settings/checkout-fees",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'checkoutFees' => [
[
'appliesToPaymentType' => '<string>',
'feeValue' => 123,
'feeValueType' => '<string>',
'name' => '<string>',
'id' => '<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.hubapi.com/commerce/payments-settings/2027-03-beta/payments-settings/checkout-fees"
payload := strings.NewReader("{\n \"checkoutFees\": [\n {\n \"appliesToPaymentType\": \"<string>\",\n \"feeValue\": 123,\n \"feeValueType\": \"<string>\",\n \"name\": \"<string>\",\n \"id\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("PATCH", 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.patch("https://api.hubapi.com/commerce/payments-settings/2027-03-beta/payments-settings/checkout-fees")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"checkoutFees\": [\n {\n \"appliesToPaymentType\": \"<string>\",\n \"feeValue\": 123,\n \"feeValueType\": \"<string>\",\n \"name\": \"<string>\",\n \"id\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubapi.com/commerce/payments-settings/2027-03-beta/payments-settings/checkout-fees")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"checkoutFees\": [\n {\n \"appliesToPaymentType\": \"<string>\",\n \"feeValue\": 123,\n \"feeValueType\": \"<string>\",\n \"name\": \"<string>\",\n \"id\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"checkoutFees": [
{
"appliesToPaymentType": "<string>",
"feeValue": 123,
"feeValueType": "<string>",
"id": "<string>",
"name": "<string>"
}
]
}{
"message": "Invalid input (details will vary based on the error)",
"correlationId": "aeb5f871-7f07-4993-9211-075dc63e7cbf",
"category": "VALIDATION_ERROR",
"links": {
"knowledge-base": "https://www.hubspot.com/products/service/knowledge-base"
}
}Supported products
Supported products
Required Scopes
Required Scopes
Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Body
application/json
An array of checkout fee objects to be updated. Each object must conform to the CheckoutFeePublicUpdateRequest schema.
Show child attributes
Show child attributes
Response
successful operation
An array of CheckoutFeePublic objects, each representing a specific fee applied during the checkout process.
Show child attributes
Show child attributes
Last modified on September 11, 2026
Was this page helpful?