17 nov 2025·7 min leestijd

Valuta-afronding in financiële apps: geld veilig opslaan

Afronding van valuta in financiële apps kan centfouten veroorzaken. Leer over opslag in integer-centen, belastingafrondingsregels en consistente weergave op web en mobiel.

Valuta-afronding in financiële apps: geld veilig opslaan

Waarom centfouten gebeuren

Een centfout is een type fout dat gebruikers meteen opvalt. Een winkelwagentotaal staat als $19.99 bij de productlijst, maar wordt $20.00 bij de checkout. Een terugbetaling van $14.38 komt aan als $14.37. Een factuurregel zegt “Belasting: $1.45”, maar het eindtotaal lijkt met een andere belastingberekening te zijn opgeteld.

Deze problemen komen meestal door kleine afrondingsverschillen die zich opstapelen. Geld is niet zomaar “een getal”. Het heeft regels: hoeveel decimalen een valuta gebruikt, wanneer je afrondt, en of je per regel afrondt of pas op het eindtotaal. Als je app op één plek een andere keuze maakt, kan er één cent bij komen of verdwijnen.

Ze verschijnen ook vaak alleen soms, waardoor ze lastig te debuggen zijn. Dezelfde invoer kan verschillende centwaarden opleveren afhankelijk van apparaat- of locale-instellingen, de volgorde van bewerkingen, of hoe waarden tussen types worden geconverteerd.

Veelvoorkomende triggers zijn rekenen met float en afronden “aan het eind” (maar “het eind” is niet overal hetzelfde), belasting per item toepassen op het ene scherm en over het subtotaal op een ander, valuta of wisselkoersen mengen en inconsistent afronden, of waarden formatteren voor weergave en per ongeluk opnieuw parsen als nummers.

De schade treft het hardst waar vertrouwen kwetsbaar is en bedragen worden gecontroleerd: checkout-totale bedragen, terugbetalingen, facturen, abonnementen, fooi, uitbetalingen en onkostendeclaraties. Een centverschil kan betalingsfouten, reconcile-problemen en supporttickets veroorzaken die zeggen “jullie app steelt van mij.”

Het doel is simpel: dezelfde invoer moet overal dezelfde centwaarde opleveren. Zelfde items, zelfde belasting, zelfde kortingen, dezelfde afrondingsregel, ongeacht scherm, apparaat, taal of export.

Voorbeeld: als twee items van $9.99 7,25% belasting hebben, beslis of je belasting per item afrondt of op het subtotaal, en doe dat dan in de backend, de web-UI en de mobiele app. Consistentie voorkomt het “waarom is het hier anders?”-moment.

Waarom floats riskant zijn voor geld

De meeste programmeertalen slaan float en double waarden binair op. Veel decimale prijzen kunnen niet exact in binair worden weergegeven, dus het getal dat je denkt opgeslagen te hebben is vaak een heel klein beetje hoger of lager.

Een klassiek voorbeeld is 0.1 + 0.2. In veel systemen wordt dat 0.30000000000000004. Dat lijkt onschuldig, maar geldlogica is meestal een keten: itemprijzen, kortingen, belasting, kosten, en dan eindafronding. Kleine fouten kunnen een afrondingsbeslissing omkeren en een centverschil veroorzaken.

Symptomen die mensen opmerken als geldafronding misgaat:

  • Waarden zoals 9.989999 of 19.9000001 verschijnen in logs of API-responses.
  • Totalen lopen langzaam uit na het toevoegen van veel items, ook al ziet elk item er op zichzelf goed uit.
  • Een terugbetaling komt niet overeen met de originele afschrijving met $0.01 verschil.
  • Hetzelfde winkelwagentotaal verschilt tussen web, mobiel en backend.

Formattering verbergt vaak het probleem. Als je 9.989999 met twee decimalen afdrukt, zie je 9.99, dus alles lijkt correct. De fout verschijnt later wanneer je veel waarden optelt, totalen vergelijkt of afrondt na belasting. Daarom schakelen teams soms met dit probleem naar productie en ontdekken het pas tijdens reconciliatie met betalingsproviders of accounting-exports.

Een eenvoudige vuistregel: sla geen geld op of tel het niet op als floating-point nummer. Behandel geld als een geheel aantal minor units (zoals centen), of gebruik een decimal-type dat exacte decimale rekenkunde garandeert.

