Nordlet

← Dokumentation / Guider

Intäktsredovisning (IFRS 15 / ASC 606)

Upplupna intäkter, periodiserade intäkter, milstolpe- och färdigställandebaserade scheman, återbetalningsskulder, abonnemang.

Periodisering av intäkter per rad och schemalagd redovisning: avtalsreserveringar, metoder över tid, allokering av transaktionspris, avsättningar för återbetalning, abonnemang och avtalsändringar. Standardflödet är oförändrat – en vanlig fakturarad redovisar fortfarande intäkten i sin helhet vid utfärdandet (vid en tidpunkt), vilket är förenligt med 606/15 för en enskild prestationsförpliktelse som uppfylls vid leverans. Allt nedan är frivilligt (opt-in) per fakturarad.

Programvaran har stöd för 606/15; det rapporterande företaget är det som uppfyller (eller inte uppfyller) reglerna. Att välja rätt metod per förpliktelse, uppskatta fristående försäljningspriser och återbetalningsgrader samt bedöma om återstående varor eller tjänster är distinkta vid en ändring är bedömningar som den redovisningsskyldige gör.

Konton

Tre konton i kontoplanen stöder flödena, kopplade som konteringsregler (kan åsidosättas per bolag via ledger/posting-rules/update): revenue.deferredIncome → 4910 "Ateinančių laikotarpių pajamos" (avtalsförpliktelse), revenue.refundLiability → 4450 "Grąžinimo įsipareigojimai pirkėjams", revenue.contractAsset → 2910 "Sukauptos pajamos". Befintliga bolag får kontona genom att tillämpa kontoplanmallar på nytt (ledger/accounts/apply-template).

Prestationsförpliktelser på fakturarader

Rader i sales/invoices/create|update accepterar recognition: { method, startDate, endDate, milestones } där method är någon av följande:

Metod Beteende vid utfärdande Redovisning
point_in_time (standard) Krediterar hela intäkten vid utfärdande, oförändrat
ratable (startDate..endDate) Krediterar förutbetalda intäkter dagviktat månatligt schema över tjänsteperioden
milestone (milestones[], procentsatser som summerar till 100) Krediterar förutbetalda intäkter en delbetalning per milstolpe, redovisas vid händelsen
percent_complete Krediterar förutbetalda intäkter via kumulativa förloppsrapporter

Kundreskontra och moms berörs inte: utfärdandet bokför debet 2410 för bruttobeloppet, kredit 4492 för moms och delar nettot mellan intäkt (rader med tidpunkt) och 4910 (periodiserade rader). Scheman lagras i bolagets basvaluta till växelkursen på utfärdandedagen – sales/recognition-schedules/list (sales:read) visar varje delbetalning med status pending | recognized | cancelled.

Allokering av transaktionspris. Vid mer än en rad fördelar standaloneSellingPrice på varje rad fakturanettot pro rata över förpliktelserna (IFRS 15 §76–80); det allokerade beloppet – inte det angivna radpriset – styr uppdelningen mellan intäkt/förutbetalt och scheman. Momsen följer fakturaraderna i enlighet med angivet belopp.

Intäktsmotor

Intäktsredovisningen bokför debet 4910 / kredit intäkt (tjänst/produktkonto och kostnadsställe från ursprungsraden) som en enda verifikation per körning, som registreras i sales/recognition/runs/list.

  • POST /v1/sales/recognition/compute (sales:read) { asOfDate? } – förhandsgranskning (dry-run) av förfallna periodiserade delbetalningar.
  • POST /v1/sales/recognition/run (sales:write) { asOfDate?, postingDate?, scheduleIds? } – bokför förfallna periodiserade delbetalningar, eller exakt de delbetalningar som anges av scheduleIds (oavsett metod).
  • POST /v1/sales/recognition/progress (sales:write) { invoiceLineId, percentComplete, date? } – rader med färdigställandegrad: rapportera kumulativt förlopp; den nyligen intjänade differensen bokförs omedelbart, baksteg avvisas.
  • POST /v1/sales/recognition/summary (sales:read) – hittills intjänat, återstående, antal väntande samt nästa förfallodatum per rad, plus företagets totalsummor.

