STRYK, POS API
Свържи касовата система със STRYK
Начисляване на ресторант и бар към стаята: настройка, API договор и безопасни повторения.
Зареждане …
1Настройка
Провери при доставчика дали касата поддържа STRYK API. Собствен API или OAuth изисква адаптер; създаден ключ не доказва съвместимост. В настройките на POS създай търговски обект с валиден данък и ограничен до него ключ. GET /ping проверява връзката; контролирано начисляване към стая проверява записа.
2Ключове и сигурност
Пълният ключ започва с pos_live_ и е достъпен само при създаване. Окото променя видимостта; копирането винаги взема цялата стойност. По-късно остава идентификаторът. Използвай го на сървъра чрез HTTPS, никога в браузъра или журналите. Преди смяна сверете чакащите бележки със стария ключ: референциите принадлежат на него. Не изпращайте стари бележки с нов ключ; после оттеглете стария.
3Сметка на стаята и суми
Провери госта и стаята чрез /accounts или /room-lookup. Начисляват се само действително настанени, още ненапуснали престои. Спазвайте allowCharge, забрана, лимит и затворена сметка. Изпращайте bookingId и room заедно. Положителни брутни цени във валутата на хотела, данък валиден за датата на услугата. Количество до три знака, пари до два; chargedAt с часова зона. Няма API начисляване след напускане.
4Начисляване и повторения
Всяка позиция изисква постоянен externalRef. След изтичане на времето първо GET /charges/{externalRef}; само при 404 повтори същата заявка със същия ключ. Точно повторение: 201 и idempotentReplay=true; промяна или анулирана референция: 409. До 50 позиции атомарно. При 429 изчакайте поне 60 секунди; лимит 100 заявки в минута на ключ.
5Анулиране и фактура
DELETE /charges/{externalRef} анулира собствена отворена позиция без двоен ефект при повторение. Прехвърлените към фактура позиции се коригират във Финанси. Начисляване към стая не е плащане; при напускане отворените позиции преминават във фактурата. Сверете ръчните записи при прекъсване преди API изпращане.
6Уебкукове и проверка
Незадължителни уебкукове: charge.posted и charge.cancelled. Задай отделна тайна и проверявай HMAC-SHA256 върху оригиналното тяло. X-STRYK-Webhook-Id обозначава абонамента. Премахвайте дублиранията по event и data.chargeId; редът не е гарантиран. Тествайте начисляване, повторения, забрана, лимит, няколко стаи, анулиране, фактуриране и уебкукове.