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.