Betalings-API: lav en integrationsaftale før det første kald
En betalings-API bliver lettere at arbejde med, når teamet først aftaler, hvad en betaling betyder i virksomhedens egen model. Et teknisk svar skal kunne forbindes med en ordre, en valuta og en efterfølgende handling. Denne guide handler om integrationsbeslutninger, som udviklere og drift bør træffe sammen. Den er ikke en erstatning for den aktuelle API-dokumentation: endepunkter, rettigheder og understøttede operationer skal altid kontrolleres for den konkrete forbindelse og installation.

Definér identiteten for ordre og betalingsforsøg
En ordre og et betalingsforsøg er forskellige objekter. Den samme ordre kan kræve en ny betaling efter en dokumenteret fejl, mens et gentaget netværkskald kan være den samme operation. Definér derfor en intern ordreidentitet, en identitet for forsøget og den reference, integrationen returnerer. Beskriv relationen i et kort eksempel, som support kan forstå. Når en kunde spørger til en bestilling, skal medarbejderen kunne finde alle relevante forsøg uden at sammenblande dem. Undgå at bruge kundens e-mail som teknisk identitet. Den kan ændres, deles mellem bestillinger og indeholde personoplysninger, der ikke behøver stå i en log.
Behandl beløb og valuta som en samlet beslutning
Fastlæg beløbet på serveren ud fra den godkendte ordre, og send valutaen eksplicit. Brug den præcision og det format, som den konkrete API kræver. OrsunPays dokumentation beskriver eksakte decimalbeløb; kopier ikke en anden udbyders beløbsformat uden at kontrollere forskellen. Lav eksempler med en almindelig ordre, en justeret ordre og en valuta, som virksomheden faktisk skal bruge. Beskriv også afrundingsreglen uden at gøre browseren ansvarlig for den endelige sum. Hvis et beløb ikke kan repræsenteres korrekt, bør integrationen stoppe og give en forståelig intern fejl frem for at sende en tilnærmet værdi videre.
Aftal hvad et gentaget kald betyder
Netværket kan fejle, efter modtageren har behandlet en forespørgsel. Et nyt kald kan derfor skabe en ny operation, hvis integrationen ikke genkender gentagelsen. Stripe beskriver idempotente forespørgsler som et selvstændigt API-princip. Detaljer som nøglernes gyldighed og fejlbehandling skal læses i den anvendte dokumentation; de kan ikke overføres automatisk til OrsunPay. I egen applikation bør samme forretningsoperation have en stabil identitet, mens ændrede forudsætninger behandles bevidst. Notér, hvem der afgør, om et forsøg må gentages. Et ukendt udfald er ikke det samme som en afvist betaling og bør ikke udløse blind genoprettelse.
Byg en lille model for betalingsstatus
Beskriv de tilstande, applikationen skal kunne håndtere, med ord som medarbejderne forstår. Der kan være forskel på oprettet, afventende, bekræftet og mislykket, men de præcise felter afhænger af API-kontrakten. Knyt hver kendt tilstand til en tilladt handling. Eksempelvis må en bekræftet ordre gå videre til levering, mens et ukendt udfald kræver undersøgelse. Registrér tidspunktet for seneste verificerede oplysning og kilden til den. En lokal fejltekst må ikke overskrive en senere, gyldig bekræftelse. Aftal også, hvordan systemet indhenter en aktuel status, når et forventet webhook ikke er blevet behandlet.
Adskil hemmeligheder og driftsoplysninger
API-nøgler hører til i serverens kontrollerede konfiguration. De bør ikke indsættes i frontend-kode, supportbeskeder eller almindelige analysehændelser. Log i stedet sikre operationelle referencer, fejltyper og tidspunkter, som gør en undersøgelse mulig. Hold test- og liveforbindelser tydeligt adskilt, og dokumentér hvilke funktioner der faktisk findes i hver tilstand. OrsunPays betalingslinks i merchant cabinet er for eksempel live-only. En vellykket test i et andet miljø beviser derfor ikke, at alle handlinger er identiske. Gennemgå nøgleudskiftning og adgang for nye medarbejdere som en del af overdragelsen, så løsningen ikke afhænger af én udviklers personlige opsætning.
Overdrag en afgrænset integration til drift
OrsunPay samler understøttede betalingsoperationer gennem et fælles softwarelag, mens virksomheden beholder sine egne udbyderkonti og aftaler. Automatisk cascading og omkostningsoptimeret routing er ikke en nuværende funktion. Afslut integrationen med en gennemgang af normal betaling, gentaget forespørgsel, forsinket hændelse og manglende adgang. For hver situation skal drift vide, hvilke referencer der skal findes, og hvornår en udvikler eller udbyder kontaktes. Offentlig SDK-udgivelse er et særskilt spørgsmål fra kode i et repository. Vælg derfor dokumenterede endepunkter og bekræftede leverancer som grundlag frem for at planlægge efter en pakke, der endnu ikke er offentliggjort.
Relevante produkter
Tal med osKilder
Relaterede artikler

Betalingsknap på hjemmesiden: planlæg klik, betaling og resultat
Sådan vælger du placering og betalingsflow for en knap uden at gøre et klik til en betalingsbekræftelse.
Læs artiklen
Betalingswebhooks: modtag bekræftelser uden dobbelt levering
Sådan planlægger du verificering, dubletter, hændelseslog og genbehandling af betalingswebhooks.
Læs artiklen
Stripe-alternativ: afklar først hvilken del af betalingen du vil ændre
Sammenlign betalingsudbyder, checkout og orkestrering uden at blande deres ansvar eller omkostninger.
Læs artiklen