Guideoversigt
-
Kom godt i gang
1 Generel vejledning - 2 Videoguides
-
Specifikt
3 Hold- og kursusbooking - 4 Parbooking
- 5 Lokalebooking
- 6 Ressourcebooking
- 7 Firmaordninger
- 8 iCal-funktionen
- 9 API og webhooks
- 9.1 SOAP API
- 9.2 REST API
- 9.3 Webhooks
- 9.3.1 Tidsbestemte webhooks
- 9.3.2 Hændelseswebhooks
- 10 TOKEN - Login
- 11 SMS-modulet
- 12 Sygeforsikring danmark
- 13 LKT Journal
- 15 Tips
-
Tilkøbsmoduler
16 Kassemodulet - 17 Gavekortmodulet
- 18 Online betaling-modulet
- 19 Marketingsmodulet
- 20 Krypteret linje / journal-modulet
- 21 Skemamodulet
- 22 Dokumenter
- 23 Bonprinter
- 24 Events
Webhooks
Indholdsfortegnelse
9.3 Webhooks |
9.3.1 Tidsbestemte webhooks |
9.3.1.1 Booking webhook: Aflysninger i går |
9.3.1.2 Booking webhook: Forecast |
9.3.2 Hændelseswebhooks |
9.3.2.1 Booking webhook: Opret/ret/slet |
9.3.2.2 Kasse webhook: Gennemført salg |
9.3.2.3 Kasse webhook: Gennemført salg - per varelinje |
9.3.2.4 Kasse webhook: Kasseafstemning |
9.3.2.5 Kunde webhook: Stamdata opdateret |
9.3.2.6 Online betaling webhook: Betalte/annullerede ordrer med kunde tilknyttet |
9.3.2.7 Event: Opret/ret/slet event |
9.3.2.8 Event: Opret/ret/slet event-tilmelding |
9.3 Webhooks
Webhooks giver mulighed for, automatisk, at sende data til eksterne systemer. Hvilke data der sendes og hvad der udløser afsendelsen kan defineres på de forskellige webhook skabeloner I kan oprette i systemet. De forskellige webhooks kan opsættes til at sende data på følgende måder:
|
9.3.1 Tidsbestemte webhooks
Vores tidsbestemte webhooks køres hver dag, på det tidspunkt I selv vælger på de enkelte webhooks. |
9.3.1.1 Booking webhook: Aflysninger i går
Dette webhook kan benyttes til dagligt, på kalendergruppeniveau, at modtage både antallet og værdien af de bookinger der blev slettet/aflyst i går. Der skelnes ikke på hvornår den slettede booking lå til, kun at selve sletningen blev foretaget i går. Eksempel på JSON der kan sendes i dette webhook: |
{
"date": "[date]",
"calendarGroups": [
[CALENDARGROUP_BEGIN]
{
"calendarGroupId": [calendarGroupId],
"calendarGroupName": "[calendarGroupName]",
"calendarGroupNamePath": "[calendarGroupNamePath]",
"calendarGroupLevel": "[calendarGroupLevel]",
"calendarGroupCalendars": "[calendarGroupCalendars]",
"cancellationCount": [cancellationCount],
"cancellationValue": "[cancellationValue]"
}[lineBreak]
[CALENDARGROUP_END]
]
}
Erstatningskoderne ovenfor vil blive erstattet med følgende data når det specifikke webhook køres:
|
9.3.1.2 Booking webhook: Forecast
Dette webhook kan benyttes dagligt, på kalendergruppeniveau, at modtage en prognose eller et forecast af de fremtidige bookinger. På det enkelte webhook vælges perioden der skal kigges på, eksempelvis de 'næste 7 dage'. De data der kan sendes med kan eksempelvis være antallet af bookinger, varigheden af bookingerne, værdien af bookingerne og varigheden af den ikke-bookede ledige tid. Eksempel på JSON der kan sendes i dette webhook: |
{
"date": "[date]",
"period": {
"periodFrom": "[periodFrom]",
"periodTo": "[periodTo]"
},
"calendarGroups": [
[CALENDARGROUP_BEGIN]
{
"calendarGroupId": [calendarGroupId],
"calendarGroupName": "[calendarGroupName]",
"calendarGroupNamePath": "[calendarGroupNamePath]",
"calendarGroupLevel": "[calendarGroupLevel]",
"calendarGroupCalendars": "[calendarGroupCalendars]",
"bookingCount": [bookingCount],
"bookingValue": "[bookingValue]",
"bookingTime": [bookingTime],
"bookingTimeFree": [bookingTimeFree]
}[lineBreak]
[CALENDARGROUP_END]
]
}
Erstatningskoderne ovenfor vil blive erstattet med følgende data når det specifikke webhook køres:
|
9.3.2 Hændelseswebhooks
Vores hændelseswebhooks køres i forbindelse med forskellige hændelser i systemet, det kan være et webhook der kører når stamdata på en kunde rettes eller lignende. |
9.3.2.1 Booking webhook: Opret/ret/slet
Dette webhook kan benyttes til at sende data fra bookinger når de oprettes, ændres og/eller slettes. Eksempel på JSON der kan sendes: |
{
"BOOKING": "CREATED",
"BOOKINGID": [BOOKINGID],
"BOOKINGDATE": "[BOOKINGDATE_DD-MM-YYYY]",
"BOOKINGSTARTIME": "[BOOKINGREALTIMEFROM]",
"BOOKINGENDTIME": "[BOOKINGREALTIMETO]",
"SERVICE": "[SERVICENAME]",
"CUSTOMERID": [CUSTOMERID]
}
I kan selv opbygge jeres data ved at benytte erstatningskoder fra følgende kategorier: |
9.3.2.2 Kasse webhook: Gennemført salg
Dette webhook kan benyttes til at sende data når et køb gennemføres i kassesystemet. Eksempel på JSON der kan sendes: |
{
"cashRegisterId": [cashRegisterId],
"cashRegisterName": "[cashRegisterName]",
"tellerId": [tellerId],
"tellerName": "[tellerName]",
"tellerNo": "[tellerNo]",
"receiptId": [receiptId],
"receiptDate": "[receiptDate]",
"receiptTid": "[receiptTid]",
"receiptDateTime": "[receiptDateTime]",
"receiptTotal": "[receiptTotal]",
"receiptWithoutVat": "[receiptWithoutVat]",
"receiptVatTotal": "[receiptVatTotal]",
"receiptVatFreeTotal": "[receiptVatFreeTotal]",
"receiptTotalProducts": "[receiptTotalProducts]",
"receiptTotalServices": "[receiptTotalServices]",
"itemLines": [
[RECEIPTLINE_BEGIN]
{
"lineId": [lineId],
"itemNo": "[itemNo]",
"itemName": "[itemName]",
"itemCount": "[itemCount]",
"itemPrice": "[itemPrice]",
"itemPriceTotal": "[itemPriceTotal]",
"itemPriceExVat": "[itemPriceExVat]",
"itemPriceTotalExVat": "[itemPriceTotalExVat]",
"itemCategory": "[itemCategory]",
"employeeId": [employeeId],
"employeeName": "[employeeName]",
"employeeNo": "[employeeNo]"
}[lineBreak]
[RECEIPTLINE_END]
]
}
Erstatningskoderne i eksemplet ovenfor vil blive erstattet med følgende data når det specifikke webhook køres:
Udover ovenstående kan I også benytte erstatningskoder fra følgende kategorier til at lave jeres eget:
|
9.3.2.3 Kasse webhook: Gennemført salg - per varelinje
Dette webhook kan benyttes til at sende seperate data pr. varelinje fra salg der gennemføres i kassesystemet. Eksempel på JSON der kan sendes: |
{
"cashRegisterId": [cashRegisterId],
"cashRegisterName": "[cashRegisterName]",
"tellerId": [tellerId],
"tellerName": "[tellerName]",
"tellerNo": "[tellerNo]",
"receiptId": "[receiptId]",
"receiptDate": "[receiptDate]",
"receiptTid": "[receiptTid]",
"receiptDateTime": "[receiptDateTime]",
"lineId": [lineId],
"itemNo": "[itemNo]",
"itemName": "[itemName]",
"itemCount": [itemCount],
"itemPrice": "[itemPrice]",
"itemPriceTotal": "[itemPriceTotal]",
"itemPriceExVat": "[itemPriceExVat]",
"itemPriceTotalExVat": "[itemPriceTotalExVat]",
"itemCategory": "[itemCategory]",
"employeeId": [employeeId],
"employeeName": "[employeeName]",
"employeeNo": "[employeeNo]"
}
Erstatningskoderne i eksemplet ovenfor vil blive erstattet med følgende data når det specifikke webhook køres:
|
9.3.2.4 Kasse webhook: Kasseafstemning
Dette webhook kan benyttes til at sende data når et kasseapparat lukkes og kasseafstemningen opgøres. Eksempel på JSON der kan sendes: |
{
"cashRegisterId": [cashRegisterId],
"cashRegisterName": "[cashRegisterName]",
"cashRegisterStatementId": [cashRegisterStatementId],
"cashRegisterStatementPeriod": {
"From": "[cashRegisterStatementPeriodFrom]",
"To": "[cashRegisterStatementPeriodTo]"
},
"salesTotalProducts": "[salesTotalProducts]",
"salesTotalServices": "[salesTotalServices]",
"lukketaf": "[cashRegisterClosedBy]",
"closednote": "[cashRegisterClosedNote]",
"opensaldo": "[cashRegisterBalancePrimo]",
"opendifference": "[cashRegisterOpenedDifference]",
"lukketsaldo": "[cashRegisterBalanceUltimo]",
"lukketdifference": "[cashRegisterClosedDifference]",
"itemGroups": [
[ITEMGROUP_BEGIN]
{
"itemGroupId": [itemGroupId],
"itemGroupName": "[itemGroupName]",
"itemGroupDebet": "[itemGroupDebet]",
"itemGroupKredit": "[itemGroupKredit]",
"itemGroupVat": "[itemGroupVat]",
"itemGroupCurrency": "[itemGroupCurrency]"
}[lineBreak]
[ITEMGROUP_END]
],
"paymentTypes": [
[PAYMENTTYPE_BEGIN]
{
"paymentTypeId": [paymentTypeId],
"paymentTypeName": "[paymentTypeName]",
"paymentTypeDebet": "[paymentTypeDebet]",
"paymentTypeKredit": "[paymentTypeKredit]",
"paymentTypeVat": "[paymentTypeVat]",
"paymentTypeCurrency": "[paymentTypeCurrency]"
}[lineBreak]
[PAYMENTTYPE_END]
],
"onlinePaymentTypes": [
[ONLINEPAYMENTTYPE_BEGIN]
{
"onlinePaymentTypeId": [onlinePaymentTypeId],
"onlinePaymentTypeName": "[onlinePaymentTypeName]",
"onlinePaymentTypeDebet": "[onlinePaymentTypeDebet]",
"onlinePaymentTypeKredit": "[onlinePaymentTypeKredit]",
"onlinePaymentTypeVat": "[onlinePaymentTypeVat]",
"onlinePaymentTypeCurrency": "[onlinePaymentTypeCurrency]"
}[lineBreak]
[ONLINEPAYMENTTYPE_END]
],
"variousValues": [
[VARIOUS_BEGIN]
{
"variousTypeName": "[variousTypeName]",
"variousDebet": "[variousDebet]",
"variousKredit": "[variousKredit]",
"variousVat": "[variousVat]",
"variousCurrency": "[variousCurrency]"
}[lineBreak]
[VARIOUS_END]
]
}
9.3.2.5 Kunde webhook: Stamdata opdateret
Dette webhook kan benyttes til at sende data når en kunde opdateres. Eksempel på JSON der kan sendes: |
{
"CUSTOMERID": [CUSTOMERID],
"CUSTOMERNAME": "[CUSTOMERNAME]",
"CUSTOMERFIRSTNAME": "[CUSTOMERFIRSTNAME]",
"CUSTOMERLASTNAME": "[CUSTOMERLASTNAME]",
"CUSTOMERSEXVALUE": "[CUSTOMERSEXVALUE]",
"CUSTOMERBIRTHDAY": "[customerBirthdateDay]/[customerBirthdateMonth]-[customerBirthdateYear]",
"CUSTOMEREMAIL": "[CUSTOMEREMAIL]",
"CUSTOMERMOBILE": "[CUSTOMERMOBILE]",
"CUSTOMERPOSTALCODE": "[CUSTOMERPOSTALCODE]",
"ORDERSTOTALCOUNT": "[ORDERSTOTALCOUNT]",
"ORDERSTOTALVALUE": "[ORDERSTOTALVALUE]",
"ORDERSTOTALVALUEEXVAT": "[ORDERSTOTALVALUEEXVAT]",
"ORDERSLASTDATE": "[ORDERSLASTDATE]",
"CUSTOMERLASTBOOKINGDATE": "[CUSTOMERLASTBOOKINGDATE]",
"CUSTOMERLASTBOOKINGSERVICE": "[CUSTOMERLASTBOOKINGSERVICE]",
"CUSTOMERNEXTBOOKINGDATE": "[CUSTOMERNEXTBOOKINGDATE]",
"CUSTOMERNEXTBOOKINGSERVICE": "[CUSTOMERNEXTBOOKINGSERVICE]",
"CUSTOMERACCEPTSMARKETINGEMAIL": "[CUSTOMERACCEPTSMARKETINGEMAIL]",
"CUSTOMERACCEPTSMARKETINGSMS": "[CUSTOMERACCEPTSMARKETINGSMS]",
"CUSTOMERTAGS": [
[CUSTOMERTAG_BEGIN]
{
"CUSTOMERTAGID": [CUSTOMERTAGID],
"CUSTOMERTAGNAME": "[CUSTOMERTAGNAME]",
"CUSTOMERTAGVALUE": "[CUSTOMERTAGVALUE]"
}[lineBreak]
[CUSTOMERTAG_END]
]
}
Udover ovenstående erstatningskoder kan I frit benytte erstatningskoder fra følgende kategori for at opbygge jeres egne data: |
9.3.2.6 Online betaling webhook: Betalte/annullerede ordrer med kunde tilknyttet
{
"CUSTOMERID": [CUSTOMERID],
"CUSTOMERNAME": "[CUSTOMERNAME]",
"CUSTOMERFIRSTNAME": "[CUSTOMERFIRSTNAME]",
"CUSTOMERLASTNAME": "[CUSTOMERLASTNAME]",
"CUSTOMERSEXVALUE": "[CUSTOMERSEXVALUE]",
"CUSTOMERBIRTHDAY": "[customerBirthdateDay]/[customerBirthdateMonth]-[customerBirthdateYear]",
"CUSTOMEREMAIL": "[CUSTOMEREMAIL]",
"CUSTOMERMOBILE": "[CUSTOMERMOBILE]",
"CUSTOMERPOSTALCODE": "[CUSTOMERPOSTALCODE]",
"ORDERSTOTALCOUNT": "[ORDERSTOTALCOUNT]",
"ORDERSTOTALVALUE": "[ORDERSTOTALVALUE]",
"ORDERSTOTALVALUEEXVAT": "[ORDERSTOTALVALUEEXVAT]",
"ORDERSLASTDATE": "[ORDERSLASTDATE]",
"CUSTOMERLASTBOOKINGDATE": "[CUSTOMERLASTBOOKINGDATE]",
"CUSTOMERLASTBOOKINGSERVICE": "[CUSTOMERLASTBOOKINGSERVICE]",
"CUSTOMERNEXTBOOKINGDATE": "[CUSTOMERNEXTBOOKINGDATE]",
"CUSTOMERNEXTBOOKINGSERVICE": "[CUSTOMERNEXTBOOKINGSERVICE]",
"CUSTOMERACCEPTSMARKETINGEMAIL": "[CUSTOMERACCEPTSMARKETINGEMAIL]",
"CUSTOMERACCEPTSMARKETINGSMS": "[CUSTOMERACCEPTSMARKETINGSMS]",
"CUSTOMERTAGS": [
[CUSTOMERTAG_BEGIN]
{
"CUSTOMERTAGID": [CUSTOMERTAGID],
"CUSTOMERTAGNAME": "[CUSTOMERTAGNAME]",
"CUSTOMERTAGVALUE": "[CUSTOMERTAGVALUE]"
}[lineBreak]
[CUSTOMERTAG_END]
]
}
9.3.2.7 Event: Opret/ret/slet event
Dette webhook kan benyttes til at sende data fra event når de oprettes, ændres og/eller slettes. Eksempel på JSON der kan sendes: |
{
"eventId": "[eventId]",
"eventGUID": "[eventGUID]",
"eventDateFrom": "[eventDateFrom]",
"eventTimeFrom": "[eventTimeFrom]",
"eventDateTo": "[eventDateTo]",
"eventTimeTo": "[eventTimeTo]",
"eventDescription": "[eventDescription]",
"eventDescriptionBottom": "[eventDescriptionBottom]",
"eventDescriptionShort": "[eventDescriptionShort]",
"eventHeadline": "[eventHeadline]",
"eventImageUrl": "[eventImageUrl]",
"eventLink": "[eventLink]",
"openForSignupDatetime": "[openForSignupDatetime]",
"seatsLeft": "[seatsLeft]",
"seatsTotal": "[seatsTotal]",
"signupDeadlineDatetime": "[signupDeadlineDatetime]",
"unsubscribeDatetime": "[unsubscribeDatetime]"
}
9.3.2.8 Event: Opret/ret/slet event-tilmelding
Dette webhook kan benyttes til at sende data fra en event-tilmelding når de oprettes, ændres og/eller slettes. Eksempel på JSON der kan sendes: |
{
"eventSignupId": "[eventSignupId]",
"eventSignupGUID": "[eventSignupGUID]",
[EACH_EVENTFIELD_BEGIN]"[eventFieldName]": "[eventFieldValue]",
[EACH_EVENTFIELD_END]
"eventSignupCreatedDate": "[eventSignupCreatedDate]",
"eventSignupCreatedTime": "[eventSignupCreatedTime]",
"eventSignupDeletedDate": "[eventSignupDeletedDate]",
"eventSignupDeletedTime": "[eventSignupDeletedTime]",
"signupNumSeats": "[signupNumSeats]"
}
Prøv en gratis og uforpligtende demo af GECKO Booking
Udfyld formularen, og vi sender dig en demo hurtigst muligt.