Mva-melding innsending API
For generell informasjon om tjenestene se egne sider om:
- Bruk av tjenestene
- Sikkerhetsmekansimer
- Rettighetspakker
- Feilhåndtering
- Versjonering
- Teknisk spesifikasjon
Scope
Følgende scope skal benyttes ved autentisering i Maskinporten: skatteetaten:mvameldinginnsending
Sikkerhet
For mva-meldinginnsending er det Altinn token som brukes:
Teknisk spesifikasjon
Introduksjon
API'ene fungerer for følgende kategorier skattemeldinger for merverdiavgift: Ordinær mva-melding (RF-0002/0004), mva-melding for omvendt avgiftsplikt (RF-0005) og Skattemelding for merverdiavgiftskompensasjon (RF-0009). Når disse meldingene skal sendes til Skatteetaten fra et sluttbrukersystem (SBS) burde disse APIene brukes:
- Skatteetatens MVA-Melding validerings API
- Skatteetatens Altinn3 MVA-Melding-Innsending's API
I API-beskrivelsen brukes mva-melding som en samlebetegnelse på de ulike meldingstypene. API'ene beskrives under.
Prosess innsending og validering
Innsending av Mva Melding gjøres mot Skatteetatens Altinn3 Instans API for Innsending. Detaljert beskrivelse av Altinn3's Instans-API finnes her Altinn Studio Instans API. Inngående kjennskap til dette API'et er ikke nødvendig da denne dokumentasjonen dekker behovet for Mva Melding Innsending.
Det anbefales å benytte swagger dokumentasjonen sammen med denne API-beskrivelsen.
I tillegg finnes det et Python script som kan benyttes til manuell testing under Test
Prosessen gjennomføres med en sekvens av kall mot Instans-API´et og beskrives i detalj under sekvensdiagrammet og er som følger:
-
Autentisering
- Veksle ID-porten token til Altinn-token
-
Validering mot Skatteetaten
-
Utfylling mot Altinn3-App
- Opprett instans mot Altinn3-App
- Last opp MvaMeldingInnsending mot Altinn3-App
- Last opp mva-melding mot Altinn3-App
- Last opp vedlegg mot Altinn3-App
-
Fullfør utfylling mot Altinn3-App
-
Fullfør innsending mot Altinn3-App
-
Hent tilbakemelding mot Altinn3-App
Instans API'et til Mva Melding Innsending er tilgjengelig på denne URLen:
instansApiUrl = "https://skd.apps.tt02.altinn.no/skd/mva-melding-innsending-etm2/instances"
I følgende sekvensdiagram vil applikasjonsUrl'en være skjult, så hvis det er skrevet POST: /intances/
så er det implisitt POST: instansApiUrl
Valider skattemelding
https://skatteetaten.github.io/api-dokumentasjon/api/mvameldingvalidering?tab=Om+tjenesten
Opprett Instans
POST {applikasjonsUrl}/instances/
HEADERS:
"Authorization": "Bearer " + "{altinnToken}"
"content-type": "application/json"
CONTENT/BODY:
{
"instanceOwner": {
"organisationNumber": "{organisasjonsnummer}"
}
}
Last Opp MvaMeldingInnsending
PUT {mvaMeldingInnsendingsUrl}
HEADERS:
"Authorization": "Bearer " + "{altinnToken}"
"content-type": "application/xml"
Content:
<?xml version="1.0" encoding="UTF-8"?>
<mvaMeldingInnsending>
...
</mvaMeldingInnsending>
Last opp MvaMelding
POST {instansUrl}/data?datatype=mvamelding
HEADERS:
"Authorization": "Bearer " + "{altinnToken}"
"content-type": "text/xml"
"Content-Disposition": "attachment; filename=mvaMelding.xml"
Content:
<?xml version="1.0" encoding="UTF-8"?>
<mvaMeldingDto xmlns="no:skatteetaten:fastsetting:avgift:mva:skattemeldingformerverdiavgift:v1.0">
...
</mvaMeldingDto>
Last Opp Vedlegg
POST {instansUrl}/data?datatype=binaerVedlegg
HEADERS:
"Authorization": "Bearer " + "{altinnToken}"
"content-type": "application/pdf"
"Content-Disposition": "attachment; filename=merknaderTilMvaMeldingen.pdf"
Content:
{pdf-vedlegg i binærformat}
Fullfør utfylling
PUT {instansUrl}/process/next
HEADERS:
"Authorization": "Bearer " + "{altinnToken}"
"content-type": "application/json"
Fullfør MvaMeldingInnsending
PUT {instansUrl}/process/next
HEADERS:
"Authorization": "Bearer " + "{altinnToken}"
"content-type": "application/json"