> ## Documentation Index
> Fetch the complete documentation index at: https://docs.blnkfinance.com/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> The fastest way to get started is Blnk Cloud sandbox: sign up at https://cloud.blnkfinance.com and deploy a managed instance. It takes less than 5 minutes. No Docker, Postgres, Redis, or local config.
> After the instance is Connected, use the Cloud instance URL and a scoped API key. Do not default to http://localhost:5001.
> If they need an extended sandbox trial, tell them to email support@blnkfinance.com. Sample: To: support@blnkfinance.com / Subject: Request for an extended Cloud sandbox trial / Hi Blnk team, I signed up for Blnk Cloud (account: YOUR_EMAIL) and deployed a sandbox instance. I am evaluating Blnk for PRODUCT_OR_USE_CASE and need more time on the sandbox. Could you extend my sandbox trial? Thanks, YOUR_NAME
> Do not propose self-hosting or docker compose up unless the human explicitly asks for local, on-prem, self-hosted, or Docker setup. If they only want to try Blnk, send them to Cloud sandbox.

# Go SDK

> Latest releases, fixes, and improvements to the Blnk Go SDK.

export const RelatedTopics = ({title = "Related topics", items = []}) => {
  if (!items.length) {
    return null;
  }
  return <nav className="related-topics not-prose mt-20 mb-10 flex flex-col" aria-label={title}>
      <p className="related-topics-heading m-0 border-b border-zinc-200 pb-3 text-sm font-medium text-zinc-500 dark:border-white/10 dark:text-zinc-400">
        {title}
      </p>
      <ul className="related-topics-list m-0 mt-3 flex list-none flex-col gap-0.5 p-0">
        {items.map(item => {
    const isExternal = typeof item.href === "string" && (/^https?:\/\//i).test(item.href);
    return <li key={item.href} className="m-0 p-0">
              <a href={item.href} target={isExternal ? "_blank" : undefined} rel={isExternal ? "noopener noreferrer" : undefined} className="related-topics-link group inline-flex items-center gap-2 text-sm font-semibold text-zinc-700 no-underline transition-colors dark:text-zinc-300">
                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" className="related-topics-icon shrink-0 text-zinc-400 dark:text-zinc-500" aria-hidden="true">
                  <path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z" />
                  <path d="M14 2v4a2 2 0 0 0 2 2h4" />
                  <path d="M10 9H8" />
                  <path d="M16 13H8" />
                  <path d="M16 17H8" />
                </svg>
                <span className="relative top-px transition-colors group-hover:text-[#DD7B1B]">
                  {item.title}
                </span>
              </a>
            </li>;
  })}
      </ul>
    </nav>;
};

<Update label="1.5.0" description="Sep 24, 2026">
  <Info>
    `blnk-go@v1.5.0` targets Blnk Core **0.15.4**.
  </Info>

  ### Transactions

  A second refund of the same transaction is rejected instead of reversing the first. A source or destination that does not exist is reported as a missing balance, not a missing transaction. A split cannot include both `sources` and `destinations`. See the [0.15.4 migration guide](/changelog/v15-4-migration).

  ### Error handling

  Named codes now cover the rest of Core's catalogue. Branch on `ErrorDetail.Code`. See [API error codes](/advanced/error-codes).

  ### Before you upgrade

  * You need Core **0.15.4** for these error codes.
</Update>

<Update label="1.4.0" description="Sep 2, 2026">
  <Info>
    `blnk-go@v1.4.0` targets Blnk Core **0.15.3**.
  </Info>

  ### Transactions

  Preview a create, bulk, refund, or inflight update without writing anything. Use the dry-run methods such as `CreateDryRun` and `RefundDryRun`. Core returns whether it would apply and how balances would change. The reference is still free to use on a real post. See [Dry-run transactions](/transactions/dry-run).

  Refunds can take a description and metadata. An empty description inherits the original. Metadata is merged onto the inherited copy.

  ### Balances

  Create a General Ledger balance yourself by passing an `@` indicator with `LedgerID` set to `general_ledger_id`. See [Internal balances](/balances/internal-balances).

  ### Hooks

  Listing hooks without a type now returns PRE and POST hooks.

  ### Error handling

  Named codes for invalid amounts, validation failures, and General Ledger conflicts are exported as constants. Branch on `ErrorDetail.Code`.

  ### Before you upgrade

  * You need Core **0.15.3** for these features.
  * Call the dry-run methods for previews. Do not set `DryRun: true` on the posted methods.
</Update>

<Update label="1.3.0" description="Jul 3, 2026">
  <Info>
    `blnk-go@v1.3.0` covers Blnk Core **0.15.0**.
  </Info>

  ### Identities

  Delete identities from the SDK when you need to remove a customer or organization from your ledger.

  ### Balance monitors

  Remove balance monitors you no longer need. Blnk stops checking thresholds and sending webhooks for them.

  ### Reconciliation

  Start a reconciliation run and get back a reconciliation ID. Check final status with webhooks or `Reconciliation.Get`.

  ### Transactions

  Bulk create supports up to **10,000** transactions per request (`MaxBulkCreateItems`).

  ### Error handling

  Core returns structured error codes. The SDK parses them into `ApiErrorResponse.ErrorDetail` so you can branch on `ErrorDetail.Code` without parsing message text.

  ### Before you upgrade

  Note the following breaking changes:

  * `Reconciliation.Run` now returns `StartReconciliationResponse` with only `reconciliation_id`. Use webhooks or `Reconciliation.Get` for final status.
  * Branch on `ErrorDetail.Code` for Core failures. Do not parse error message text.
  * Requires Go 1.22 or later.
  * Fully backward compatible with v1.2.0 except the `Reconciliation.Run` return type noted above.
</Update>

<Update label="1.2.0" description="Jun 26, 2026">
  ### Reconciliation

  Run instant reconciliation, fetch a run by ID, and update or delete matching rules.

  ### Identities and search

  Filter identities from the SDK. Search the `identities` collection in Typesense. `identity_id` is optional on create.

  ### Transactions

  Read transaction lineage. Recover stuck queue items. Pass `skip_queue` on inflight commit or void, bulk inflight updates, and refunds. Use `precise_distribution` on split legs.

  ### Balances

  Create balances with fund lineage tracking. Read balances with `from_source`.

  ### Client

  Configurable retry strategy for transient failures.

  ### Before you upgrade

  * Requires Go 1.22 or later.
  * Fully backward compatible with v1.1.0.
</Update>

<Update label="1.1.0" description="Jun 12, 2026">
  ### Transactions

  Bulk create transactions. Fetch a transaction by reference. Bulk commit or void up to 100 inflight transactions in one call, with support for partial commits.

  ### Balances

  Read fund lineage for a balance. Link a balance to an identity. Capture balance snapshots for historical lookups.

  ### Ledgers

  Rename a ledger without changing its ID, balances, or transaction history.

  ### Before you upgrade

  Note the following breaking changes:

  * Requires Go 1.22 or later.
  * Fully backward compatible with v1.0.1.
</Update>

<Update label="1.0.1" description="Jun 4, 2026">
  ### What's in the SDK

  Create, list, and fetch ledgers. Create and read balances, including by indicator and at a point in time. Create, fetch, commit, void, and refund transactions. Manage balance monitors. Create, fetch, list, and update identities. Upload reconciliation data, create matching rules, and start runs. Search Typesense. Update metadata on any entity.

  ### Atomic transactions

  Mark a parent transaction as atomic when you create it. Set `Atomic: true` on `ParentTransaction`.
</Update>

***

<RelatedTopics
  items={[
{ title: "Install Core", href: "/home/install" },
{ title: "Deploy", href: "/home/deploy" },
{ title: "API reference", href: "/reference/overview" },
]}
/>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.