Tre händelser driver intäktsredovisningen utan avsökning (polling): periodlåsning (ledger/periods/lock) redovisar först allt som förfallit till och med periodens utgång, bokfört på periodens sista dag; leveransgodkännande (sales/acts/issue) redovisar den länkade fakturans väntande milstolpsdelbetalningar på datumet för godkännandet; och en schemadagstimer aktiveras till nästa periodiseringsdatum och bokför per bolag när det inträffar (en låst period prövas igen senare). Milstolpar är händelsebaserade av en anledning – en milstolpes expectedDate är endast planeringstinformation och utlöser aldrig intäktsredovisning på egen hand.

Variabel ersättning – återbetalningsskuld

refundEstimatePercent på en rad krediterar den andelen av det (allokerade) nettot till 4450 i stället för till intäkt eller förutbetald intäkt vid utfärdandet – förväntade återbetalningar undantas från transaktionspriset (IFRS 15 §55). Status per faktura finns i sales/refund-liability/list (uppskattad, utnyttjad, observerad slutlig återbetalning, återstående).

Utfall: en kreditnota mot fakturan debiterar 4450 upp till den återstående skulden innan intäkten rörs. sales/refund-liability/true-up (sales:write) { invoiceId, estimatedTotal, date? } reviderar uppskattningen och bokför differensen mot intäkten i valfri riktning (golvad vid det utnyttjade beloppet). Betaltjänstleverantörens (PSP) avräkningsåterbetalningar som matchas mot fakturan registreras på skulden och genererar en refund_liability.actual-webbhook – de bokförs inte direkt mot 4450, eftersom justering av intäkt och utgående moms kräver kreditnotan som momsunderlag.

Abonnemang – avtal till fakturor

Ge ett avtal en billingPeriod (monthly | quarterly | annual) och agreements/generate-invoice (agreements:write) skapar nästa ofakturerade periods utkast till faktura: rader från avtalsartiklarna (eller value som en rad per period), var och en med periodisering över tjänsteperioden. agreements/billing/run { asOfDate? } går igenom alla aktiva avtal, genererar varje förfallen period och avslutar avtal som är fullt fakturerade efter sin slutdag. Avslutande korta perioder prorateras efter dagar; autoRenew förlänger avtalsvillkoren med sin egen längd och fortsätter faktureringen. Genererade fakturor har fältet agreementId (filtreringsbart i sales/invoices/list).

Avtalsändringar

POST /v1/sales/recognition/modify (sales:write) { invoiceLineId, approach, date?, newEndDate?, newMilestones? }:

  • prospective – avbryt det väntande schemat och fördela det oredovisade återstående beloppet över de nya villkoren från och med ändringsdatumet (återstående varor eller tjänster är distinkta: IFRS 15 §20(a), §21(a)). Periodiserade rader anger newEndDate; milstolpsrader anger newMilestones (procent av det återstående beloppet).
  • cumulative_catch_up (endast periodiserade) – beräkna om intäkten som om de nya villkoren gällt från början och bokför differensen omedelbart, i valfri riktning (en enskild delvis uppfylld förpliktelse: §21(b)); resten omfördelas.

Prissänkningar hanteras via kreditnotor: en kreditnota mot en faktura med väntande scheman debiterar förutbetalda intäkter först och kortar det väntande schemat från dess bortre ände, därefter återbetalningsskulden och först därefter intäkten. Prishöjningar är nya fakturor med egen intäktsredovisning – proaktiva per konstruktion.

Begränsningar

  • Scheman och intäktskonteringar utgörs av belopp i basvaluta (EUR) som fastställs till växelkursen på utfärdandedagen; upplupna salon omräknas inte för valutakursförändringar efter utfärdandet.
  • Kontot för kontraktstillgång (2910) finns i kontoplanen och som konteringsnyckel, men inget automatiserat flöde för ofakturerad intäkt bokförs där ännu – att redovisa före fakturering sker i nuläget via manuell verifikation.
  • Allokering kräver ett fristående försäljningspris på alla fakturorader eller inga alls; restmetoden (§79(c)) är inte implementerad.
  • Återbetalningsskulder följs upp exklusive moms på fakturanivå; motsvarande tillgång för rätten att återfå returnerade varor (§B25) modelleras inte.
  • Kumulativ ikapp-tagning gäller för periodiserade rader; omplanering av milstolpar är enbart proaktiv; rader med färdigställandegrad justeras via förloppsrapporter, inte via modify.
  • Väsentliga finansieringskomponenter (§60–65), icke-materiell ersättning och ersättning som ska betalas till en kund omfattas inte.
  • Automatiska schemakörningar bokförs den dag de utlöses; ikapp-bokföring i låsta perioder avvisas – lås upp perioden eller använd ett öppet bokföringsdatum.