Spring til indhold

Billing & auth

Billing, auth og betalingsflows

Vi sætter billing og auth op på proven mønstre: Stripe med subscriptions, trials og selvbetjening; Auth.js, Clerk eller WorkOS med organisationer, SSO og roller. Færdigt på uger, ikke måneder.

3D-illustration af to glas-kort — auth (med lås og nøgle) og billing (med betalingskort) forbundet af en orange tråd af lys.

Bygget på proven mønstre

Det her bygger vi ikke fra bunden

Subscription-livscyklus og Customer Portal
Stripe
Webhooks der aldrig skaber dubletter
Idempotent
WorkOS, Clerk Enterprise eller Auth.js
SAML/SSO
TOTP eller passkeys hvor det giver mening
MFA

Sådan vi tænker billing & auth

Den slags I kun bygger forkert én gang.

Billing og auth er den slags ting man kun bygger forkert én gang før man lærer at bruge eksisterende mønstre. Stripe har bygget løsningen til subscriptions, trials, fakturering og selvbetjening i 12 år; Auth.js, Clerk og WorkOS har bygget løsningen til organisationer, roller og SSO. Vores opgave er at koble dem rigtigt ind i jeres produkt — ikke at genopfinde dem.

Vi bygger den fulde billing-stack: produktkatalog i Stripe, subscription-livscyklus, trials, opgraderinger og nedgraderinger, fakturering med selvbetjening via Customer Portal, og webhook-håndtering med idempotens så I aldrig opkræver to gange. På auth-siden: organisationer, roller, invitationer, SSO via Microsoft, Google eller Okta, og MFA hvor det giver mening.

Vi har sat det her op for SaaS-startups der lige skulle have de første betalende kunder, og for større teams der havde rodet auth fra dag ét og skulle have det rettet uden at miste eksisterende brugere. Mønstret er det samme: korte iterationer, tæt dialog, og en migration der ikke vækker nogen kl. 03.

Hvad I får leveret

Komplet billing- og auth-stack på proven mønstre.

Subscriptions, Customer Portal, organisationer, roller og SSO — bygget i uger, ikke måneder.

  • Stripe subscriptions og trials

    Produktkatalog i Stripe, månedlig og årlig fakturering, free trials med eller uden kortkrav, automatiske opgraderinger og nedgraderinger, og pro-rated billing der bare virker.

  • Webhook-håndtering med idempotens

    Vi tager imod Stripe webhooks og processer dem idempotent — så genleveringer ikke skaber dobbeltkonteringer. Med audit-log på hver event og dead-letter-håndtering hvis noget fejler tre gange.

  • Customer Portal og selvbetjening

    Stripe Customer Portal indlejret i jeres produkt så kunderne selv kan opdatere kort, hente fakturaer, ændre plan eller annullere — uden at skulle skrive til support.

  • Organisationer, roller og invitationer

    Multi-bruger SaaS med organisationer (workspaces, teams), invitations-flow via e-mail, granulære roller (admin, member, billing) og audit-log på følsomme handlinger.

  • SSO via Microsoft, Google eller Okta

    Enterprise SSO via SAML eller OIDC bygget på WorkOS, Clerk Enterprise eller eget setup med Auth.js. Med just-in-time-provisionering og rolle-mapping fra IdP-grupper.

  • MFA, password-policies og sikkerhed

    TOTP eller WebAuthn (passkeys) som anden faktor, password-policies der følger NIST 2017+ (ikke 2003), brute-force-beskyttelse, og audit-log på login-forsøg.

Engagement

To pakker — find den der matcher.

Vi taler altid scope og pris privat i discovery — aldrig på en hjemmeside. Det her er typiske rammer.

  • Vores anbefaling

    Standard

    3–5 uger

    Stripe-billing med subscriptions, trials og Customer Portal + auth med organisationer og roller. Til de fleste B2B SaaS.

    • Stripe produkter og subscription-livscyklus
    • Customer Portal indlejret i jeres app
    • Auth med organisationer og invitationer
    • Roller (admin, member, billing)
    • Webhook-håndtering med idempotens
    • MFA via TOTP eller passkeys
  • Enterprise

    5–8 uger

    Standard-pakken plus SAML SSO, SCIM, audit-logs og custom roller. Til SaaS der sælger til store organisationer.

    • Alt i Standard
    • SAML SSO via WorkOS eller Clerk Enterprise
    • SCIM provisionering fra IdP
    • Just-in-time-rolle-mapping
    • Audit-logs der er auditerbare
    • Custom roller og adgangsstyring

