Nordlet

← Blogi

Mikä on kirjanpito-rajapinta? Selkokielinen opas alustanrakentajille

Selkokielinen määritelmä kirjanpito-rajapinnasta, sen erot vero- tai maksu-rajapintoihin sekä asiat, jotka kannattaa tarkistaa ennen ohjelmiston kytkemistä sellaiseen.

Nordlet Team · · 6 min lukuaika

Kirjanpito-rajapinta on ohjelmistorajapinta, jonka avulla yksi ohjelma voi pitää toisen ohjelman kirjanpitoa. Ohjelmistosi lähettää taloudellisen tapahtuman HTTP-protokollan yli. Rajapinta muuntaa tapahtuman tilikartan mukaisiksi tasapainotetuiksi kahdenkertaisen kirjanpidon kirjauksiksi, tallentaa ne muuttumattomina siten, että niitä ei voi salaa jälkikäteen muuttaa, käsittelee arvonlisäverotuksen ja palauttaa raportit, tositteet ja vientitiedostot saman rajapinnan kautta.

Tuo määritelmä tekee suurimman osan työstä. Kaikki muu tässä artikkelissa on vain sen seurausta.

Yhden lauseen tiivistelmä

Kirjanpito-rajapinta vastaanottaa sovelluksestasi taloudellisia tapahtumia, muuntaa ne tasapainotetuiksi kirjanpitovienneiksi, tallentaa ne pysyvästi yhdessä verokäsittelyn ja tositteiden kanssa sekä tarjoaa muodostuneen pääkirjan, tositteet ja raportit ohjelmoitavina rajapintapisteinä.

Jos tuote kutsuu itseään kirjanpito-rajapinnaksi, mutta ei tuota kirjanpitovientejä, se on jotain muuta hyvältä kuulostavalla nimellä varustettuna. Tämä ei välttämättä ole huono asia, mutta se tarkoittaa, että se ei tee sitä työtä, jota olet siltä pyytämässä.

Mitä kirjanpito-rajapinta ei ole

Neljä läheistä tuotekategoriaa sekoitetaan usein kirjanpito-rajapintoihin, yleensä projektin myöhäisessä vaiheessa.

Kategoria Mitä se tekee Mitä se ei tee
Verolaskennan rajapinta Palauttaa oikean verokannan tai veron määrän tapahtumalle Pidä kirjanpitoa tai säilytä päätöksen taustalla olevia tositteita lakisääteisen säilytysajan
Maksu-rajapinta Siirtää rahaa osapuolten välillä ja raportoi kyseisistä siirroista Kirjaa ansaittua komissiota, tilitettävää arvonlisäveroa tai myyjälle maksun ja tilityksen välillä olevaa velkaa
Integraatio- tai koontirajapinta Lukee ja kirjoittaa tietoja asiakkaan olemassa olevaan taloushallinnon ohjelmistoon Toimi totuuden lähteenä; kirjanpitosi on siinä työkalussa, jota kukin asiakas jo käyttää
Raportointi- tai BI-rajapinta Lukee lukuja olemassa olevasta kirjanpidosta ja visualisoi niitä Luo vientejä, joista luvut on johdettu

Jokaisella näistä on omat todelliset käyttötarkoituksensa. Alustan, jonka täytyy toimia totuuden lähteenä, on kuitenkin käytettävä kirjanpito-rajapintaa pohjanaan, ei korvaamaan sitä.

Viisi asiaa, jotka kirjanpito-rajapinnan on tehtävä

1. Kirjattava tasapainotetut viennit. Jokaisesta tapahtumasta syntyy debet- ja kredit-kirjauksia, joiden summa on tasan nolla. Kun ostaja maksaa 100 euroa markkinapaikalla, joka veloittaa 15 euron komission, kirjaus vie clearing-tilille debet 100 euroa, myyjän ostovelkoihin kredit 85 euroa ja komissiotuottoihin kredit 15 euroa. Tämä ei ole mitään turhaa kirjanpidollista rituaalia, vaan rakenteellinen tarkistus, joka nappaa kokonaiset integraatiovirheiden luokat kiinni ennen kuin ne ehtivät raporteille asti.

2. Säilytettävä historia. Kirjattua vientiä ei muokata. Virhe korjataan tekemällä oikaisukirjaus ja uusi korjattu vienti, jotka molemmat linkitetään alkuperäiseen. Suljetut kuukaudet lukitaan, jotta niille ei voi enää kohdistaa uusia tapahtumia.

3. Ratkaistava verotus. EU-kaupan osalta tämä tarkoittaa suorituspaikkaa, käännettyä verovelvollisuutta, virallisesta rekisteristä tarkistettuja arvonlisäveronumeroita sekä päätöksen perustelleita todisteita. Kaikki nämä tallennetaan tapahtuman yhteyteen sen sijaan, että ne heitettäisiin pois laskennan jälkeen.

