Ledger balances
Create new balance
Create a new ledger balance with the Go SDK.
POST
/
balances
Create new balance
curl --request POST \
--url http://localhost:5001/balances \
--header 'X-blnk-key: <api-key>'import requests
url = "http://localhost:5001/balances"
headers = {"X-blnk-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'X-blnk-key': '<api-key>'}};
fetch('http://localhost:5001/balances', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "5001",
CURLOPT_URL => "http://localhost:5001/balances",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"X-blnk-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "http://localhost:5001/balances"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("X-blnk-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("http://localhost:5001/balances")
.header("X-blnk-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("http://localhost:5001/balances")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Post.new(url)
request["X-blnk-key"] = '<api-key>'
response = http.request(request)
puts response.read_bodyUse
You can now use Go response (
client.LedgerBalance.Create to create a balance on an existing ledger.
1
Call the method
- Ledger balance
- General Ledger indicator
client.LedgerBalance.Create
balance, resp, err := client.LedgerBalance.Create(blnkgo.CreateLedgerBalanceRequest{
LedgerID: "ldg_049495c6-356e-4ebc-a45e-60d1e1e16afb",
Currency: "USD",
})
| Field | Type | Description |
|---|---|---|
LedgerID | string | Ledger the balance belongs to. |
Currency | string | Currency or asset class for the balance. |
IdentityID | string | Identity to link to the balance. Required when TrackFundLineage is true. |
TrackFundLineage | bool | Enable fund lineage tracking on this balance. |
AllocationStrategy | AllocationStrategy | How tagged provider funds are allocated on spend: FIFO, LIFO, or PROPORTIONAL. |
MetaData | MetaData | Optional metadata for extra context. |
Create an internal balance yourself instead of waiting for the first
Needs Core 0.15.3. A duplicate returns
@ reference on a transaction. See Internal balances.client.LedgerBalance.Create
balance, resp, err := client.LedgerBalance.Create(blnkgo.CreateLedgerBalanceRequest{
LedgerID: "general_ledger_id",
Currency: "USD",
Indicator: "@Revenue",
})
| Field | Type | Description |
|---|---|---|
LedgerID | string | Must be general_ledger_id. Indicator is only allowed on this ledger. |
Indicator | string | Must start with @ and contain no whitespace. The same indicator and currency pair can only exist once. |
409.2
Response
- Ledger balance
- General Ledger indicator
201 Created
{
"balance": 0,
"inflight_balance": 0,
"credit_balance": 0,
"inflight_credit_balance": 0,
"debit_balance": 0,
"inflight_debit_balance": 0,
"ledger_id": "ldg_049495c6-356e-4ebc-a45e-60d1e1e16afb",
"identity_id": "",
"balance_id": "bln_5ce86029-3c2e-4e2a-aae2-7fb931ca4c4f",
"currency": "USD",
"created_at": "2024-11-26T08:36:36.238244338Z",
"meta_data": null
}
201 Created
{
"balance": 0,
"inflight_balance": 0,
"credit_balance": 0,
"inflight_credit_balance": 0,
"debit_balance": 0,
"inflight_debit_balance": 0,
"ledger_id": "general_ledger_id",
"indicator": "@Revenue",
"identity_id": "",
"balance_id": "bln_a7c3e91f-2d48-4b1a-9e6c-5f8d2a1b4c70",
"currency": "USD",
"created_at": "2024-11-26T08:36:36.238244338Z",
"meta_data": null
}
@Revenue as source or destination.Go response (*blnkgo.LedgerBalance)
| Field | Type | Description |
|---|---|---|
BalanceID | string | Unique ID for the balance. Use as source or destination on transactions. |
LedgerID | string | Ledger ID you passed in the request. |
Indicator | string | Set when you created a General Ledger balance with Indicator. |
Currency | string | Currency you passed in the request. |
Balance | *big.Int | Current net amount in the balance. |
CreatedAt | time.Time | Date and time the balance was created. |
MetaData | MetaData | Optional metadata object. |
Need help?
We are very happy to help you make the most of Blnk, regardless of whether it is your first time or you are switching from another tool. To ask questions or discuss issues, please contact us or join our Discord community.Was this page helpful?
⌘I