Als je een backend, webapp of mobiele app bouwt (ook met no-code platformen zoals AppMaster), houd overal hetzelfde principe aan: sla precieze waarden op, reken met precieze waarden en formatteer pas voor weergave aan het eind.

Kies een geldmodel dat bij echte valuta past

De meeste geldfouten beginnen voordat er ook maar gerekend is: het datamodel komt niet overeen met hoe de valuta daadwerkelijk werkt. Krijg het model vanaf het begin goed en afronding wordt een regelsprobleem, geen gokspel.

De veiligste standaard is om geld op te slaan als een geheel getal in de minor unit van de valuta. Voor USD betekent dat centen; voor EUR eurocenten. Je database en code werken met exacte integers, en je voegt pas “decimalen toe” wanneer je voor mensen formatteert.

Niet elke valuta heeft 2 decimalen, dus je model moet valuta-aware zijn. JPY heeft 0 minor decimalen (1 yen is de kleinste eenheid). BHD gebruikt vaak 3 decimalen (1 dinar = 1000 fils). Als je “twee decimalen overal” hardcoded, ga je ongemerkt te veel of te weinig in rekening brengen.

Een praktisch geldrecord heeft meestal:

  • amount_minor (integer, zoals 1999 voor $19.99)
  • currency_code (string zoals USD, EUR, JPY)
  • optioneel minor_unit of scale (0, 2, 3) als je systeem het niet betrouwbaar kan opzoeken

Sla de valutacode bij elk bedrag op, zelfs in dezelfde tabel. Dat voorkomt fouten als je later multi-currency prijzen, terugbetalingen of rapporten toevoegt.

Bepaal ook waar afronding is toegestaan en waar het verboden is. Een beleid dat goed werkt is: rond niet binnen interne totalen, allocaties, grootboeken of conversies die nog in bewerking zijn; rond alleen op gedefinieerde grenzen (zoals een belastingstap, kortingsstap of finale factuurregel); en noteer altijd de gebruikte afrondingsmodus (half up, half even, naar beneden) zodat resultaten reproduceerbaar zijn.

Stap voor stap: implementeer minor-unit integers voor geld

Als je minder verrassingen wilt, kies één interne vorm voor geld en breek die niet: sla bedragen op als integers in de minor unit van de valuta (vaak centen).

Dat betekent dat $10.99 1099 wordt met valuta USD. Voor valuta zonder minor unit zoals JPY blijft 1.500 yen 1500.

Een eenvoudig implementatiepad dat meegroeit met je app:

  1. Database: sla amount_minor op als 64-bit integer plus een valutacode (zoals USD, EUR, JPY). Noem de kolom duidelijk zodat niemand hem voor een decimaal verwart.
  2. API-contract: zend en ontvang { amount_minor: 1099, currency: "USD" }. Vermijd geformatteerde strings zoals "$10.99" en vermijd JSON-floats.
  3. UI-invoer: behandel wat de gebruiker typt als tekst, niet als een nummer. Normaliseer het (trim spaties, accepteer één decimale scheidingsteken), en converteer dan met de minor-unit digits van de valuta.
  4. Alle rekenwerk in integers: totalen, regeloptellingen, kortingen, kosten en belastingen moeten alleen op integers werken. Definieer regels zoals “percentagekorting wordt berekend en daarna afgerond naar minor units” en pas die altijd op dezelfde manier toe.
  5. Pas alleen aan het eind opmaak toe: wanneer je geld toont, zet amount_minor om naar een weergavestring met locale- en valutaregels. Parse nooit je eigen geformatteerde output terug naar berekening.

Een praktisch parse-voorbeeld: voor USD neem je "12.3" en behandel je het als "12.30" voordat je het converteert naar 1230. Voor JPY wijs je decimalen vanaf het begin af.

Belasting-, korting- en kostenafrondingsregels

Eén logica voor alle clients
Genereer backend, web en native apps vanuit één set geldregels.
Probeer AppMaster

De meeste centdiscussies zijn geen rekenfouten. Het zijn beleidsfouten. Twee systemen kunnen beide “correct” zijn en toch verschillen als ze op verschillende momenten afronden.

Schrijf je afrondingsbeleid op en gebruik het overal: berekeningen, bonnen, exports en terugbetalingen. Veelvoorkomende keuzes zijn rounding half-up (0.5 naar boven) en half-even (0.5 naar het dichtstbijzijnde even cent). Sommige kosten vereisen altijd naar boven (ceiling) zodat je nooit te weinig in rekening brengt.

