Hoppa till innehåll

Annytab Dox Travel Expense Claim v1

I den här dokumentationen beskriver vi Annytab Dox Travel Expense Claim v1, vår egna licensfria standard för en reseräkning som kan användas av anställda för att få ersättning från sin arbetsgivare för utgifter vid en tjänsteresa.

Den här standarden bygger på JSON, ett kompakt och textbaserat format som används för att utbyta data. Det är smidigt att serialisera objekt i program till JSON och det är smidigt att deserialisera JSON till objekt i program. Denna standard finns inkluderad i ett NuGet paket: a-dox-standards (NuGet Gallery).

AnnytabDoxTravelExpenseClaim [Modell]

Egenskap
Typ
Beskrivning
personnel_id
string
Anställningsnumret för den person som upprättar reseräkningen.
name
string
Namnet på den person som upprättar reseräkningen.
cost_center
string
En kod för den division, avdelning eller aktivitet som personen tillhör. Används för att kunna fördela kostnaden till den enhet som skall bära kostnaden.
currency_code
string
En kod på 3 bokstäver enligt ISO 4217 som anger den valuta som gäller för beloppen i dokumentet.
trip_purpose
string
Syftet med resan, vad resan innebär för företaget.
destination
string
Resmålet för resan. Exempelvis: en region, en stad eller en adress.
departure_date
string
Datum och tid då resan påbörjades. Skall anges som yyyy-MM-ddThh:mm:ss (2017-09-31T08:00:54).
return_date
string
Datum och tid då resan avslutades. Skall anges som yyyy-MM-ddThh:mm:ss (2017-09-31T08:00:54).
expense_rows
IList<TravelExpenseRow>
En lista med utgifter, se beskrivning av TravelExpenseRow nedan.

TravelExpenseRow [Modell]

Egenskap
Typ
Beskrivning
code
string
En kod för utgiftstypen. Används för att underlätta kopplingar i inläsande program.
description
string
En beskrivning av utgiften. Exempelvis: Logi, Taxi eller Parkering.
quantity
decimal
Utgiftens kvantitet. Antalet enheter avseende utgiftstypen.
unit_code
string
En enhetskod avseende den angivna kvantiteten. Exempelvis: st, dgr eller h.
unit_price
decimal
Priset för en enhet av utgiftstypen inklusive moms, anges i valutan för reseräkningen.
vat_amount
decimal
Avdragsgill ingående moms avseende utgiften, anges i valutan för reseräkningen.
comment
string
En längre kommentar. Vid representation kan man exempelvis ange vilka som deltog och syftet med representationen.

Koder

Kod
Beskrivning
ADT1000
Extern representation, mat
ADT1001
Färdbiljett
ADT1002
Gåvor, ej representation
ADT1003
Hyrbil
ADT1004
Intern representation, mat
ADT1005
Inträdesbiljett
ADT1006
Kostavdrag frukost, inrikes
ADT1007
Kostavdrag frukost, utrikes
ADT1008
Kostavdrag lunch, inrikes
ADT1009
Kostavdrag lunch, utrikes
ADT1010
Kostavdrag middag, inrikes
ADT1011
Kostavdrag middag, utrikes
ADT1012
Kostförmån frukost
ADT1013
Kostförmån lunch
ADT1014
Kostförmån middag
ADT1015
Logi
ADT1016
Milersättning egen bil, skattefri
ADT1017
Milersättning eget bil, skattepliktig
ADT1018
Milersättning förmånsbil, skattefri
ADT1019
Milersättning förmånsbil, skattepliktig
ADT1020
Måltid, ej representation
ADT1021
Nattraktamente inrikes, skattefritt
ADT1022
Nattraktamente inrikes, skattepliktigt
ADT1023
Nattraktamente utrikes, skattefritt
ADT1024
Nattraktamente utrikes, skattepliktigt
ADT1025
Parkering
ADT1026
Representationsgåvor
ADT1027
Taxi
ADT1028
Traktamente inrikes, skattefritt
ADT1029
Traktamente inrikes, skattepliktigt
ADT1030
Traktamente utrikes, skattefritt
ADT1031
Traktamente utrikes, skattepliktigt
ADT1032
Övriga utgifter för representation
ADT1033
Övrigt

JSON-Exempel

{
  "personnel_id": "001",
  "name": "Nils Nilsson",
  "cost_center": "Marketing",
  "currency_code": "SEK",
  "trip_purpose": "Meeting with our largest customer",
  "destination": "Stockholm",
  "departure_date": "2018-08-01T08:00:00",
  "return_date": "2018-08-02T16:00:00",
  "expense_rows": [
    {
      "code": "ADT1016",
      "description": "Private car fuel, tax free",
      "quantity": 200,
      "unit_code": "km",
      "unit_price": 1.85
    },
    {
      "code": "ADT1015",
      "description": "Accomodation",
      "quantity": 1,
      "unit_code": "day",
      "unit_price": 1495,
      "vat_amount": 200,
      "comment": "Just a comment."
    }
  ]
}

Exempelkod

// Create a travel expense claim
AnnytabDoxTravelExpenseClaim post = new AnnytabDoxTravelExpenseClaim();
post.personnel_id = "001";
post.name = "Nils Nilsson";
post.cost_center = "Marketing";
post.currency_code = "SEK";
post.trip_purpose = "Meeting with our largest customer";
post.destination = "Stockholm";
post.departure_date = "2018-08-01T08:00:00";
post.return_date = "2018-08-02T16:00:00";

// Add expense rows
post.expense_rows = new List<TravelExpenseRow>();
post.expense_rows.Add(new TravelExpenseRow
{
    code = "ADT1016",
    description = "Private car fuel, tax free",
    quantity = 200,
    unit_code = "km",
    unit_price = 1.85M
});
post.expense_rows.Add(new TravelExpenseRow
{
    code = "ADT1015",
    description = "Accomodation",
    quantity = 1,
    unit_code = "day",
    unit_price = 1495M
});

// Convert the object to a byte array
string json = JsonConvert.SerializeObject(post, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore });
byte[] array = Encoding.UTF8.GetBytes(json);

// Write to the stream
stream.Write(array, 0, array.Length);

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *