LanaChat

API: Guthaben, Lizenzen, Auszahlungen und Rechnungen

7 Min. LesezeitAktualisiert Markdown

LanaChat wird über ein einziges Prepaid-Guthaben in US-Dollar abgerechnet: Lizenzen (eine pro Telegram-Account, 30 Tage) und eine Kommission auf den Nettoumsatz werden davon abgezogen. Sie laden das Guthaben mit Krypto-Einzahlungen auf. Affiliate-Einnahmen können ausgezahlt werden. Jeder Billing-Endpoint benötigt ein owner-Token: in den Beispielen steht $LANACHAT_TOKEN dafür.

Endpunkte #

MethodPathDescriptionPermissionStatus
GET/billing/balanceDas Guthaben, Nettoumsatz und Kommissionsstufe des MonatsownerPlanned
GET/billing/ledgerAlle Bewegungen: Einzahlungen, Lizenzen, Kommission, RückerstattungenownerPlanned
GET/billing/ledger.csvDasselbe Journal als CSV (from=, to=)ownerPlanned
GET/billing/deposit-addressesEine Einzahlungsadresse pro Chain (mit Memo auf Solana)ownerPlanned
GET/billing/depositsEinzahlungen und deren BestätigungenownerPlanned
GET/billing/licencesLizenzen auf Lager und zugewiesen, mit verbleibenden TagenownerPlanned
POST/billing/licences/buyLizenzen kaufen: einzeln oder als Paket mit 10, 25 oder 50ownerPlanned
POST/billing/licences/assignEine Lizenz aus dem Lager einem Account zuweisenownerPlanned
POST/billing/licences/unassignLizenz mit Restlaufzeit zurück ins Lager nehmenownerPlanned
PATCH/billing/licences/auto-renewAuto-renew für einen Account aktivieren oder deaktivierenownerPlanned
GET/billing/withdrawalsAffiliate-Auszahlungen und deren StatusownerPlanned
POST/billing/withdrawalsAuszahlung von Affiliate-Einnahmen anfordern (ab $500)ownerPlanned
GET/billing/invoicesMonatsabrechnungen (year=)ownerPlanned
GET/billing/invoices/{id}.pdfEinzelne Abrechnung als PDFownerPlanned
PUT/billing/detailsFirmenname, Adresse und USt-Nummer auf AbrechnungenownerPlanned

Preise in einer Tabelle #

WhatPrice
Eine Lizenz (ein Telegram-Account, 30 Tage)$19
Paket mit 10 Lizenzen$170
Paket mit 25 Lizenzen$375
Paket mit 50 Lizenzen$650
Kommission bis $30k Nettoumsatz im Monat12% der AI-Umsätze, 4% der manuellen Umsätze
Kommission von $30k bis $100k10% und 3%
Kommission über $100k8% und 2%

Gezählt wird der Nettoumsatz des gesamten Workspaces im Kalendermonat; am 1. wird zurückgesetzt. Telegram Stars zählen mit $0.013 pro Stück zum Nettoumsatz.

Das balance-Objekt #

{
  "balance_cents": 48210,
  "month": "2026-10",
  "net_sales_cents": 1870400,
  "tier": { "up_to_cents": 3000000, "ai_rate_bp": 1200, "manual_rate_bp": 300 },
  "licences": { "in_stock": 4, "assigned": 11, "expiring_7d": 2 },
  "low_balance": false
}
FieldTypeDescription
balance_centsintegerPrepaid-Guthaben, in US-Cent
monthstringDer gezählte Kalendermonat, YYYY-MM
net_sales_centsintegerNettoumsatz des Workspaces in diesem Monat
tierobjectDie aktuelle Stufe: Grenze up_to_cents, AI- und manueller Satz in Basispunkten
licencesobjectLizenzen in_stock, assigned und zugewiesene, die in 7 Tagen enden (expiring_7d)
low_balancebooleantrue, wenn das Guthaben die nächsten 7 Tage Lizenzen nicht deckt

Sätze sind in Basispunkten: 1200 entspricht 12%.

Das ledger entry-Objekt #

Jede Zeile von Billing › Activity in der Console.

