STRYK, POS API
Anslut kassasystemet till STRYK
Restaurang- och barköp på rummet: installation, API-kontrakt och säkra återförsök.
Läser in …
1Installation
Kontrollera med kassaleverantören att kassan stöder STRYK-API:et. Eget API eller OAuth kräver en adapter; en skapad nyckel bevisar inte kompatibilitet. Skapa ett försäljningsställe med giltig skatt och en nyckel begränsad till det i POS-inställningarna. GET /ping testar anslutningen; en kontrollerad rumsdebitering testar skrivningen.
2Nycklar och säkerhet
Hela nyckeln börjar med pos_live_ och visas endast när den skapas. Ögat ändrar synligheten; Kopiera använder alltid hela värdet. Senare återstår identifieraren. Använd nycklar på servern via HTTPS, aldrig i webbläsarkod eller loggar. Stäm av väntande kvitton med den gamla nyckeln före byte: referenser tillhör nyckeln. Skicka aldrig gamla kvitton med en ny nyckel; återkalla sedan den gamla.
3Rumskonto och belopp
Kontrollera gäst och rum via /accounts eller /room-lookup. Bara faktiskt incheckade, ännu inte utcheckade vistelser kan debiteras. Respektera allowCharge, spärrar, kreditgräns och stängt fakturakonto. Skicka bookingId och room tillsammans. Positiva bruttopriser i hotellvaluta, skatt giltig på tjänstedagen. Antal avrundas till tre decimaler, pengar till två; chargedAt med tidszon. Ingen API-debitering efter utcheckning.
4Bokföring och återförsök
Varje rad behöver ett fast externalRef. Efter timeout: GET /charges/{externalRef} först; upprepa identisk begäran med samma nyckel endast vid 404. Exakt upprepning: 201 och idempotentReplay=true; ändrad eller annullerad referens: 409. Högst 50 rader atomärt. Vänta minst 60 sekunder vid 429; högst 100 anrop per minut och nyckel.
5Annullering och faktura
DELETE /charges/{externalRef} annullerar en egen öppen rad utan dubbeleffekt vid upprepning. Fakturerade rader korrigeras i Ekonomi. Rumsdebitering är ingen betalning; öppna rader förs till fakturan vid utcheckning. Stäm av manuella registreringar under avbrott före API-sändning.
6Webhooks och godkännande
Valfria webhooks: charge.posted och charge.cancelled. Ange en separat hemlighet och verifiera HMAC-SHA256 över rådata. X-STRYK-Webhook-Id identifierar prenumerationen. Ta bort dubletter med event och data.chargeId; anta ingen ordning. Testa debitering, återförsök, spärr, gräns, flera rum, annullering, fakturering och webhooks.