Building apps
Introduction
Bókun apps are web applications that enhance the Bókun platform, for example by:
- Providing integrations to other software platforms (e.g. accounting software, CRM, metrics, etc.).
- Connecting with service providers (e.g. SEM, web design, copywriting, translations, VIP support, etc.).
- Adding new functionality to Bókun.
Developers host their Bókun apps on their own infrastructure. You can host your app anywhere, and build it with the tech stack of your choice.
You will need a Bókun partner account to create your app. Click here to sign up.
Types of apps
Depending on the purpose of your app and how you’ll distribute or sell it, you first need to choose what type of app you’ll build. App types can’t be changed after the app has been created, so be sure you understand the different capabilities and requirements of each type. There are two app types:
Public apps
Public apps are meant for developers who want to distribute their apps to many vendors on the Bókun platform. These are the key features of public apps:
- They can be installed by multiple Bókun vendors
- They must go through Bókun’s app approval process
- You can sell them in the Bókun App Store
- Authentication and installation is managed by OAuth 2.0
- They’re created and managed in your Partner Dashboard
Custom apps
Custom apps are meant for developers building an app tailored for a single vendor. These are the key features of custom apps:
- They can be installed by a single Bókun vendor
- They don’t go through Bókun’s app approval process
- You can’t sell them in the Bókun App Store
- Authentication and installation is managed by OAuth 2.0
- They’re created and managed in your Partner Dashboard
Anatomy of a Bókun app
All Bókun apps are web applications. As an app developer, you control your own infrastructure and host your own services. When a vendor installs your app, Bókun grants your app access to certain vendor data.
Standalone apps can operate entirely on your website, while embedded apps integrate more deeply into the Bókun extranet.
Standalone apps
Standalone apps have the following common features:
- They're authenticated and interact with Bókun App APIs.
- They aren’t embedded in the Bókun extranet.
- They expose their own user interface, on their own web domain.
- When Bókun vendors open a standalone app in the Bókun extranet, it opens in a new browser tab.
- Standalone apps can’t use app extensions to add features to the Bókun extranet or Checkout.
Embedded apps
NOTE: Embedded apps are not supported in the first release of the Bókun App Store Platform. Embedded apps have the following common features:
- They’re hosted on your own infrastructure, but display directly in the Bókun extranet or Checkout inside an iframe.
- They have access to app extensions.
How vendors manage their apps
Vendors manage apps by installing them in the Bókun extranet, authorising Bókun to share certain data with that app. Installation varies for public and custom apps.
Installing public apps
Public apps are installed using OAuth. During installation, a page is displayed to the merchant to request specific permissions. Provided that the vendor grants the requested access, then the app can be installed.
The installation process can be initiated by going to the app detail page on the Bókun App Store and clicking on the install button.
Installing custom apps
Custom apps can only be installed by a single Bókun vendor.
- The app developer looks up the vendor to link that vendor to the custom app.
- The vendor signs in to the Bókun extranet and clicks to install the custom app, giving it the requested permissions.
How apps get uninstalled
Vendors can delete apps from their accounts at any time. Deleting an app revokes API access tokens for that vendor, stops subscription payments, and generates an uninstall webhook.
Uninstall events also occur when a Vendor using an app is closed or suspended.
Bókun’s API Terms of Use require app developers to delete certain data as part of the uninstall process. Be sure to review the GDPR requirements to make sure your app is compliant.
Using the test environment
If you’re installing an app on our test environment, you use the same OAuth process as described before, but instead you use our test domain name.
For test environment, you should use:
https://{domain}.bokuntest.com
For production environment, you should use:
https://{domain}.bokun.is