Totalen veranderen meestal door een paar beslissingen: of je per regel afrondt of op de factuur, of je regels mixt (bijv. belasting per regel maar kosten op de factuur), en of prijzen belastingsinclusief zijn (je berekent netto en belasting terug) of belasting-exclusief (je berekent belasting van netto).

Kortingen voegen een andere splitsing toe. “10% korting” die vóór belasting wordt toegepast verkleint de belastbare basis, terwijl een korting na belasting vermindert wat de klant betaalt maar mogelijk de gerapporteerde belasting niet verandert, afhankelijk van jurisdictie en contract.

Een klein voorbeeld toont waarom strikte regels belangrijk zijn. Twee items van $9.99, 7,5% belasting. Als je belasting per regel afrondt, is elke regelbelasting $0,75 (9.99 x 0.075 = 0.74925). Totale belasting wordt $1,50. Als je belasting over het factuurtotaal doet, is belasting hier ook $1,50, maar verander prijzen licht en je ziet een 1-cent verschil.

Schrijf de regel in gewone taal zodat support en financiën het kunnen uitleggen. Hergebruik daarna dezelfde helper voor belasting, kosten, kortingen en terugbetalingen.

Valutaomzetting zonder driftende totalen

Multi-currency rekenwerk is waar kleine afrondingskeuzes langzaam totalen kunnen veranderen. Het doel is eenvoudig: converteer één keer, rond doelbewust en bewaar de oorspronkelijke feiten voor later.

Sla wisselkoersen op met expliciete precisie. Een gangbaar patroon is een geschaalde integer, zoals “rate_micro” waarbij 1.234567 wordt opgeslagen als 1234567 met een schaal van 1.000.000. Een andere optie is een vaste decimaaltype, maar noteer nog steeds de schaal in je velden zodat die niet geraden kan worden.

Kies een basismunt voor rapportage en accounting (vaak je bedrijfsvaluta). Converteer binnenkomende bedragen naar de basismunt voor grootboeken en analytics, maar bewaar het originele bedrag en de valuta ernaast. Zo kun je later elk nummer uitleggen.

Regels die drift voorkomen:

  • Converteer voor accounting slechts in één richting (forex naar basis), en vermijd heen-en-weer converteren.
  • Bepaal wanneer je afrondt: rond per regel wanneer je regeltotalen moet tonen, of rond aan het eind als je alleen een eindtotaal toont.
  • Gebruik één afrondingsmodus consequent en documenteer die.
  • Bewaar het originele bedrag, valuta en de exacte koers die voor de transactie is gebruikt.

Voorbeeld: een klant betaalt 19.99 EUR, en je slaat dat op als 1999 minor units met currency=EUR. Je slaat ook de koers op die bij checkout is gebruikt (bijv. EUR naar USD in micro-units). Je grootboek slaat het geconverteerde USD-bedrag op (afgerond volgens je gekozen regel), maar terugbetalingen gebruiken het opgeslagen originele EUR-bedrag en valuta, niet een reconversie vanuit USD. Dat voorkomt tickets als “waarom kreeg ik 19,98 EUR terug?”

Formattering en weergave op verschillende apparaten

Lever consistente checkout-totale bedragen
Maak checkout-flows waar web en mobiel altijd overeenkomen met de backend-centen.
Bouw nu

De laatste kilometer is het scherm. Een waarde kan correct in opslag zijn en er toch fout uitzien als de formattering tussen web en mobiel verschilt.

Verschillende locales verwachten andere leestekens en plaatsing van het symbool. Gebruikers in de VS lezen bijvoorbeeld $1,234.50, terwijl veel Europese gebruikers 1.234,50 € verwachten (dezelfde waarde, andere scheidingstekens en symboolplaats). Als je formattering hardcodeert, verwarr je mensen en veroorzaak je supportwerk.

Houd één regel overal: formatteer aan de rand, niet in de kern. Je bron van waarheid moet (currency code, minor units integer) zijn. Zet pas om naar een string voor weergave. Parseer nooit een geformatteerde string terug naar geld. Daar sluipen afronding, weglating en locale-verrassingen binnen.

Voor negatieve bedragen zoals terugbetalingen kies je een consistente stijl en gebruik die overal. Sommige systemen tonen -$12.34, andere tonen ($12.34). Beide zijn prima. Wisselen tussen stijlen over schermen ziet er uit als een fout.

