Skip to content

Testing \[BETA\]

There are many different flows within Checkout depending on whether:

  • What’s being booked is a Facility or a Session
  • Whether it’s Free or Paid
  • etc..

In order to test these within Authenticated Checkout, a number of special test values can be used in the Authenticated Checkout request.

If these are used, Authenticated Checkout enters “testing” mode. In this mode, you can use Authenticated Checkout exactly as you would in “live” mode. But when you press the book button, a payment will not actually be made and nothing will be booked.

However, a confirmation email will still be sent to the customer’s email address and the webhooks will be called appropriately.

In this way, you can test your integration with imin’s Authenticated Checkout without having to make an actual booking and spend money.

The Rules

  • For “testing” mode to work, all possible parameters must have a special test value.
  • You must use a Stripe test card number instead of a real card number e.g. 4242 4242 4242 4242. Any card number that you use will result in a successful booking.

Test Parameters

OrderedItem identifier

This is the OrderedItem identifier value that goes here:

{
"type": "imin:CheckoutSession",
"imin:initialOrder": {
"type": "OrderQuote",
"orderedItem": [
{
"type": "OrderItem",
"orderedItem": {
"type": "<< OrderedItem type >>",
"identifier": "<< OrderedItem identifier >>"
},
// ...

The OrderedItem type will have to match the ID

OrderedItem identifierOrderedItem type
test-item-ScheduledSession-freeScheduledSessionA ScheduledSession which is free
test-item-ScheduledSession-paidScheduledSessionA ScheduledSession which has a non-zero price
test-item-Slot-freeSlotA facility Slot which is free
test-item-Slot-paidSlotA facility Slot which has a non-zero price

Offer id

This is the Offer id value that goes here:

{
"type": "imin:CheckoutSession",
"imin:initialOrder": {
"type": "OrderQuote",
"orderedItem": [
{
"type": "OrderItem",
"acceptedOffer": "<< Offer id >>",
// ...

In order for a “member” offer to be selected, the customer must themselves be a member. This is indicated by the “Broker customer identifier” column.

Offer idBroker customer identifier
test-offer-adult-guest<< any >>Guest Checkout for an adult
test-offer-adult-membertest-customer-memberExisting Member Checkout for an adult
test-offer-junior-guest<< any >>Guest Checkout for a junior
test-offer-junior-membertest-customer-memberExisting Member Checkout for a junior

Broker customer identifier

This is the Broker customer identifier value that goes here:

{
"type": "imin:CheckoutSession",
"imin:initialOrder": {
"type": "OrderQuote",
"customer":{
"type": "Person",
"identifier": "<< Broker customer identifier >>",
// ...
Broker customer identifier
test-customer-nonmemberBroker Customer who does not have an associated membership with the Booking System
test-customer-memberBroker Customer who does have an associated membership with the Booking System