Klirr Docs

Leverantörer

Leverantörsregistret – lista, skapa, hämta, uppdatera och inaktivera leverantörer via /3/suppliers.

Leverantörsresursen speglar Fortnox /3/suppliers. Leverantören adresseras på sitt leverantörsnummer (SupplierNumber), och numret kan inte ändras när det väl är satt.

Scope: supplier · Kräver AI Pro

Endpoints

Metod och sökvägBeskrivning
GET/api/v1/3/suppliersLista leverantörer (reducerad listform)
POST/api/v1/3/suppliersSkapa en leverantör. Svarar 201.
GET/api/v1/3/suppliers/{SupplierNumber}Hämta en leverantör (fullständig form)
PUT/api/v1/3/suppliers/{SupplierNumber}Uppdatera en leverantör (partiellt)
DELETE/api/v1/3/suppliers/{SupplierNumber}Inaktivera en leverantör. Svarar 204.

Bas-URL: https://app.klirr.ai/api/v1. Skrivningar kuverteras i Supplier.

Listparametrar

Utöver paginering (page, limit, offset) och sortorder (asc/desc):

ParameterVärdenBeskrivning
sortbysuppliernumber, nameStandard är suppliernumber.
suppliernumbertextExakt leverantörsnummer.
nametextSökning i namnet.
organisationnumbertextSökning i organisationsnumret.
emailtextSökning i e-postadressen.
phonetextSökning i telefonnumret.
zipcodetextSökning i postnumret.
citytextSökning i orten.

Det finns inget filter: listan innehåller både aktiva och inaktiva leverantörer, med Active satt. Skickar du filter eller lastmodified, eller fler än en av fritextsökningarna (name, organisationnumber, email, phone, zipcode, city), svarar API:t 400 i stället för att tyst returnera ett ofiltrerat svar.

Fält

Fullständig form (GET /3/suppliers/{SupplierNumber}, och svaret på POST/PUT).

FältTypSkrivskyddatBeskrivning
@urlstringjaResursens URL i Klirr.
SupplierNumberstringefter skapandeLeverantörsnummer. Utelämnas det vid POST tilldelas nästa lediga nummer. Kan inte ändras.
NamestringnejObligatoriskt vid POST.
OrganisationNumberstringnejOrganisationsnummer. POST med ett nummer som redan finns hos en annan leverantör avvisas med 409.
VATNumberstringnejMomsregistreringsnummer.
EmailstringnejE-post.
Phone1stringnejTelefon.
Address1stringnejAdress.
ZipCodestringnejPostnummer.
CitystringnejOrt.
CountrystringnejLandsnamn. Standard Sverige. Bärs vidare oförändrat.
CountryCodestringnejLandskod. Standard SE. Bärs vidare.
CurrencystringnejStandard SEK. Bärs vidare.
BGstringnejBankgironummer.
PGstringnejPlusgironummer.
Activebooleannejfalse för inaktiverad leverantör.
CommentsstringnejAnteckning.
VATType25 | 12 | 6 | 0 | REVERSE | NORMAL | UIFnejStandard 25. Bärs vidare; momsbehandlingen i Klirr sätts per rad på leverantörsfakturan. Okända värden returneras som 25.
TermsOfPaymentstringnejBetalningsvillkor i dagar, t.ex. "30". Ett värde som inte går att tolka som antal dagar ignoreras.
PreDefinedAccountstringnejFörvalt kostnadskonto (BAS-konto).

Fält som Klirr inte modellerar (till exempel IBAN, BIC, BankAccountNumber, ClearingNumber, Phone2, OurReference) sparas och returneras oförändrade. Vid PUT slås de ihop med de redan sparade, så en smal uppdatering raderar inte IBAN.

Listform

GET /3/suppliers returnerar en reducerad rad med exakt dessa fält: @url, Active, Address1, Address2, BankAccountNumber, BG, BIC, City, CostCenter, CountryCode, Currency, DisablePaymentFile, Email, IBAN, Name, OrganisationNumber, PG, Phone, PreDefinedAccount, Project, SupplierNumber, TermsOfPayment, ZipCode. Telefon heter Phone i listan men Phone1 i den fullständiga formen, och listan har landskoden (CountryCode) men inte landsnamnet.

Skapa en leverantör

curl -X POST https://app.klirr.ai/api/v1/3/suppliers \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json" \
  -d '{"Supplier":{"Name":"Lindqvist Grossist AB","OrganisationNumber":"556000-0001","BG":"000-0000","TermsOfPayment":"30"}}'

Svar (201):

{
  "Supplier": {
    "@url": "https://app.klirr.ai/api/v1/3/suppliers/1",
    "SupplierNumber": "1",
    "Name": "Lindqvist Grossist AB",
    "OrganisationNumber": "556000-0001",
    "VATNumber": "",
    "Email": "",
    "Phone1": "",
    "Address1": "",
    "ZipCode": "",
    "City": "",
    "Country": "Sverige",
    "CountryCode": "SE",
    "Currency": "SEK",
    "BG": "000-0000",
    "PG": "",
    "Active": true,
    "Comments": "",
    "VATType": "25",
    "TermsOfPayment": "30",
    "PreDefinedAccount": ""
  }
}

Lista leverantörer

curl "https://app.klirr.ai/api/v1/3/suppliers?name=Lindqvist&sortby=name" \
  -H "Authorization: Bearer <access_token>"
{
  "Suppliers": [
    {
      "@url": "https://app.klirr.ai/api/v1/3/suppliers/1",
      "Active": true,
      "Address1": "",
      "Address2": "",
      "BankAccountNumber": "",
      "BG": "000-0000",
      "BIC": "",
      "City": "",
      "CostCenter": "",
      "CountryCode": "SE",
      "Currency": "SEK",
      "DisablePaymentFile": false,
      "Email": "",
      "IBAN": "",
      "Name": "Lindqvist Grossist AB",
      "OrganisationNumber": "556000-0001",
      "PG": "",
      "Phone": "",
      "PreDefinedAccount": "",
      "Project": "",
      "SupplierNumber": "1",
      "TermsOfPayment": "30",
      "ZipCode": ""
    }
  ],
  "MetaInformation": { "@TotalResources": 1, "@TotalPages": 1, "@CurrentPage": 1 }
}

Uppdatera en leverantör

PUT ändrar bara de fält du skickar. Använd "API_BLANK" för att tömma ett textfält (inte Name eller Active, som ger 400). Se Fortnox-kompatibilitet.

curl -X PUT https://app.klirr.ai/api/v1/3/suppliers/1 \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json" \
  -d '{"Supplier":{"Email":"[email protected]"}}'

Inaktivera en leverantör

DELETE raderar inte leverantören. Den inaktiveras (Active: false), eftersom artiklar och inlärd konteringshistorik refererar till den. Svaret är 204, och leverantören finns kvar på sin URL.

Fel

StatusCodeNär
4009000400Name saknas, ostödd sökparameter (inkl. filter), fler än en sökparameter, API_BLANK på Name/Active, eller ogiltigt TermsOfPayment (t.ex. negativt).
4049000404Kan inte hitta leverantören.
4099000409Leverantörsnumret används redan, eller organisationsnumret används redan av en annan leverantör.

Allmänna fel (401, 403, 429) beskrivs under Felkoder.

On this page