Een eenvoudig cross-device contract dat goed werkt:

  • Gebruik de valuta als ISO-code (zoals USD, EUR), niet alleen een symbool.
  • Formatteer standaard met de apparaatlocale, maar laat een in-app override toe.
  • Toon de valutacode naast het bedrag in multi-currency schermen (bijv. 12.34 USD).
  • Behandel invoerformattering apart van weergaveformattering.
  • Rond eenmaal, volgens je geldregels, voordat je formatteert.

Voorbeeld: een klant ziet een terugbetaling van 10,00 EUR op mobiel en opent dezelfde bestelling op desktop en ziet -€10. Als je ook de code toont (10,00 EUR) en de negatieve stijl consistent houdt, vraagt die gebruiker zich niet af of het is veranderd.

Voorbeeld: checkout, belasting en terugbetaling zonder verrassingen

Voorkom centverschillen
Sla geld op als minor units en houd totalen consistent op elk scherm.
Probeer AppMaster

Een eenvoudige winkelwagen:

  • Item A: $4.99 (499 cent)
  • Item B: $2.50 (250 cent)
  • Item C: $1.20 (120 cent)

Subtotaal = 869 cent ($8.69). Pas eerst 10% korting toe: 869 x 10% = 86.9 cent, afronden naar 87 cent. Subtotaal na korting = 782 cent ($7.82). Pas nu 8.875% belasting toe.

Hier kunnen afrondingsregels het laatste pennetje veranderen.

Als je belasting over het factuurtotaal berekent: 782 x 8.875% = 69.4025 cent, afronden naar 69 cent.

Als je belasting per regel berekent (na korting) en elke regel afrondt:

  • Item A: $4.49 belasting = 39.84875 cent, afronden naar 40
  • Item B: $2.25 belasting = 19.96875 cent, afronden naar 20
  • Item C: $1.08 belasting = 9.585 cent, afronden naar 10

Totale regelbelasting = 70 cent. Zelfde winkelwagen, zelfde tarief, verschillende geldige regels, 1 cent verschil.

Voeg een verzendkosten na belasting toe, zeg 399 cent ($3.99). Totaal wordt $12.50 (factuurniveau belasting) of $12.51 (regel-niveau belasting). Kies één regel, documenteer het en houd het consistent.

Refundeer nu alleen Item B. Refund zijn gekorte prijs (225 cent) plus de bijbehorende belasting. Met regel-niveau belasting is dat 225 + 20 = 245 cent ($2.45). Je resterende totalen reconciliëren nog steeds precies.

Om later elk verschil uit te leggen, log deze waarden voor elke charge en refund:

  • per-regel netto centen, per-regel belasting centen en afrondingsmodus
  • factuurkorting in centen en hoe die is verdeeld
  • belastingtarief en gebruikte belastbare basis in centen
  • verzend-/kosten centen en of die belastbaar zijn
  • final totaal centen en terugbetalingscenten

Hoe je geldberekeningen test

De meeste geldfouten zijn geen “wiskundefouten”. Het zijn afrondings-, ordenings- en formatteringsfouten die alleen voor specifieke carts of data optreden. Goede tests maken die gevallen saai.

Begin met golden tests: vaste invoer met exacte verwachte output in minor units (zoals centen). Houd asserts strikt. Als een item 199 cent is en belasting 15 cent, moet de test integerwaarden controleren, niet geformatteerde strings.

Een kleine set goldens dekt veel:

  • Eén regel met belasting, daarna korting, daarna kosten (controleer elke tussenafronding)
  • Veel regels waar belasting per regel wordt afgerond vs op subtotaal (verifieer je gekozen regel)
  • Terugbetalingen en gedeeltelijke terugbetalingen (controleer tekens en afrondingsrichting)
  • Conversie round-trip (A naar B naar A) met een gedefinieerd beleid waar afronding gebeurt
  • Randgevallen (1 cent items, grote aantallen, zeer grote totalen)

Voeg daarna property-based checks (of eenvoudige randomtests) toe om verrassingen te vinden. In plaats van één verwacht getal, controleer invarianten: totalen gelijk aan de som van regeltotalen, er verschijnen nooit fractionele minor units, en “totaal = subtotaal + belasting + kosten - kortingen” geldt altijd.

