Gå til indhold
Dokumentation

STRYK, POS API

Tilslut kassesystemet til STRYK

Restaurant- og barkøb på værelset: opsætning, API-kontrakt og sikre genforsøg.

Indlæser …

1Opsætning

Afklar med kasseleverandøren, om kassen understøtter STRYK-API'et. Eget API eller OAuth kræver en adapter; en oprettet nøgle beviser ikke kompatibilitet. Opret et salgssted med gyldig afgift og en nøgle begrænset hertil i POS-opsætningen. GET /ping tester forbindelsen; en kontrolleret værelsespostering tester skrivning.

2Nøgler og sikkerhed

Hele nøglen begynder med pos_live_ og vises kun ved oprettelse. Øjet ændrer synligheden; Kopiér bruger altid hele værdien. Senere vises kun identifikatoren. Brug nøgler på serveren via HTTPS, aldrig i browserkode eller logs. Afstem ventende kvitteringer med den gamle nøgle før udskiftning: referencer tilhører nøglen. Send aldrig gamle kvitteringer med en ny nøgle; tilbagekald derefter den gamle.

3Værelseskonto og beløb

Kontrollér gæst og værelse via /accounts eller /room-lookup. Kun faktisk indtjekkede, endnu ikke udtjekkede ophold kan debiteres. Respektér allowCharge, spærring, kreditgrænse og lukket fakturakonto. Send bookingId og room sammen. Positive bruttopriser i hotelvaluta, afgift gyldig på servicedatoen. Antal med tre decimaler, penge med to; chargedAt med tidszone. Ingen API-postering efter udtjekning.

4Bogføring og genforsøg

Hver linje kræver en fast externalRef. Efter timeout først GET /charges/{externalRef}; gentag kun ved 404 samme forespørgsel med samme nøgle. Præcis gentagelse: 201 og idempotentReplay=true; ændret eller annulleret reference: 409. Højst 50 linjer atomisk. Vent mindst 60 sekunder ved 429; højst 100 kald i minuttet pr. nøgle.

5Annullering og faktura

DELETE /charges/{externalRef} annullerer en egen åben linje uden dobbeltvirkning ved gentagelse. Fakturerede linjer korrigeres i Økonomi. Værelsespostering er ikke betaling; åbne linjer overføres til fakturaen ved udtjekning. Afstem manuelle registreringer under afbrydelser før API-afsendelse.

6Webhooks og godkendelse

Valgfrie webhooks: charge.posted og charge.cancelled. Angiv en separat hemmelighed og verificér HMAC-SHA256 på den oprindelige body. X-STRYK-Webhook-Id identificerer abonnementet. Fjern dubletter med event og data.chargeId; rækkefølgen er ikke garanteret. Test postering, gentagelse, spærring, grænse, flere værelser, annullering, fakturering og webhooks.

Teknisk reference (engelsk)

Kontakt