lagerkoll-sync LK
Huvud-synk orchestrator — startar alla LK-synk-funktioner
Ingen JWTv16
lagerkoll-sync-articles LK
Synkar artiklar → lagerkoll_articles (2 680 aktiva)
Ingen JWTv4
lagerkoll-sync-customers LK
Synkar kunder → lagerkoll_customers (12 745 rader)
Ingen JWTv3
lagerkoll-sync-suppliers LK
Synkar leverantörer → lagerkoll_suppliers (787 st)
Ingen JWTv3
lagerkoll-sync-orders LK
Synkar kundordrar → lagerkoll_customer_orders
Ingen JWTv3
lagerkoll-sync-order-rows LK
Synkar orderrader → lagerkoll_order_rows (17 310 rader)
Ingen JWTv3
lagerkoll-sync-currencies-categories LK
Valutor (33 st) och kategorier (99 st)
Ingen JWTv5
lagerkoll-sync-purchase-orders LK
Inköpsordrar → lagerkoll_purchase_orders (363 st)
Ingen JWTv3
lagerkoll-sync-article-history LK
Artikelhistorik → lagerkoll_article_history (141 438 rader)
Ingen JWTv4
lagerkoll-sync-prices LK
Prislistor → lagerkoll_prices (32 002 prisposter)
Ingen JWTv3
lagerkoll-sync-kartong LK
Synkar kartonglagret (Store 985414) → lagerkoll_kartong_articles (2 188 artiklar med hyllplats). Artikelnamn = KOSA art.nr = join-nyckel mot lagerkoll_articles. Används i Saras plockvy för 📦-chips.
Ingen JWTv1
lagerkoll-create-order LK
Skapar ny order i Lagerkoll (skrivoperation)
Ingen JWTv2
lagerkoll-create-article LK
Skapar ny artikel i Lagerkoll (skrivoperation)
Ingen JWTv1
lagerkoll-proxy LK
Proxy för Lagerkoll API — offers-list/get/create/by-article, sync-offers-summary, lk-article-get, lk-customer-get/update, lk-update-category, lk-sync-customer-pricelists, sync-articles-by-query (live-synk via direkt-uppslag + systerprefix-suffix-låning som fångar artiklar Lagerkoll exkluderar från listningen, t.ex. 70-* serien)
Ingen JWTv32
lagerkoll-probe-quotes LK
Undersöker och testar offert-API:et i Lagerkoll
Ingen JWTv5
lagerkoll-order-api LK
Kundorder-verktygets skriv-API — actions: get_full, set_state (ready_for_packing/invoice/cancel), update_comment, list_log, create_order, get_customer, list_active (hämtar state 0-45 live + upserterar Supabase — plockvy-synk). Hård MAKULERA-spärr på cancel, lokal JWT-parsning, audit-logg till lagerkoll_order_log, order_id nullable
Manuell authv6
fortnox-token FX
Centraliserad token-manager — advisory lock (ID 73926401) förhindrar race conditions, alla 15 Fortnox-funktioner hämtar token härifrån
Ingen JWTv1
fortnox-oauth FX
Startar OAuth-flödet mot Fortnox — omdirigerar till Fortnox login
Ingen JWTv4
fortnox-callback FX
OAuth callback — tar emot auth-code och sparar tokens i fortnox_tokens
Ingen JWTv4
fortnox-sync FX
Huvud-synk orchestrator för Fortnox — kör alla FX-synkare
Ingen JWTv7
fortnox-sync-artiklar FX
Synkar artiklar → fortnox_artiklar_v2 (14 716 rader)
Ingen JWTv2
fortnox-sync-faktura-rader FX
Synkar fakturarader → fortnox_faktura_rader (523 556 rader — primärkälla för all försäljning)
Ingen JWTv3
fortnox-sync-faktura-rader-progress FX
Hanterar progress för fakturarader-synk
Ingen JWTv3
fortnox-sync-kunder FX
Synkar kunder → fortnox_kunder (13 750 st)
Ingen JWTv3
fortnox-sync-leverantorer FX
Synkar leverantörer → fortnox_leverantorer (785 st)
Ingen JWTv2
fortnox-sync-ordrar FX
Synkar ordrar → fortnox_ordrar (20 945 st)
Ingen JWTv2
fortnox-sync-bokforing FX
Verifikat via voucher-API — avvecklat för nightly, ersatt av SIE4. Kvar för manuell lastmodified-sync vid behov
Ingen JWTv16
fortnox-sync-verifikat FX
Synkar enskilda verifikat
Ingen JWTv2
fortnox-sync-sie FX
SIE4-stream för hela räkenskapsår — sanningskälla för RR+BR + nightly cron. Streamad CP437-parser, konto 1000–8999 (inkl. 8999 Årets resultat), 500 rader/batch, count=3 för djup synk. v25: parsar nu både #VER-text → verifikat_text och #TRANS-transtext per rad → transaktionsinfo (driver RR+BR drill-down med order/kund/leverantör-koppling)
Ingen JWTv25
fortnox-integrity-check FX
Nightly watchdog 22:30 — snapshot-jämför rr_summary() per månad, flaggar drift/stale → fortnox_integrity_log
Ingen JWTv2
fortnox-sync-artikelstatistik FX
Synkar artikelstatistik från Fortnox
Ingen JWTv2
fortnox-artikelstatistik-import FX
Importerar artikelstatistik till Supabase
Ingen JWTv1
fortnox-sync-kund-land FX
Synkar kundland-data från Fortnox
Ingen JWTv1
fortnox-sales-api FX
Huvud-försäljnings-API — v8 med cache (30 min TTL)
Ingen JWTv8
fortnox-resultatrapport FX
Resultatrapport-data — actions summary, accounts, transactions. v21: drill-down med universell order/faktura/leverantör-koppling via drill_account_transactions RPC (📦 Lagerkoll-kundorder för 4990/1410, fakturanr+kund för 1510/30xx, fakturanr+leverantör+🛒 Lagerkoll-inköpsorder för 2440/40xx)
Ingen JWTv21
fortnox-customer-detail FX
Kunddetaljer inkl. fakturor — används i CRM och Kundstatistik
Ingen JWTv6
fortnox-kund-stats FX
Kundstatistik per VT — levererar dynamisk CEXT_MAP med namnkollisionshantering
Ingen JWTv11
fortnox-api-explorer FX
Debug-verktyg för att utforska Fortnox API direkt
Ingen JWTv1
fortnox-likviditet FX
Likviditetsprognos-API — cashflow, drill, budget, balances från likviditet_monthly + fortnox_account_balances
Ingen JWTv6
fortnox-likviditet-prognos FX
Kassaflödesprognos — receivables forecast, bank IB + faktiskt saldo, utfall (inkl. moms/skatt 2xxx), params, purchase_orders (PO med delad betalning), save_po_override
Ingen JWTv6
fortnox-sync-balances FX
Synkar IB/UB per konto per räkenskapsår → fortnox_account_balances via Fortnox Accounts API. Körs manuellt vid ny period.
Ingen JWTv2
woocommerce-api WC
Huvud-API för WooCommerce-operationer — läser produkter och varianter
Ingen JWTv15
wc-sync WC
Synkar produkter WooCommerce → woocommerce_products
Ingen JWTv1
wc-sync-runner WC
Kör WC-synk asynkront — hanterar lång synk-process
Ingen JWTv2
wc-push WC ⚠️ 500-fel
Pushar produktdata till live-sajten kosa.se — update_variation ger 500-fel. Kräver wcConfirm()-dialog. 🔒 JWT-skyddad — kräver inloggad KOSA-användare (role: authenticated).
JWT ✓v6
wc-csv-import WC
CSV-import av produktdata till WooCommerce
Ingen JWTv1
paypal-reconciliation WC
PayPal betalningsavstämning — settlement-baserad: matchar PayPal-transaktioner mot Fortnox-fakturor via strikt WC-ordernr-validering, picks belopps-närmast vid flera kandidater, registrerar betalningar + auto-bokför. Returbron: WC refund → kreditfaktura i Fortnox (hel/del) + auto-betalning; hämtar exakta returartiklar via GET /orders/{id}/refunds (SKU + produktnamn + antal). T11xx-rader synkas som refund_pending_credit. Överbetalning: PayPal > faktura → status overpayment + book_overpayment bokför diff på konto 3990 (kundvinst). Actions: sync_settlements, match_all, register_payments, debug_match, manual_pick_invoice, delete_payment, list_missing_order_id, get_invoices_by_order, create_credit_invoice, mark_refund_credited, book_overpayment. Säkerhet: settlement-krav, faktura-verifiering, dubbelbetalningsskydd, amount>0, delete kräver bekräftelse + audit trail, created_by-loggning, manual_pick blockerar makulerad/kredit/paid.
Ingen JWTv28
klarna-reconciliation WC
Kustom/Klarna betalningsavstämning — api.kustom.co Settlements API, Basic Auth. Belopp i öre → SEK. Matchar mot Fortnox via merchant_reference1 (WC-ordernummer). pickBestInvoice filtrerar negativt Total och använder Math.abs(grossAmount) för RETURN → hittar originalfakturan (+N), ej kreditfakturan (-N). Settlement räknas som reconciled när alla rader är paid/refund_credited/overpayment. Actions: sync_payouts, sync_all_payouts, list_payouts, list_transactions, match_all, register_payments, book_overpayment, mark_refund_credited. Avräkningskonto 1582.
Ingen JWTv12
mirakl-reconciliation WC
Stadium/Mirakl betalningsavstämning — Joel laddar upp billing-cycle CSV direkt i UI; auto-synkar WC-ordrar för CSV:ns datumintervall → wc_mirakl_order_map; matchar varje order mot Fortnox-faktura; fallback 1: yourordernumber-sökning; fallback 2: kundnamn + belopp; live progress-lista vid betalningsregistrering (en order per anrop); manuell fakturakoppling för no_invoice-rader (📎 Länka faktura). Sparar varje CSV-import till wc_mirakl_billing_cycles med status (imported/partial/registered). Actions: sync_wc_orders, import_csv, register_payments, list_billing_cycles, manual_link. Avräkningskonto 1584.
Ingen JWTv4
wc-payments-reconciliation WC
WooCommerce Payments (Stripe) betalningsavstämning mot Fortnox — deposits = banköverföringar till SEB. Belopp i öre → SEK (÷100). Order-ID direkt på varje transaktion → trivial matchning. Actions: sync_deposits, list_deposits, list_transactions, match_all, register_payments, book_overpayment. Avräkningskonto 1586. v1 — påbörjad 2026-04-13
Ingen JWTv1
produktgenerator-api B24
Huvud-API för produktgeneratorn — skapar och hanterar produktdata mot B24/PRICAT
Ingen JWTv28
pricat-api B24
PRICAT/B24-hantering — produktdata för leverantörer. Add/Change-toggle (action_override).
Ingen JWTv27
b24-artiklar B24
B24-artikelhantering — validering av PRICAT-fält (EAN, Färg, FEDAS, Kön, Ålder, Indication Color, Sub-Model/modelColor), problemtaggar röd/gul, auto-sync Indication Color från Färg
Ingen JWTv19
fill-b24-namn B24
Fyller in B24-namn på artiklar som saknar det
Ingen JWTv1
prisat-price-sync B24
Prissynk mot PRICAT — uppdaterar priser
Ingen JWTv1
scan-brand B24
Skannar varumärken i artikeldatabasen
Ingen JWTv1
render-design B24
Renderar produktdesign för B24
Ingen JWTv1
claude-proxy AI
Proxy för Claude API-anrop från frontend — håller API-nyckeln säker i Edge Function. Kräver authenticated JWT (role: authenticated).
✅ JWT krävsv4
monday-proxy AI
Proxy för Monday.com GraphQL-anrop och fil-uppladdningar — API-nyckel server-side, CORS-säkrad för file://-ursprung
Ingen JWTv1
prognos-api AI
API för Prognosverktyget — läser/skriver prognos_entries, prognos_comments, prognos_marginaler
Ingen JWTv2
crm-api AI
CRM API — kontakter, notter, relationer, avtal, tasks, aktiviteter, tagg-system, fakturaattribution (club_attributions), bulk-matchning, lk_info, meta. ⚠️ Inkluderar skrivoperationer utan JWT.
Ingen JWTv24
send-morning-report AI
Skickar morgonrapport via Outlook
Ingen JWTv1
outlook-auth AI
Outlook OAuth v5 — Azure app d638f22e. ⏳ Väntar Azure-admin från EgerydsGruppen IT
Ingen JWTv5
sublimering-submit AI
Tar emot sublimerings-formulär och sparar till Supabase
Ingen JWTv1
kosa-intervju AI
Intervjuformulär för AI-analys av teamets behov
Ingen JWTv2
intervju-submit AI
Sparar intervjusvar → ai_intervju (7 svar klara)
Ingen JWTv2
kallkarta AI
Källkarta — hanterar datakällans prioritetsordning (12 rader)
Ingen JWTv2
kallkarta-api AI
API för källkarta
Ingen JWTv1
bugg-api AI 💀 Död kod
⚠️ Ingen produktionskod anropar denna. Feedback-widgeten postar direkt till Monday via monday-proxy. Skriver till tabell kosa_buggar som inte finns. Kan raderas vid nästa städning.
Ingen JWTv1
auth-signup AUTH
Registreringsflöde för nya KOSA-användare
✅ JWT krävsv2
erik-intervju-submit DEV
Engångs-intervjuinlämning — kan tas bort
Ingen JWTv1
lagerkoll-probe-quotes LK
Sondar offerter i Lagerkoll — dev/utredningsverktyg
Ingen JWTv5
save-reply AI
Sparar AI-svar/replies till databasen
Ingen JWTv1
sql-import DEV
Kör godtycklig SQL via POST — Dev-verktyg, kräver nu service_role JWT. Webbläsare får 403.
✅ JWT krävsv2
kosa-import-g000 DEV
Engångs-import — kan tas bort
Ingen JWTv1
kosa-pl-debug DEV
PL-debug — felsökningsverktyg
Ingen JWTv10
kosa-debug-keys DEV
Debug-nyckelkoll — kontrollerar vilka hemligheter som finns
✅ JWT krävsv2
auth-signup DEV
Auth signup — hanterar användarregistrering
✅ JWT krävsv2
cfh-notify CFH
Creative Hub notiser — push (web-push + VAPID) + e-post (Resend); actions: new_item, new_version, custom_push, feedback_given (mailar/pushar Jessica vid feedback från Tove), executor_comment (mailar/pushar Tove när Jessica skriver egen kommentar på ett korrektur); deep link /CFH#item/{id}; accepterar service_role-token
Manuell authv10
cfh-send-push CFH
Admin push-verktyg — skickar push direkt till user_id utan auth (server-side)
Ingen JWTv1
chat-notify CHATT
KOSA Chatt mail-notiser via Resend. Quiet period 2 min, cooldown 45 min per avsändare-mottagare-par, skippar om mottagaren är online, batchar upp till 20 olästa meddelanden per mail
✅ JWT krävsv2
erik-intervju-submit DEV
Separat intervju-submit för Erik
Ingen JWTv1
mitt-kosa-api MK
Mitt KOSA — intern Monday-ersättare; CRUD för tavlor/grupper/kolumner/items/members/kommentarer/notiser + customer_search/customer_profile/customer_articles/refresh_customer_metrics (Säljmappen) + task_pin/unpin; läser inloggad användare via lokal JWT-parsning
✅ JWT krävsv7
tv-prio-api TV
TV-monitor PRIO-flaggning — list_active / create_alert / dismiss_alert. Joel flaggar brådskande order, lagrets TV blir röd via Supabase Realtime tills Daniel klickar HANTERAD. Skrivning via service_role (ingen auth — intern skärm)
Ingen JWTv1
mirakl-connect STADIUM
Stadium Connect (Mirakl) — ersätter Sello.io. Order-flow: fetchOrders → createWcOrderFromMirakl (re-fetchar PII by-id) → auto-accept → PostNord-bokning via instance_id 78 SE / 84 FI → webhook order.updated → push tracking till /tracking + /ship. Katalog: sync_inventory (602 offers, 137 parents), list_inventory, save_title_en, ai_translate_titles (Anthropic API). Skriv-skydd via stadium_sync_config.dry_run + auto_accept_orders. Secrets: MIRAKL_API_KEY, ANTHROPIC_API_KEY
Ingen JWTv0.7.0