Seller Onboarding
This guide is for a Booking System with multiple Sellers that wishes to make these Sellers' opportunities bookable with imin.
Onboarding a Seller:
Allows Seller to agree to terms in order to become bookable with imin.
Allows Seller to receive payments for each imin-powered booking by connecting their Stripe account to imin.
Onboarding a Seller (1st time)
This flow has two steps:
Authorize imin to make bookings for Sellers' opportunities by securely issuing tokens with the Seller's consent. imin will not yet make bookings until the Seller has agreed to terms.
This flow follows the Booking Spec's guidelines for Booking Partner Authentication (imin is the Booking Partner).
Things we'll need to set up to get this working between your Booking System and imin:
You will need to set yourself up as an OpenID Provider. Please use one of the certified OpenID Connect libraries to do this: https://openid.net/developers/certified/#OPLibs.
Let imin know where it can find your OpenID Provider's Discovery endpoint.
Create and share with imin a client ID and client secret which imin can use to authenticate with your OpenID Provider.
Provide a Booking System Seller Dashboard URL to imin. At this URL, a Seller would find their dashboard within your Booking System. This will be direct Sellers back to your dashboard at the end of Seller Onboarding.
We'll give you an imin Booking System Identifier. This will be a human friendly all-lowercase ID which identifies your Booking System e.g.
acmesports
.
Once this is all set-up, you can start the Authorization Code Flow by redirecting your Seller to:
https://sellers.imin.co/connect/{{ iminBookingSystemIdentifier }}
URL params
iminBookingSystemIdentifier
: Your imin Booking System Identifier.
When this is complete, imin will have tokens that it can use to make requests to your Booking System for the given Seller's data.
2. Connect to Stripe & Agree to Terms
When Authorization Code Flow is complete, the Seller will be redirected to imin's onboarding dashboard. This will allow the Seller to connect their Stripe account and agree to terms.
Once terms have been agreed, the Seller's data will be bookable.
Reconnect a Seller
If a Seller gets disconnected - perhaps due to an accidental revokation of auth tokens - they can re-connect to imin by simply repeating the Onboarding a Seller flow.
This flow is idempotent. Repeated runs of the flow will simply update imin's auth tokens for the Seller.
If a Seller has already completed the flow, this will be reflected when they load it. If they've connected a Stripe account already, for example, it will show as already connected.
Seller Token Revokation
The Seller has a right to revoke their auth tokens whenever they please. If this happens, imin will disable booking for the Seller and send them an email providing actions for reconnecting or deleting their account.
If a Seller chooses to Reconnect their Account, they will initiate the Reconnect a Seller flow, described above.
If the Seller chooses to Delete their Account, this will initiate a process of deleting their data and disconnecting their Stripe Account.
Last updated