Cross-platform testen is belangrijk omdat resultaten tussen backend en clients kunnen afwijken. Als je een Go-backend hebt met een Vue-webapp en Kotlin/SwiftUI mobiel, draai dan dezelfde testvectoren in elke laag en vergelijk de integer-outputs, niet UI-strings.

Tot slot, test tijdsgebonden gevallen. Sla het gebruikte belastingtarief op bij een factuur en verifieer dat oude facturen opnieuw berekenen naar hetzelfde resultaat, zelfs nadat tarieven zijn veranderd. Hier ontstaan vaak “het kwam vroeger overeen” bugs.

Veelvoorkomende valkuilen om te vermijden

Maak standaards valuta-bewust
Behandel JPY, BHD en meer door de valutascale expliciet in je data te houden.
Probeer AppMaster

De meeste centfouten zijn geen rekenfouten. Het is beleid: de code doet precies wat je haar opdroeg, alleen niet wat financiën verwachtte.

Valkuilen om tegen te beschermen:

  • Te vroeg afronden: Als je elke regel afrondt, daarna het subtotaal afrondt en daarna belasting afrondt, kunnen totalen uitlopen. Kies een regel (bijv. belasting per regel vs op factuurtotaal) en rond alleen waar je beleid het toelaat.
  • Valuta mengen in één som: USD en EUR optellen in hetzelfde “totaal”-veld lijkt onschuldig tot terugbetalingen, rapportage of reconciliatie. Houd bedragen getagd met hun valuta en converteer met een afgesproken koers vóór je cross-currency optelt.
  • Gebruikersinvoer verkeerd parsen: Gebruikers typen “1,000.50”, “1 000,50” of “10.0”. Als je parser één formaat aanneemt, kun je stilletjes 100050 in rekening brengen in plaats van 1000.50, of uitlopende nullen weggooien. Normaliseer invoer, valideer en sla op als minor units.
  • Geformatteerde strings in API’s of databases gebruiken: “$1,234.56” is alleen voor weergave. Als je API dat accepteert, kan een ander systeem het anders parsen. Geef integers (minor units) en valutacode door en laat elke client lokaal formatteren.
  • Belastingregels of tarieftabellen niet versioneren: Belastingtarieven veranderen, vrijstellingen veranderen en afrondingsregels veranderen. Als je het oude tarief overschrijft, worden oude facturen onherstelbaar. Sla een versie of ingangsdatum op bij elke berekening.

Een realiteitscheck: een checkout gemaakt op maandag gebruikt de belasting van vorige maand; de gebruiker krijgt vrijdag een terugbetaling nadat het tarief veranderde. Als je de belastingregelversie en het originele afrondingsbeleid niet hebt opgeslagen, zal de terugbetaling niet overeenkomen met de originele bon.

Snel checklist en vervolgstappen

Als je minder verrassingen wilt, behandel geld als een klein systeem met duidelijke invoer, regels en uitvoer. De meeste centfouten blijven bestaan omdat niemand heeft opgeschreven waar afronding is toegestaan.

Checklist vóór release:

  • Sla bedragen overal op in minor units (zoals integer centen): database, business logic en API’s.
  • Doe alle rekenwerk in integers en converteer pas aan het eind naar weergaveformaten.
  • Kies één afrondingspunt per type berekening (belasting, korting, kosten, FX) en handhaaf het op één plaats.
  • Format op consistente wijze met de juiste valutaregels (decimalen, scheidingstekens, negatieve waarden) op web en mobiel.
  • Voeg tests toe voor randgevallen: 0.01, herhalende decimalen in conversie, terugbetalingen, gedeeltelijke capturen en grote manden.

Schrijf één afrondingsbeleid per berekeningstype. Bijvoorbeeld: “Korting wordt per regel afgerond naar de dichtstbijzijnde cent; belasting wordt afgerond op het factuurtotaal; terugbetalingen herhalen het originele afrondingspad.” Zet deze beleidsregels naast de code en in teamdocs zodat ze niet wegdrijven.

Voeg lichte logs toe voor elke geldstap die ertoe doet. Leg de invoerwaarden vast, de gekozen beleidsnaam en de output in minor units. Als een klant meldt “ik ben één cent teveel betaald”, wil je één regel hebben die uitlegt waarom.

