Betalingen met Stripe en SaaS-factureringssystemen · Les

Usage-based billing-systemen implementeren

Ontwerp en integreer usage-based billing, waarbij klanten betalen op basis van hun verbruik van een dienst of resource.

Les 1 van 411 stappen

Usage-based billing-systemen implementeren is een gratis Betalingen met Stripe en SaaS-factureringssystemen-les op CoddyKit. Dit is les 1 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Betalingen met Stripe en SaaS-factureringssystemen. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Betalingen met Stripe en SaaS-factureringssystemen bevat in totaal 4 lessen.

Wat is gebruiksgebaseerde facturering?

Bij gebruiksgebaseerde facturering, ook wel facturering op basis van verbruik genoemd, betalen klanten op basis van hoeveel ze een product of dienst gebruiken.

In plaats van een vast maandbedrag betalen klanten alleen voor hun werkelijke verbruik. Dit model is populair voor diensten zoals cloudopslag, API-aanroepen of gegevensverwerking.

Het biedt flexibiliteit en eerlijkheid, omdat de kosten rechtstreeks aansluiten op de ontvangen waarde.

Kernbegrippen: meters en gebeurtenissen

De kern van gebruiksgebaseerde facturering bestaat uit meters en gebeurtenissen.

  • Meter: de specifieke bron of handeling die je bijhoudt. Voorbeelden zijn 'API-aanroepen', 'opgeslagen GB' of 'gebruikte minuten'.
  • Gebeurtenis: een afzonderlijke gebeurtenis waarmee je meter wordt verhoogd. Elke keer dat een gebruiker een API-aanroep doet, een bestand opslaat of een minuut gebruikt, vindt er een 'gebeurtenis' plaats.

Je systeem moet deze gebeurtenissen registreren en rapporteren.

Je gebruiksmeter ontwerpen

Als je je gebruiksgebaseerde systeem ontwerpt, bepaal je eerst wat je gaat meten. Wat definieert het 'gebruik' van je dienst?

  • Voorbeeld: voor een cloudopslagdienst kan je meter 'opgeslagen gigabytes' zijn.
  • Detailniveau: hoe vaak rapporteer je het gebruik? Direct? Elk uur? Dagelijks? Stripe verzamelt het gebruik doorgaans over een factureringscyclus.

Door je meter duidelijk te definiëren, zorg je voor een nauwkeurige facturering.

Gebruiksgebaseerde facturering met Stripe

Stripe ondersteunt gebruiksgebaseerde facturering via prijzen op basis van verbruik.

Je definieert een product (bijvoorbeeld 'API-toegang') en vervolgens een prijs die kosten 'per eenheid' specificeert (bijvoorbeeld $0,01 per API-aanroep). In plaats van een vaste hoeveelheid voor een abonnementsitem in te stellen, rapporteer je gebruiksgegevens aan Stripe.

Stripe verzamelt deze gebruiksgegevens vervolgens over de factureringsperiode en brengt het overeenkomstige bedrag bij de klant in rekening.

Product- en prijsinstellingen (conceptueel)

Om gebruiksgebaseerde facturering in Stripe in te stellen, doe je doorgaans het volgende:

  1. Een product maken: dit vertegenwoordigt de dienst zelf (bijvoorbeeld 'Cloudopslag').
  2. Een prijs maken: koppel deze prijs aan je product. Stel vooral recurring.usage_type in op 'metered' en geef unit_amount (kosten per eenheid) of tiers op voor staffelprijzen.

Hiermee geef je Stripe aan dat de prijs gebaseerd is op gerapporteerd gebruik.

Gebruik rapporteren via de API

Zodra je klant een abonnement op een prijs op basis van verbruik heeft, moet je het gebruik ervan via de API aan Stripe rapporteren.

Je stuurt een gebruiksrecord voor een specifiek abonnementsitem, met daarin de gebruikte hoeveelheid. Stripe telt deze hoeveelheid op bij het totaal van de huidige factureringscyclus van de klant.

Dit gebeurt doorgaans aan de serverzijde van je toepassing wanneer gebruiksgebeurtenissen plaatsvinden.

Code: gebruik rapporteren

Hier zie je een vereenvoudigd Java-voorbeeld dat laat zien hoe je gebruik aan Stripe kunt rapporteren. Vervang de tijdelijke aanduidingen door je werkelijke sleutels en ID's.

In dit voorbeeld worden '10' gebruikseenheden gerapporteerd voor een specifiek abonnementsitem.

import com.stripe.Stripe;
import com.stripe.exception.StripeException;
import com.stripe.model.UsageRecord;
import com.stripe.param.UsageRecordCreateParams;

