curl --request POST \
--url https://api-sandbox.beinfi.com/customers/{customerID}/rate-cards \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"meterId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"unitAmount": "<string>",
"tiers": [],
"currency": "BRL"
}
'import requests
url = "https://api-sandbox.beinfi.com/customers/{customerID}/rate-cards"
payload = {
"meterId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"unitAmount": "<string>",
"tiers": [],
"currency": "BRL"
}
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({
meterId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
unitAmount: '<string>',
tiers: [],
currency: 'BRL'
})
};
fetch('https://api-sandbox.beinfi.com/customers/{customerID}/rate-cards', 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-sandbox.beinfi.com/customers/{customerID}/rate-cards",
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([
'meterId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'unitAmount' => '<string>',
'tiers' => [
],
'currency' => 'BRL'
]),
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-sandbox.beinfi.com/customers/{customerID}/rate-cards"
payload := strings.NewReader("{\n \"meterId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"unitAmount\": \"<string>\",\n \"tiers\": [],\n \"currency\": \"BRL\"\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-sandbox.beinfi.com/customers/{customerID}/rate-cards")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"meterId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"unitAmount\": \"<string>\",\n \"tiers\": [],\n \"currency\": \"BRL\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-sandbox.beinfi.com/customers/{customerID}/rate-cards")
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 \"meterId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"unitAmount\": \"<string>\",\n \"tiers\": [],\n \"currency\": \"BRL\"\n}"
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"customerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"meterId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"model": "flat",
"unitAmount": "<string>",
"tiers": [
{}
],
"currency": "<string>"
}{
"message": "<string>",
"error_code": "internal_error",
"tracer_id": "<string>"
}{
"message": "<string>",
"error_code": "internal_error",
"tracer_id": "<string>"
}{
"message": "<string>",
"error_code": "internal_error",
"tracer_id": "<string>",
"resource": "<string>"
}{
"message": "<string>",
"error_code": "internal_error",
"tracer_id": "<string>",
"errors": [
{
"field": "<string>",
"value": "<string>",
"constraint": "<string>",
"description": "<string>"
}
]
}Set a customer rate card
Sets a price for this enrollment only, on top of the product’s price: for one meter (meterId) or, with meterId: null, for the recurring base fee, which must use model: flat. customerID here is the enrollment ID.
curl --request POST \
--url https://api-sandbox.beinfi.com/customers/{customerID}/rate-cards \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"meterId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"unitAmount": "<string>",
"tiers": [],
"currency": "BRL"
}
'import requests
url = "https://api-sandbox.beinfi.com/customers/{customerID}/rate-cards"
payload = {
"meterId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"unitAmount": "<string>",
"tiers": [],
"currency": "BRL"
}
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({
meterId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
unitAmount: '<string>',
tiers: [],
currency: 'BRL'
})
};
fetch('https://api-sandbox.beinfi.com/customers/{customerID}/rate-cards', 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-sandbox.beinfi.com/customers/{customerID}/rate-cards",
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([
'meterId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'unitAmount' => '<string>',
'tiers' => [
],
'currency' => 'BRL'
]),
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-sandbox.beinfi.com/customers/{customerID}/rate-cards"
payload := strings.NewReader("{\n \"meterId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"unitAmount\": \"<string>\",\n \"tiers\": [],\n \"currency\": \"BRL\"\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-sandbox.beinfi.com/customers/{customerID}/rate-cards")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"meterId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"unitAmount\": \"<string>\",\n \"tiers\": [],\n \"currency\": \"BRL\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-sandbox.beinfi.com/customers/{customerID}/rate-cards")
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 \"meterId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"unitAmount\": \"<string>\",\n \"tiers\": [],\n \"currency\": \"BRL\"\n}"
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"customerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"meterId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"model": "flat",
"unitAmount": "<string>",
"tiers": [
{}
],
"currency": "<string>"
}{
"message": "<string>",
"error_code": "internal_error",
"tracer_id": "<string>"
}{
"message": "<string>",
"error_code": "internal_error",
"tracer_id": "<string>"
}{
"message": "<string>",
"error_code": "internal_error",
"tracer_id": "<string>",
"resource": "<string>"
}{
"message": "<string>",
"error_code": "internal_error",
"tracer_id": "<string>",
"errors": [
{
"field": "<string>",
"value": "<string>",
"constraint": "<string>",
"description": "<string>"
}
]
}Authorizations
Your account's secret key: Authorization: Bearer sk_test_… or sk_live_…. Server-side only.
Headers
A unique key per operation (a UUID works). Retrying with the same key returns the original response.
Path Parameters
ID of the customer's enrollment in the product (not the customer ID).
Body
The meter whose price you want to override. Send null for the recurring base fee, which must use model: flat.
Pricing model.
flat, per_unit, tiered, volume, package Price per unit, as a decimal string.
Price tiers, for tiered, volume and package.
Currency (for example BRL).
"BRL"
Response
Rate card set.
Enrollment ID.
The meter whose price is overridden. Null when it overrides the recurring base fee.
Pricing model.
flat, per_unit, tiered, volume, package Price per unit, as a decimal string.
Price tiers, for tiered, volume and package.