4. Täsmäytettävä ulkoisen rahan kanssa. Kirjanpito, joka ei koskaan kohtaa tiliotetta, on vain arvailua. Rajapinnan on kyettävä lukemaan tiliotteita tai palveluntarjoajien tilityksiä ja täsmäämään ne kirjattujen tapahtumien kanssa.

5. Vientitoiminnot. Raportit, tositteet ja tilintarkastusaineistot sellaisissa muodoissa, jotka inhimillinen kirjanpitäjä ja veroviranomainen hyväksyvät.

Tuote, joka tekee kolme ensimmäistä mutta ei kahta viimeistä, jättää silti jonkun tekemään taulukkolaskentatöitä joka kuukausi.

Miltä rajapintakutsu todellisuudessa näyttää

Tekniikka on yksinkertaisempaa kuin kirjanpito. Nordletin rajapinnassa jokainen operaatio on RPC-tyylinen POST-pyyntö ennalta-arvattavalla rakenteella:

POST /v1/{module}/{resource}/{action}
Authorization: Bearer <api key>
Idempotency-Key: <your event id>

Luot myyntilaskun ja sen jälkeen laskutat sen. Laskutus on se hetki, jolloin kirjanpito tapahtuu: tosite saa katkeamattoman numeronsa, tasapainotettu kirjanpitovienti kirjautuu ja arvonlisäverorivit tallennetaan sen yhteyteen. Alustasi ei tarvitse koskaan koota debet- ja kredit-kirjauksia käsin.

Kolme yksityiskohtaa tuossa pätkässä merkitsevät enemmän kuin rajapintapisteen nimi:

  • Avaimen laajuus (scope). Avaimella on käyttöoikeuksia, kuten sales:write, joten integraatio saa vain tarvitsemansa pääsyn.
  • Idempotenssiavain. Kun toistat saman pyynnön samalla sisällöllä, saat takaisin tallennetun vastauksen toisen laskun luomisen sijaan. Jos lähetät saman avaimen eri sisällöllä, pyyntö hylätään virheellä idempotency_key_reuse hiljaisen hyväksynnän sijaan.
  • Raha merkkijonoina. Summat ovat desimaalimerkkijonoja, eivät liukulukuja, koska liukuluvut hukkaavat senttejä tavoilla, jotka paljastuvat tilikauden lopussa.

Mihin se sijoittuu arkkitehtuurissasi

Sovelluksesi pysyy käyttöliittymänä ja liiketoimintatapahtumien lähteenä. Kirjanpito-rajapinnasta tulee sen taustalla toimiva taloudellinen totuuden lähde. Kulku on yleensä seuraava:

  1. Tuotteessasi tapahtuu jotain: tilaus, palautus, tilitys tai tilauksen uusinta.
  2. Taustajärjestelmäsi kutsuu kirjanpito-rajapintaa tapahtumalla ja idempotenssiavaimella.
  3. Rajapinta kirjaa viennin, soveltaa arvonlisäveroa ja palauttaa tunnisteet, jotka tallennat omiin tietoihisi.
  4. Webhook-viesti, kuten sale_invoice.paid, kertoo järjestelmällesi tilan muutoksesta, jotta voit reagoida tapahtumiin kyselyn (polling) tekemisen sijaan.
  5. Pankkitapahtumat saapuvat pankkisyötteen tai tiliotetuonnin kautta ja ne täsmätään kirjattujen tositteiden kanssa.
  6. Tilikauden lopussa raportit ja verolaskelmat luodaan samasta datasta, ja suljettu kuukausi lukitaan.

Mikään tuolla listalla ei vaadi ihmistä avaamaan kirjanpito-ohjelmaa. Siinä on koko tämän kategorian idea.

Miten se vertautuu vaihtoehtoihin

Lähestymistapa Aloittamisen vaiva Tilintarkastusasema Skaalautuu transaktiovolyymin mukana
Taulukkolaskenta ja manuaalinen kirjaus Pienin Heikko; historia on muokattavissa Ei
Kirjanpito-ohjelma ja CSV-viennit Pieni Riippuu täysin kurinalaisuudesta Huonosti; joku tuo tiedostoja manuaalisesti
Aggregaattirajapinta kunkerran asiakkaan omaan kirjanpitoon Keskitaso Perii sen, mitä asiakkaan työkalu tekee Kyllä, mutta et omista kirjanpitoaineistoa
Sulautettu kirjanpito-rajapinta Keskitaso Vahva, jos pääkirja on muuttumaton ja kaudet lukittuvat Kyllä
Oman pääkirjan rakentaminen Suurin Vahva vain, jos rakennat myös kontrollit Kyllä, ja joudut ylläpitämään sitä ikuisesti

