Testing [BETA]

Test your integration with imin's Authenticated Checkout without having to make actual bookings

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 identifier

OrderedItem type

test-item-ScheduledSession-free

ScheduledSession

A ScheduledSession which is free

test-item-ScheduledSession-paid

ScheduledSession

A ScheduledSession which has a non-zero price

test-item-Slot-free

Slot

A facility Slot which is free

test-item-Slot-paid

Slot

A 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 id

Broker customer identifier

test-offer-adult-guest

<< any >>

Guest Checkout for an adult

test-offer-adult-member

test-customer-member

Existing Member Checkout for an adult

test-offer-junior-guest

<< any >>

Guest Checkout for a junior

test-offer-junior-member

test-customer-member

Existing 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-nonmember

Broker Customer who does not have an associated membership with the Booking System

test-customer-member

Broker Customer who does have an associated membership with the Booking System

Last updated