TaxStreem Logo
Home/SDKs

SDKs

Build tax compliance workflows faster with TaxStreem SDKs. Get started with ready-to-use client libraries for Node.js, Python, Go, and Java — all wrapping the same TaxStreem REST API.

These libraries are open source. Report issues or ask questions via each GitHub repository.

Select an SDK

TaxStreem provides official SDKs for the following languages:

Currently maintained libraries

TaxStreem provides official SDKs for the TaxStreem REST API in the following languages:

Node.js

Node.js

Official TaxStreem SDK for Node.js and TypeScript. Works with CommonJS and ESM.

GitHub

Install

npm install @taxstreem/taxstreem-node

Quick example — Numens transaction classification

import TaxStreem from '@taxstreem/taxstreem-node';

const client = new TaxStreem({ apiKey: 'txsm_test_SK...' });

const result = await client.numens.processTaxTreatment({
  tenantId: 'tenant_abc',
  clientId: 'client_001',
  businessName: "Kev's Bakery Ltd",
  tin: '12345678-0001',
  state: 'Lagos',
  country: 'Nigeria',
  transactionId: 'TXN-001',
  transactionType: 'purchase',
  vendorName: 'Acme Ltd',
  description: 'Consultancy services',
  amount: 250000,
  currency: 'NGN',
  date: '2026-03-20',
});
Python

Python

Official TaxStreem SDK for Python. Supports async/await via asyncio and httpx.

GitHub

Install

pip install taxstreem

Quick example — Numens transaction classification

import taxstreem

client = taxstreem.TaxStreem(api_key="txsm_test_SK...")

result = client.numens.process_tax_treatment(
    tenant_id="tenant_abc",
    client_id="client_001",
    business_name="Kev's Bakery Ltd",
    tin="12345678-0001",
    state="Lagos",
    country="Nigeria",
    transaction_id="TXN-001",
    transaction_type="purchase",
    vendor_name="Acme Ltd",
    description="Consultancy services",
    amount=250000,
    currency="NGN",
    date="2026-03-20",
)
Java

Java

Official TaxStreem SDK for Java. Supports VAT, WHT, and Numen tax treatment with built-in HMAC-SHA256 signing and AES-256-GCM encryption.

GitHub

Install

implementation 'com.taxstreem:taxstreem-java-sdk:1.0'

Quick example — Numens transaction classification

import com.taxstreem.TaxStreemClient;
import com.taxstreem.model.SingleBusinessTransactionRequest;

public class Example {
    public static void main(String[] args) throws Exception {
        TaxStreemClient client = new TaxStreemClient("txsm_test_SK...");

        SingleBusinessTransactionRequest request = SingleBusinessTransactionRequest.builder()
            .tenantId("tenant_abc")
            .clientId("client_001")
            .businessName("Kev's Bakery Ltd")
            .tin("12345678-0001")
            .state("Lagos")
            .country("Nigeria")
            .transactionId("TXN-001")
            .transactionType("purchase")
            .vendorName("Acme Ltd")
            .description("Consultancy services")
            .amount(250000.0)
            .currency("NGN")
            .date("2026-03-20")
            .build();

        var result = client.numens().processTaxTreatment(request);
    }
}
Go

Go

Official TaxStreem SDK for Go. Idiomatic Go with full type safety and context support.

GitHub

Install

go get github.com/TaxStreem/taxstreem-go

Quick example — Numens transaction classification

package main

import (
    "context"
    taxstreem "github.com/TaxStreem/taxstreem-go"
)

func main() {
    client := taxstreem.NewClient("txsm_test_SK...")

    result, err := client.Numens.ProcessTaxTreatment(context.Background(),
        &taxstreem.ProcessTaxTreatmentParams{
            TenantId:        "tenant_abc",
            ClientId:        "client_001",
            BusinessName:    taxstreem.String("Kev's Bakery Ltd"),
            Tin:             "12345678-0001",
            State:           "Lagos",
            Country:         "Nigeria",
            TransactionId:   "TXN-001",
            TransactionType: "purchase",
            VendorName:      taxstreem.String("Acme Ltd"),
            Description:     "Consultancy services",
            Amount:          250000,
            Currency:        "NGN",
            Date:            "2026-03-20",
        },
    )
    _ = result
    _ = err
}

Ready to integrate?

Browse the full API reference or follow the integration guide to make your first live call.