Oman järjestelmän rakentaminen on perusteltu valinta tietyille tiimeille. Sitä käsitellään tarkemmin markkinapaikkojen rakentamisen ja ostamisen vertailuoppaassamme.

Mitä tarkistaa ennen rajapintaan kytkeytymistä

  • Onko saldo laskettu vai tallennettu? Kysy, onko myyjän saldo kysely kirjanpitovientien yli vai jokin solu, jota joku päivittää. Vain toinen näistä kestää tilintarkastuksen.
  • Mitä tapahtuu uudelleenyrityksellä (retry)? Lähetä sama pyyntö kahdesti ja laske viennit.
  • Voitko muokata kirjattua vientiä? Vastauksen tulisi olla ei, minkä lisäksi tarjolla on dokumentoitu oikaisumenettely.
  • Hylkääkö lukittu kausi todella kirjauksen? Kokeile sitä hiekkalaatikossa. Nordlet palauttaa tilakoodin 409 kirjaukselle, jonka päivämäärä osuu lukitulle kaudelle.
  • Miten raha esitetään? Desimaalimerkkijonoina tai kokonaislukuina (sentteinä). Ei koskaan liukulukuina.
  • Mitä tilintarkastustietue sisältää? Toimija, toimenpide, entiteetti ja itse muutos kyselykelpoisessa muodossa sen sijaan, että ne olisivat hautautuneet lokitiedostoihin.
  • Mitkä ovat nopeusrajat (rate limits)? Nordlet sallii 300 pyyntöä minuutissa per rajapintain avain ja ilmoittaa jäljellä olevan budjettisi vastausotsakkeissa. Olipa luku mikä tahansa, ota se selville ennen synkronoinnin suunnittelua.
  • Miten saat tietosi ulos? Raportit, tositteet ja viennit muodoissa, jotka voit luovuttaa kirjanpitäjälle.

Jokainen näistä on testattavissa iltapäivässä hiekkalaatikkoyritystä vasten. Toimittajien ominaisuusluettelot eivät ole todisteita, mutta toistettava testi on.

FAQ

Onko kirjanpito-rajapinta sama asia kuin kirjanpito-ohjelmisto?

Se on kirjanpito-ohjelmisto, jonka käyttöliittymä on siirretty toisaalle. Perinteinen taloushallinnon ohjelmisto laittaa ihmisen pääkirjan ääreen, kun taas kirjanpito-rajapinta laittaa koodisi sinne. Taustalla olevat velvoitteet, kahdenkertaisen kirjanpidon rakenne ja raportit ovat aivan samat.

Tarvitsenko silti kirjanpitäjää, jos käytän tällaista?

Kyllä. Rajapinta automatisoi kirjaamisen, laskennan ja raportoinnin. Se ei tee harkintaa vaativia päätöksiä luokittelusta, varauksista tai siitä, miten tiettyä sopimusta tulisi käsitellä, eikä se useimmissa maissa allekirjoita tai lähetä lakisääteisiä tilinpäätöksiäsi.

Voinko käyttää kirjanpito-rajapintaa ymmärtämättä kahdenkertaista kirjanpitoa?

Osittain. Hyvä rajapinta muodostaa kirjanpitoviennit puolestasi liiketoimintatositteen, kuten laskun, pohjalta. Sinun täytyy silti ymmärtää, mitä tilit tarkoittavat, kun luet raporttia tai selität saldoa tilintarkastajalle.

Mitä eroa on kirjanpito-rajapinnalla ja pääkirja-rajapinnalla (ledger API)?

Pääkirja-rajapinta kirjaa tasapainotettuja siirtoja tilien välillä. Kirjanpito-rajapinta tekee saman ja lisää lakisääteisen kerroksen päälle: tositteet laillisella numeroinnilla, arvonlisäverokäsittelyn, verorekisterit, käyttöomaisuuden, kaudensulun ja ne raportit, joita kyseinen lainkäyttöalue odottaa. Jokainen kirjanpito-rajapinta sisältää pääkirjan, mutta jokainen pääkirja ei ole kirjanpitojärjestelmä.

Kuinka kauan integraation tekeminen kestää?

Ensimmäisen toimivan ketjun luomiseen - asiakkaan luominen, laskun laskutus, maksun vastaanottaminen, kirjanpitoviennin näkeminen - kannattaa varata tyypitettyä SDK:ta ja hiekkalaatikkoa käyttäen päiviä viikkojen sijaan. Tuotantointegraatio, joka kattaa palautukset, oikaisut, useat valuutat, täsmäytykset ja kaudensulut, on laajempi työmaa, ja rehellinen arvio riippuu siitä, kuinka montaa näistä tilanteista tuotteesi todellisuudessa synnyttää.

Lisäluettavaa