{
  "id": "led_90211",
  "at": "2026-10-06T14:40:00Z",
  "kind": "licences",
  "label": "Licences · pack of 10",
  "amount_cents": -17000,
  "balance_after_cents": 31210
}
FieldTypeDescription
idstringDie Zeile
atstringISO 8601, UTC
kindstringdeposit, licences, commission, refund, affiliate oder other
labelstringDer Text der Zeile, wie in der Console
amount_centsintegerPositiv bei Geldeingang, negativ bei Abgang
balance_after_centsintegerGuthaben nach dieser Zeile

Eine commission-Zeile gehört zu einem Verkauf: Die Console zeigt den Fan, die Stufe, wer das Angebot gesendet hat (AI oder manuell), wie der Netto berechnet wurde ("12,500 ★ × $0.013") und den Satz.

Das deposit-Objekt #

{
  "id": "dep_4",
  "at": "2026-10-06T13:52:00Z",
  "chain": "usdt-tron",
  "sent_cents": 100000,
  "fee_cents": 1000,
  "credited_cents": 99000,
  "status": "pending",
  "confirmations": "12/19"
}
FieldTypeDescription
idstringDie Einzahlung
atstringZeitpunkt, ISO 8601
chainstringusdc-eth, usdc-sol, usdt-sol, usdt-tron oder usdt-eth
sent_cents, fee_cents, credited_centsintegerGesendet, Gebühr, Gutschrift auf Guthaben
statusstringpending dann confirmed
confirmationsstringNetzwerkbestätigungen gezählt, solange pending

USDC auf Ethereum wird 1:1 ohne Gebühr gutgeschrieben. Jede andere Chain hat 1% Gebühr: Die Einzahlung wird bei Ankunft in USDC (ERC20) umgewandelt. Das Minimum pro Aufladung beträgt $25.

Das licence-Objekt #

{
  "account_id": "acc_1001",
  "creator_id": "cr_lea",
  "days_left": 18,
  "expires_at": "2026-10-24T09:00:00Z",
  "auto_renew": true
}
FieldTypeDescription
account_idstringDer Telegram-Account, auf dem die Lizenz läuft
creator_idstringIhre Creatorin
days_leftintegerVerbleibende Tage, von 30
expires_atstringEnddatum
auto_renewbooleanBei Ablauf automatisch aus Lager (oder einzeln kaufen) verlängern

Lizenzen im Lager werden gezählt, nicht einzeln gelistet: Jede behält ihre Resttage (30 bei neuer Lizenz).

Das withdrawal-Objekt #

{ "id": "wd_118", "status": "pending_review", "amount_cents": 50000, "requested_at": "2026-10-06T15:00:00Z", "tx_hash": null }
FieldTypeDescription
idstringDie Auszahlung
statusstringpending_review, sent (mit tx_hash) oder rejected mit Grund
amount_centsintegerAngeforderter Betrag, mindestens 50000 ($500)
requested_atstringISO 8601, UTC
tx_hashstring or nullDie Transaktion, sobald gesendet

Das invoice-Objekt #

{
  "id": "LC-2026-09",
  "month": "2026-09",
  "licences_cents": 22800,
  "commission_cents": 930000,
  "total_cents": 952800,
  "status": "paid",
  "pdf_url": "https://api.lanachat.ai/v1/billing/invoices/LC-2026-09.pdf"
}
FieldTypeDescription
idstringRechnungsnummer, LC-YYYY-MM
monthstringAbgedeckter Monat
licences_cents, commission_cents, total_centsintegerLizenzen, Kommission und Gesamtbetrag des Monats
statusstringBezahlt, in Bearbeitung (aktueller Monat) oder fehlgeschlagen
pdf_urlstringPDF der Abrechnung

Guthaben und Journal #

Guthaben abfragen #

GET /billing/balance · owner

curl https://api.lanachat.ai/v1/billing/balance \
  -H "Authorization: Bearer $LANACHAT_TOKEN"

Die Antwort ist das balance object.

Journal auflisten #

GET /billing/ledger · owner