public class Main {
  public static void main(String[] args) {
    Stripe.apiKey = "sk_test_YOUR_SECRET_KEY"; // Replace with your secret key

    String subscriptionItemId = "si_YOUR_SUBSCRIPTION_ITEM_ID"; // Get this from your subscription
    Long quantityToReport = 10L; // The amount of usage to report

    try {
      UsageRecordCreateParams params = UsageRecordCreateParams.builder()
        .setQuantity(quantityToReport)
        .setTimestamp(System.currentTimeMillis() / 1000L) // Current time in seconds
        .setAction(UsageRecordCreateParams.Action.INCREMENT) // Add to existing usage
        .build();

      UsageRecord usageRecord = UsageRecord.createOnSubscriptionItem(
        subscriptionItemId, params
      );

      System.out.println("Usage reported successfully: " + usageRecord.getId());
    } catch (StripeException e) {
      System.err.println("Error reporting usage: " + e.getMessage());
    }
  }
}

Factureringscycli en aggregatie

Stripe verzamelt alle gebruiksrecords voor een specifiek abonnementsitem binnen een factureringscyclus.

Wanneer de factureringscyclus eindigt, berekent Stripe het totale gebruik op basis van de geconfigureerde aggregate_usage voor die prijs. Dit totaal wordt vervolgens vermenigvuldigd met de prijs per eenheid (of toegepast op staffels) om het definitieve bedrag voor die periode te bepalen.

Daarna wordt de factuur gegenereerd en definitief gemaakt.

Verschillende aggregatietypen

Stripe biedt verschillende manieren om gebruik voor een prijs op basis van verbruik te aggregeren:

  • sum: (standaard) telt alle gerapporteerde gebruikshoeveelheden gedurende de factureringsperiode bij elkaar op. Ideaal voor API-aanroepen of gegevensoverdracht.
  • max: gebruikt de hoogste gerapporteerde gebruikshoeveelheid gedurende de periode. Handig voor modellen op basis van 'piekgebruik', zoals gelijktijdige gebruikers.
  • last_ever: gebruikt de laatst gerapporteerde gebruikshoeveelheid. Ideaal voor facturering op basis van een 'momentopname', zoals de gebruikte opslag aan het einde van de periode.

Kies het type dat het beste bij je dienst past.

Korte toets: gebruiksgebaseerde facturering

Welke van de volgende situaties is het meest geschikt voor het aggregatietype 'last_ever' bij de gebruiksgebaseerde facturering van Stripe?

Samenvatting: gebruiksgebaseerde facturering

Je hebt geleerd hoe je gebruiksgebaseerde facturering met Stripe ontwerpt en implementeert!

  • We hebben de kernbegrippen meters en gebeurtenissen behandeld.
  • Je hebt ontdekt hoe Stripe prijzen op basis van verbruik en gebruiksrecords gebruikt.
  • Je hebt een codevoorbeeld gezien voor het rapporteren van gebruik via de API.
  • Je begrijpt nu verschillende aggregatietypen, zoals sum, max en last_ever.

Dit model biedt zowel jou als je klanten veel flexibiliteit.

Gratis beginnen

Leer Betalingen met Stripe en SaaS-factureringssystemen met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
12
Lessen
48

Veelgestelde vragen

Is de les “Usage-based billing-systemen implementeren” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad Betalingen met Stripe en SaaS-factureringssystemen, waaronder “Usage-based billing-systemen implementeren”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Betalingen met Stripe en SaaS-factureringssystemen bevat in totaal 4 lessen.

Wat leer ik in “Usage-based billing-systemen implementeren”?

Ontwerp en integreer usage-based billing, waarbij klanten betalen op basis van hun verbruik van een dienst of resource. Je oefent met Betalingen met Stripe en SaaS-factureringssystemen door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Betalingen met Stripe en SaaS-factureringssystemen te beginnen?

Ervaring vooraf is niet nodig. Betalingen met Stripe en SaaS-factureringssystemen op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 1 van 4.

Hoe lang duurt de les “Usage-based billing-systemen implementeren”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Betalingen met Stripe en SaaS-factureringssystemen?

Ja. Elke les over Betalingen met Stripe en SaaS-factureringssystemen bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Usage-based billing-systemen implementeren
  2. Seat-based en getrapte prijzen configureren
  3. Aangepaste facturatiecycli en planningen
  4. Volume- en graduated-pricingtiers grondig bekeken
← Terug naar Betalingen met Stripe en SaaS-factureringssystemen