Begge pakker dækker discovery, build, drift-opsætning og 4 ugers stabilisering efter go-live. Drift og videreudvikling aftales separat.

Inden I forpligter jer

Det her bør I overveje først.

  • Auth-leverandør: Auth.js, Clerk eller WorkOS

    Auth.js (NextAuth) er gratis og fleksibelt — godt for teams der vil eje koden og betale i kompleksitet. Clerk er hurtigt at komme igang med og dækker B2C godt. WorkOS er bygget til B2B SaaS og leverer enterprise-features (SAML SSO, SCIM, audit logs) uden at I skal bygge dem. Vi vælger ud fra hvor I skal hen om to år, ikke hvad der er hurtigst i dag.

  • Pricing-modellen er en arkitektur-beslutning

    Pr.-bruger, pr.-forbrug eller flat-rate er ikke kun en marketing-beslutning — det former koden. Vi sætter Stripe op så pricing-modellen kan ændres på dage, ikke uger. Det er vigtigere at kunne eksperimentere efter en måned i markedet end at ramme den perfekt på dag ét.

  • PCI-compliance og kortdata

    Stripe Elements eller Checkout sørger for at I aldrig håndterer kortnumre direkte — kortdata går aldrig gennem jeres servere. Det reducerer PCI-scope dramatisk. Vi designer flowet så det forbliver sådan, også når I tilføjer egne checkout-skridt.

  • Data-residency for EU-kunder

    Stripe har EU-data-residency-options for de fleste produkter. Auth-leverandører varierer: Clerk og WorkOS har EU-regions, Auth.js kan hostes hvor I vil. Vi designer for EU-residency hvis I har strikse krav, og dokumenterer datastrømmen.

FAQ

Det folk plejer at spørge om.

  • Hvor lang tid tager det at sætte billing og auth op?

    En fokuseret billing- og auth-opsætning til en SaaS-MVP tager typisk 3–5 uger: Stripe-produkter, subscription-livscyklus, Customer Portal, auth med organisationer, invitationer og roller. Hvis I skal have enterprise-features (SAML SSO, SCIM, custom roller), tilføjer vi 2–4 uger.

  • Kan I tilføje billing til vores eksisterende SaaS?

    Ja. Vi har gjort det for SaaS-produkter der startede med flat-rate eller free-only og skulle have subscriptions ind. Vi designer migrationen så eksisterende brugere ikke pludselig bliver opkrævet — typisk via grandfathered-planer, en kommunikations-plan og en testet rollback. Tager typisk 4–8 uger afhængigt af hvor mange brugere og hvor stor jeres pricing-ændring er.

  • Vi har brug for SAML SSO til enterprise-kunder. Kan I bygge det?

    Ja. Vi bygger det typisk på WorkOS eller Clerk Enterprise — det er hurtigere og mere robust end at bygge SAML fra bunden. Hvis I allerede bruger Auth.js, kan vi tilføje en SAML-strategy via et provider-modul. Inkluderer just-in-time-provisionering, rolle-mapping fra IdP-grupper og audit-log.

  • Hvad sker der hvis Stripe har en hændelse?

    Stripe selv har høj tilgængelighed, men hændelser sker. Vi designer billing-flowet så midlertidige fejl ikke spærrer brugere ude (subscription-status caches lokalt, betaling kan retry'es), at webhook-håndtering er idempotent (genleveringer skaber ikke dobbeltkonteringer), og at jeres team kan se status på Stripe-events i jeres egen monitoring.

  • Kan vi flytte fra Stripe til en anden betalingsudbyder senere?

    Det er muligt men ikke trivielt — Stripe-specifikke koncepter (Customer Portal, Connect, Tax) findes ikke nødvendigvis i andre platforme. Vi designer abstraktionen så kerne-billing-logik er adskilt fra Stripe-specifikke kald — så I i værste fald kan migrere senere. Men i praksis er Stripe det rigtige valg for langt de fleste B2B SaaS i Europa.

Klar til at starte?

Lad os tage en uforpligtende snak.

Vi vender tilbage indenfor en arbejdsdag med konkret input — ikke et standardtilbud.