ParameterTypeRequiredDescription
from, tostringNoTage YYYY-MM-DD, UTC, beide inklusive
limit, cursornumber, stringNoPagination
curl "https://api.lanachat.ai/v1/billing/ledger?from=2026-10-01&to=2026-10-06" \
  -H "Authorization: Bearer $LANACHAT_TOKEN"
{
  "data": [
    { "id": "led_90211", "at": "2026-10-06T14:40:00Z", "kind": "licences", "label": "Licences · pack of 10", "amount_cents": -17000, "balance_after_cents": 31210 },
    { "id": "led_90207", "at": "2026-10-06T13:20:00Z", "kind": "commission", "label": "Lea · Marco", "amount_cents": -468, "balance_after_cents": 48210 },
    { "id": "led_90150", "at": "2026-10-05T09:02:00Z", "kind": "deposit", "label": "Deposit · USDC on Ethereum", "amount_cents": 300000, "balance_after_cents": 48678 }
  ],
  "next_cursor": "eyJpZCI6ImxlZF85MDE0OSJ9"
}

Journal als CSV exportieren #

GET /billing/ledger.csv · owner

ParameterTypeRequiredDescription
from, tostringNoTage YYYY-MM-DD, UTC
curl "https://api.lanachat.ai/v1/billing/ledger.csv?from=2026-09-01&to=2026-09-30" \
  -H "Authorization: Bearer $LANACHAT_TOKEN" -o ledger-2026-09.csv

Dieselben Zeilen wie Export CSV in Billing › Activity, bereit für Ihre Buchhaltung.

Einzahlungen #

Einzahlungsadressen abrufen #

GET /billing/deposit-addresses · owner

curl https://api.lanachat.ai/v1/billing/deposit-addresses \
  -H "Authorization: Bearer $LANACHAT_TOKEN"

Die Antwort gibt eine Adresse pro Chain (Ethereum, Solana, Tron) und für Solana das Memo.

Warnung Auf Solana kann eine Einzahlung ohne Memo nicht Ihrem Workspace zugeordnet werden. Senden Sie immer sowohl Adresse als auch Memo.

Sie können USDC auf Ethereum (ERC20), USDC auf Solana, USDT auf Solana, USDT auf Tron (TRC20) oder USDT auf Ethereum (ERC20) senden. Die Netzwerkgebühr Ihrer Überweisung wird von Ihrer Wallet bezahlt.

Einzahlungen auflisten #

GET /billing/deposits · owner

curl https://api.lanachat.ai/v1/billing/deposits \
  -H "Authorization: Bearer $LANACHAT_TOKEN"
{
  "data": [
    { "id": "dep_4", "at": "2026-10-06T13:52:00Z", "chain": "usdt-tron", "sent_cents": 100000, "fee_cents": 1000, "credited_cents": 99000, "status": "pending", "confirmations": "12/19" },
    { "id": "dep_3", "at": "2026-10-05T09:02:00Z", "chain": "usdc-eth", "sent_cents": 300000, "fee_cents": 0, "credited_cents": 300000, "status": "confirmed", "confirmations": null }
  ],
  "next_cursor": null
}

Das Guthaben wird automatisch gutgeschrieben, sobald eine Einzahlung confirmed ist; dann erscheint sie auch als deposit-Zeile im Journal.

Lizenzen #

Lizenzen auflisten #

GET /billing/licences · owner

curl https://api.lanachat.ai/v1/billing/licences \
  -H "Authorization: Bearer $LANACHAT_TOKEN"

Die Antwort enthält die Lizenzen im Lager und je ein licence object pro zugewiesenem Account mit Restlaufzeit.

Lizenzen kaufen #

POST /billing/licences/buy · owner

ParameterTypeRequiredDescription
packintegerYes1 (einzeln, $19), 10 ($170), 25 ($375) oder 50 ($650)
qtyintegerYesAnzahl dieses Pakets
curl -X POST https://api.lanachat.ai/v1/billing/licences/buy \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"pack": 10, "qty": 1}'
{ "licences_added": 10, "amount_cents": 17000, "balance_cents": 31210, "ledger_id": "led_90211" }

Die Lizenzen gehen sofort in Ihr Lager. Bei zu geringem Guthaben kommt 402 (insufficient_balance). Lizenzen im Lager verfallen nie, gekaufte Lizenzen sind nicht erstattbar.

Lizenz zuweisen #

POST /billing/licences/assign · owner

ParameterTypeRequiredDescription
account_idstringYesDer Telegram-Account, der eine Lizenz erhält
curl -X POST https://api.lanachat.ai/v1/billing/licences/assign \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"account_id": "acc_1001"}'

