Webhooks
To integrate with Tippy, your API will need to receive REST calls from our API.
When you sign up, you can specify a URL where our API can reach out to you.
We'll issue REST calls to notify you of events happening on Tippy system.
Every call will be equipped with eventTopic in a body and X-Event-Topic in the header.
Additionally the headers will include X-Event-Id.
All calls will be encoded as application/json and sent with the POST
method. They will include a signature in the
X-Request-Signature-SHA-256 header which you can use to verify that the
call actually originated from us.
Validating Webhooks#
When you receive calls to your webhook URL, you'll always want to make sure
that it's really Tippy making the call, and not an impersonator.
Tippy signs each webhook event with your app secret. The
signature is contained in the X-Request-Signature-SHA-256 header and is a
SHA256 HMAC hash of the request body with the key being your app secret.
You can validate the webhook by generating the same SHA256 HMAC hash and comparing it to the signature sent with the payload.
TS Example
Event Reference#
Listed below are all the possible events that Tippy's API can emit.
tips_selected#
With Display Integration, when customers select tips on our device, we'll use this event to let you know which tips they selected and the fees that Tippy will charge for them.
Event topic: tips_selected
Products: Display Integration
Event body structure (TS notation)
Event example
tips_split#
Staff members may opt to split tips after they've received them. They do this if two or more staff members worked on a service, but only one of them received a tip. Example: Mary receives a $30 tip, but wants to give $5 from that tip to Walter and $10 to Candace, as they helped her with her work.
We'll issue this event when staff members split tips between them. The person
that's initiating the split will have a negative tipAmount, while recipients
will have a positive amount.
Event topic: tips_split
Products: Display Integration, Data Integration
Event body structure (TS notation)
Event example
tip_refunded#
This webhook event is dispatched when an Owner or Manager initiates a tip refund through the Tippy dashboard. This action triggers our system to automatically send a webhook to the designated URL, delivering comprehensive details about the refunded transaction, including information on the specific employee involved and the refund amount.
Event topic: tip_refunded
Products: Display Integration, Data Integration
Event body structure (TS notation)
Event example
integration_terminated#
Accounts may choose to stop using Tippy services or integration might become disabled for various reasons. When this happens we
will send an integration_terminated event with matching accountToken.
After sending this event Tippy will no longer accept tip requests with this accountToken and POS should fallback to a checkout flow
without Tippy.
Event topic: integration_terminated
Products: Display Integration, Data Integration
Event body structure (TS notation)
Event example
transaction_canceled#
Depending on POS implementation, from time to time devices can find themselves in an unstable state. If that happens, admins and owners have an option to clear the state of the device which will cancel any pending (incomplete) transactions and emit a webhook to notify POS.
Event topic: transaction_canceled
Products: Display Integration
Event body structure (TS notation)
Event example