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äg | Beskrivning |
|---|---|
| GET/api/v1/3/suppliers | Lista leverantörer (reducerad listform) |
| POST/api/v1/3/suppliers | Skapa 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):
| Parameter | Värden | Beskrivning |
|---|---|---|
sortby | suppliernumber, name | Standard är suppliernumber. |
suppliernumber | text | Exakt leverantörsnummer. |
name | text | Sökning i namnet. |
organisationnumber | text | Sökning i organisationsnumret. |
email | text | Sökning i e-postadressen. |
phone | text | Sökning i telefonnumret. |
zipcode | text | Sökning i postnumret. |
city | text | Sö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ält | Typ | Skrivskyddat | Beskrivning |
|---|---|---|---|
@url | string | ja | Resursens URL i Klirr. |
SupplierNumber | string | efter skapande | Leverantörsnummer. Utelämnas det vid POST tilldelas nästa lediga nummer. Kan inte ändras. |
Name | string | nej | Obligatoriskt vid POST. |
OrganisationNumber | string | nej | Organisationsnummer. POST med ett nummer som redan finns hos en annan leverantör avvisas med 409. |
VATNumber | string | nej | Momsregistreringsnummer. |
Email | string | nej | E-post. |
Phone1 | string | nej | Telefon. |
Address1 | string | nej | Adress. |
ZipCode | string | nej | Postnummer. |
City | string | nej | Ort. |
Country | string | nej | Landsnamn. Standard Sverige. Bärs vidare oförändrat. |
CountryCode | string | nej | Landskod. Standard SE. Bärs vidare. |
Currency | string | nej | Standard SEK. Bärs vidare. |
BG | string | nej | Bankgironummer. |
PG | string | nej | Plusgironummer. |
Active | boolean | nej | false för inaktiverad leverantör. |
Comments | string | nej | Anteckning. |
VATType | 25 | 12 | 6 | 0 | REVERSE | NORMAL | UIF | nej | Standard 25. Bärs vidare; momsbehandlingen i Klirr sätts per rad på leverantörsfakturan. Okända värden returneras som 25. |
TermsOfPayment | string | nej | Betalningsvillkor i dagar, t.ex. "30". Ett värde som inte går att tolka som antal dagar ignoreras. |
PreDefinedAccount | string | nej | Fö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
| Status | Code | När |
|---|---|---|
| 400 | 9000400 | Name saknas, ostödd sökparameter (inkl. filter), fler än en sökparameter, API_BLANK på Name/Active, eller ogiltigt TermsOfPayment (t.ex. negativt). |
| 404 | 9000404 | Kan inte hitta leverantören. |
| 409 | 9000409 | Leverantörsnumret används redan, eller organisationsnumret används redan av en annan leverantör. |
Allmänna fel (401, 403, 429) beskrivs under Felkoder.