Die Antwort ist das licence object des Accounts. Die Lagerlizenz mit den wenigsten Resttagen wird zuerst verwendet: deren Resttage oder 30 Tage, wenn sie neu ist. Auto-renew ist standardmäßig aktiviert.

Lizenz zurücknehmen #

POST /billing/licences/unassign · owner

ParameterTypeRequiredDescription
account_idstringYesDer Account, der seine Lizenz zurückgibt
curl -X POST https://api.lanachat.ai/v1/billing/licences/unassign \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"account_id": "acc_1001"}'

Die Lizenz geht mit ihren Resttagen zurück ins Lager. Die AI antwortet auf diesem Account sofort nicht mehr. Um eine Lizenz zu einem anderen Account zu verschieben, nehmen Sie sie zurück und weisen sie dann neu zu: Die Resttage bleiben, kostenlos.

Auto-renew aktivieren oder deaktivieren #

PATCH /billing/licences/auto-renew · owner

ParameterTypeRequiredDescription
account_idstringYesDer Account
auto_renewbooleanYestrue für automatische Verlängerung bei Ablauf
curl -X PATCH https://api.lanachat.ai/v1/billing/licences/auto-renew \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"account_id": "acc_1001", "auto_renew": false}'

Wenn die Tage ablaufen, nimmt Auto-renew zuerst eine Lizenz aus dem Lager oder kauft eine einzelne Lizenz ($19), falls das Lager leer ist. Es kann nicht ohne Guthaben kaufen: Beobachten Sie low_balance oder den billing.low_balance webhook.

Affiliate-Auszahlungen #

Auszahlungen auflisten #

GET /billing/withdrawals · owner

curl https://api.lanachat.ai/v1/billing/withdrawals \
  -H "Authorization: Bearer $LANACHAT_TOKEN"

Eine Liste von withdrawal objects, neueste zuerst.

Auszahlung anfordern #

POST /billing/withdrawals · owner

ParameterTypeRequiredDescription
amount_centsintegerYesMindestens 50000 ($500), maximal was verfügbar ist
curl -X POST https://api.lanachat.ai/v1/billing/withdrawals \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"amount_cents": 50000}'
{ "id": "wd_118", "status": "pending_review", "amount_cents": 50000, "requested_at": "2026-10-06T15:00:00Z", "tx_hash": null }

Die Einnahmen werden in USDC an die hinterlegte Wallet gesendet, 7 Tage nach Monatsende. Es können nur Affiliate-Einnahmen ausgezahlt werden, niemals das Prepaid-Guthaben. Eine Anfrage unter $500 wird abgelehnt.

Abrechnungen #

Abrechnungen auflisten #

GET /billing/invoices · owner

ParameterTypeRequiredDescription
yearintegerNoZum Beispiel 2026
curl "https://api.lanachat.ai/v1/billing/invoices?year=2026" \
  -H "Authorization: Bearer $LANACHAT_TOKEN"

Eine invoice object pro Monat.

Abrechnung herunterladen #

GET /billing/invoices/{id}.pdf · owner

curl https://api.lanachat.ai/v1/billing/invoices/LC-2026-09.pdf \
  -H "Authorization: Bearer $LANACHAT_TOKEN" -o LC-2026-09.pdf

Warnung Prüfen Sie Ihre Abrechnungen. Ein Abrechnungsfehler muss innerhalb von 60 Tagen nach der Abrechnung gemeldet werden, auf der er erscheint; danach ist die Abrechnung endgültig.

Rechnungsdetails setzen #

PUT /billing/details · owner

ParameterTypeRequiredDescription
companystringNoFirmenname
emailstringNoRechnungs-E-Mail
address, city, postal, countrystringNoPostadresse
vatstringNoUSt-Nummer
curl -X PUT https://api.lanachat.ai/v1/billing/details \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"company": "Mia Agency Ltd", "email": "[email protected]", "address": "12 Market Street", "city": "Dublin", "postal": "D02 X285", "country": "IE", "vat": "IE1234567T"}'

Dieselben Felder wie Billing › Billing details. Abrechnungen enthalten diese Angaben. PUT ersetzt alle: Ein Feld, das Sie weglassen, wird geleert.

Die neuesten Nachrichten zu Lana auf Telegram

Neue Releases und Beta-Einladungen, zuerst im Kanal.