Developers Component playground

The whole surface, three blocks deep.

A REST API covering orders, shipments, settlements and compliance; first-party SDKs in six languages; and the sandbox both run against. Each block below sets its description beside the code it describes — the request on top, the response underneath.

06 endpoints · 06 SDKs · 03 blocks

01 Sandbox

Build against a mirror of production.

The sandbox shares the routes, the response shapes and the screening of the live environment. Simulate a settlement, fire a webhook, replay a request — then swap the environment key and nothing about your integration changes.

quickstart.js node 18+

Install, initialise, first order

Add the SDK, initialise the client with an API key and place your first cross-border order. Every endpoint follows the same conventions from there.

quickstart.js · request
// Install the SDK
npm install tessavor-sdk

// Initialize the client
const tessavor = require('tessavor-sdk');

const client = new tessavor.Client({
  apiKey: process.env.TESSAVOR_API_KEY,
  environment: 'sandbox' // or 'production'
});

// Create an order
const order = await client.orders.create({
  amount: 129.99,
  currency: 'USD',
  description: 'Premium e-commerce order #12345'
});

console.log(`Order created: ${order.id}`);

response · node 18+

{
  "id": "ord_9f41c7",
  "status": "screening",
  "amount": 129.99,
  "currency": "USD",
  "environment": "sandbox"
}

sandbox

Isolated Sandbox

Build and break things freely in a complete sandbox. Simulate transactions, fire webhooks and cover edge cases long before go-live.

docs

Complete Documentation

API references sit alongside walkthroughs and tutorials. Each endpoint ships with request and response examples, plus code samples you can run.

webhooks

Webhook Notifications

Events pushed the moment they happen — orders, settlements, disputes and compliance status changes — backed by retry logic you can rely on.

tls 1.3

Security by Default

API key authentication, IP whitelisting, request signing and TLS 1.3 — infrastructure built to SOC 2 Type II control requirements.

edge

Performance at Scale

Served from a distributed edge network with automatic failover and rate limiting built in.

support

Hands-On Support

Priority email support, an active developer forum and a dedicated Slack channel with direct access to the engineers behind the platform.

02 API

Six endpoints, one set of conventions.

Authentication, idempotency and error shapes are the same on every route, so the first call teaches you the rest. The column and the card swap sides as you read down, so each example introduces the request it belongs to.

/v1/orders 201 created

Create an order

A single POST returns the order, the tax line it resolved and the settlement record it will reconcile against. Fraud screening runs on the way in, never afterwards.

curl · orders
$ curl -X POST "$TESSAVOR_API/v1/orders" \
    -H "Authorization: Bearer $TESSAVOR_KEY" \
    -d '{"amount":129.99,"currency":"USD","market":"DE"}'

response · 201 created

{
  "id": "ord_9f41c7",
  "status": "screening",
  "tax": { "region": "DE", "calculated": true },
  "settlement": "stl_7d1c2f"
}

/v1/orders/{id} 200 ok

Read an order back

Status, settlement details and every compliance check attached to the order, returned in one read.

curl · orders/{id}
$ curl "$TESSAVOR_API/v1/orders/ord_9f41c7" \
    -H "Authorization: Bearer $TESSAVOR_KEY"

response · 200 ok

{
  "id": "ord_9f41c7",
  "status": "cleared",
  "checks": ["kyc", "sanctions", "risk"],
  "settlement": { "id": "stl_7d1c2f", "status": "scheduled" }
}

/v1/shipments 201 created

Hand an order to the routing layer

Carrier selection, the label and the tracking number all come back on the same object — no second integration.

curl · shipments
$ curl -X POST "$TESSAVOR_API/v1/shipments" \
    -H "Authorization: Bearer $TESSAVOR_KEY" \
    -d '{"order":"ord_9f41c7","carrier":"auto"}'

response · 201 created

{
  "id": "shp_2b8e11",
  "carrier": "tessavor-eu-express",
  "label": "/v1/shipments/shp_2b8e11/label.pdf",
  "tracking": "TESSAVOR8841209EU"
}

/v1/settlements 200 ok

Settle and reconcile

Send the settlement with an idempotency key and the split rules you configured take over. Replay that request and the same record comes back, never a second payout.

curl · settlements
$ curl -X POST "$TESSAVOR_API/v1/settlements" \
    -H "Authorization: Bearer $TESSAVOR_KEY" \
    -H "Idempotency-Key: 7d1c2f" \
    -d '{"order":"ord_9f41c7","payouts":["bank_transfer"]}'

response · 200 ok

{
  "id": "stl_7d1c2f",
  "status": "scheduled",
  "corridor": "US-EU"
}

/v1/rates 200 ok

Quote a rate

Live FX rates for the currencies you settle in, with the option to lock a rate before you commit.

curl · rates
$ curl "$TESSAVOR_API/v1/rates?base=USD"e=EUR" \
    -H "Authorization: Bearer $TESSAVOR_KEY"

response · 200 ok

{
  "base": "USD",
  "quote": "EUR",
  "rate": 0.9214,
  "lock": "15m"
}

/v1/compliance 200 ok

Run compliance checks

KYC/KYB verification, sanctions screening and risk scoring behind a single call, with the filing prepared for you.

curl · compliance
$ curl "$TESSAVOR_API/v1/compliance?entity=ent_4a77&checks=kyc,sanctions" \
    -H "Authorization: Bearer $TESSAVOR_KEY"

response · 200 ok

{
  "entity": "ent_4a77",
  "kyc": "verified",
  "sanctions": "clear",
  "risk": "low",
  "filed": true
}

03 SDKs

Six languages, one surface.

First-party libraries wrap the same REST surface, so changing language does not mean relearning the platform. Install with the package manager you already use.

Node.js

npm install tessavor-sdk

Python

pip install tessavor-sdk

Java

// Maven: tessavor-sdk

Go

go get github.com/tessavor/sdk

PHP

composer require tessavor/sdk

C#

dotnet add package tessavor.SDK

06 endpoints · 06 SDKs · sandbox open