Plan een kleine audit voordat je logica in productie verandert. Hernoem totalen voor een steekproef van echte historische orders met de nieuwe logica, vergelijk oude vs nieuwe resultaten en tel de mismatches. Bekijk een paar mismatches handmatig om te bevestigen dat ze bij je nieuwe beleid passen.

Als je dit soort end-to-end flow wilt bouwen zonder dezelfde regels drie keer te herschrijven, is AppMaster (appmaster.io) ontworpen voor volledige apps met gedeelde backendlogica. Je kunt bedragen modelleren als minor-unit integers in PostgreSQL via de Data Designer, afronding- en belastingstappen één keer implementeren in een Business Process, en daarna dezelfde logica hergebruiken in web en native mobiele UIs.

FAQ

Waarom verandert mijn totaal met $0,01 tussen winkelwagen en checkout?

Deze verschillen ontstaan meestal wanneer verschillende delen van de app op verschillende momenten of op verschillende manieren afronden. Als de productlijst op één manier afrondt en de checkout op een andere, kan dezelfde winkelwagen terechtkomen op verschillende centwaarden.

Wat is er mis met het gebruiken van float of double voor prijzen?

Omdat de meeste floats gangbare decimale prijzen niet exact kunnen voorstellen, ontstaan er kleine verborgen fouten. Die kleine verschillen kunnen later een afrondingsbeslissing omkeren en een centverschil veroorzaken.

Wat is de veiligste manier om geld in een database en API op te slaan?

Sla geld op als een geheel getal in de minor unit van de valuta, zoals cents voor USD (1999 voor $19,99), plus een valutacode. Doe berekeningen in gehele getallen en formatteer pas naar een decimale string bij weergave aan gebruikers.

Hoe ga ik om met valuta die geen 2 decimalen hebben?

Het hardcoden van twee decimalen werkt niet voor valuta zoals JPY (0 decimalen) of BHD (3 decimalen). Sla altijd de valutacode bij het bedrag op en pas de juiste minor-unit scale toe bij het parsen van invoer en het formatteren van output.

Moet ik belasting per artikel afronden of op het factuurtotaal?

Kies een duidelijke regel en pas die overal toe, bijvoorbeeld afronden per artikelregel of afronden op het factuurtotaal. Het belangrijkste is consistentie tussen backend, web, mobiel, exports en terugbetalingen, en gebruik telkens dezelfde afrondingsmodus.

In welke volgorde moet ik kortingen, belasting en kosten toepassen?

Bepaal de volgorde vooraf en beschouw die als beleid, niet als implementatiedetail. Een veelvoorkomende standaard is eerst korting (om de belastbare basis te verlagen) en daarna belasting, maar volg de regel die je bedrijf en jurisdictie vereisen en houd deze identiek op alle schermen en services.

Hoe kan ik valutaomzetting doen zonder dat totalen gaan drijven in de loop van de tijd?

Converteer één keer met een opgeslagen wisselkoers met expliciete precisie, rond op een gedefinieerde stap, en bewaar het originele bedrag en valuta voor terugbetalingen. Vermijd heen en weer converteren, omdat herhaalde afronding drift veroorzaakt.

Waarom zien bedragen er anders uit op web vs mobiel terwijl de berekening klopt?

Parseer nooit geformatteerde weergavestrings terug naar cijfers, omdat locale scheidingstekens en afrondingen de waarde kunnen veranderen. Geef gestructureerde waarden door zoals (amount_minor, currency_code) en formatteer alleen aan de UI-rand met locale-regels.

Welke tests vangen centfouten voordat gebruikers ze opmerken?

Test met vaste “golden” cases die exacte gehele outputs per stap in minor units (cents) beweren, niet geformatteerde strings. Voeg daarna controles toe die invarianten afdwingen, zoals dat totalen gelijk zijn aan de som van de onderdelen en dat terugbetalingen het originele afrondingspad volgen.

Hoe houd ik afrondingsregels consistent tussen backend, web en mobiel?

Centraliseer de geldberekeningen op één gedeelde plek en hergebruik die overal zodat dezelfde invoer overal dezelfde centwaarde oplevert. In AppMaster is een praktische aanpak amount_minor als integer in PostgreSQL modelleren en afrondings- en belastinglogica in één Business Process zetten dat door web- en mobiele flows wordt gebruikt.

Gemakkelijk te starten
Maak iets geweldigs

Experimenteer met AppMaster met gratis abonnement.
Als je er klaar voor bent, kun je het juiste abonnement kiezen.

Aan de slag