The imin Platform
2.0.0
2.0.0
  • Introduction to the imin Platform
  • Using the Platform
    • imin's Platform Products
    • Authentication
    • Our Platform Data
      • Understanding Responses
      • Namespaces and Extensions
      • Defensive Data Consumption
      • Mocking the Interface
  • platform products
    • Search
      • imin Events API
        • Events API Reference
        • Virtual & Physical Sessions
        • Concepts
          • EventSeries
          • ScheduledSessions and eventSchedules
          • Activities and Collections
            • Activities
            • Activity Concept Collections
          • Accessibility Support
          • Prices
        • Filters
          • Modes
          • Age Ranges
          • Dates and Times
          • Activities and Concept Collections
          • High Frequency Sessions
      • imin Facilities API
        • Query Parameter Search
          • Mandatory Query Parameters
            • mode=discovery-geo
            • mode=upcoming-slots
          • Optional Query Parameters
        • ByID Search
          • FacilityUse By-ID
          • Slot By-ID
        • FacilityUses and IndividualFacilityUses
        • Slots
        • Facilities Slot Booking
      • imin Places API [BETA]
        • Example Request & Response
    • Firehose
      • Introduction to the Firehose
      • Accessing the Firehose
      • Firehose Usage Policy & Restrictions
      • Firehose and Search
      • Bookable Firehose Feeds
      • Bookable Sellers Feed
      • Attribution Catalog Endpoint
    • Live Timetables
      • Pre-Requisites: Open Data Feeds
      • The Onboarding Process
        • 1. Ensuring your Data Offers the Best User Experience
        • 2. Setting up and Embedding your First Timetable
        • 3. Setting up the Rest of your Timetables
        • 4. Activating Booking via Guest Checkout
      • Features Available Upon Request
      • Styling the Live Timetables
      • FAQs
    • Data Dashboard
  • incorporating book and pay
    • imin Branded Checkout
      • Introduction
      • Setup
        • Information We Require From You
        • Actions You Need to Complete
      • Authenticated Checkout
        • Testing [BETA]
        • 👪Group Booking [BETA]
      • Standalone Checkout
      • Firehose and Checkout [BETA]
        • Loading the Checkout via Firehose
    • imin Booking Platform
      • Customer Account Management
        • Create Customer Account
        • Update Customer Account
        • Get Customer Account
        • Delete Customer Account
        • Example Scenario
        • Payment Card Management
        • Linked Accounts
        • Entitlement
          • Evidence Requests
          • Entitlement Pricing in Search
          • Entitlement Pricing in Checkout
        • Access Pass
        • Webhooks
      • Orders
        • Order History
        • Order (by ID)
        • Cancellations & Refunds
      • Upcoming OrderItems
      • Receipt (by ID)
  • imin and booking systems
    • Seller Onboarding
      • API
  • HINTS & TIPS
    • Get the Best Out of Search
      • Displaying Schedule Information
      • URLs and Offering a Call to Action
      • Searching by Activity
      • Your Search Results and HighFrequencySessions
      • Customer Specific Images
  • Info for Data Publishers
    • Your RPDE Feed & the imin Platform [BETA]
      • Providing Places Data [BETA]
      • Providing Schedule Information [BETA]
Powered by GitBook
On this page
  1. incorporating book and pay
  2. imin Booking Platform
  3. Orders

Order History

Orders that have been made by a given customer.

PreviousOrdersNextOrder (by ID)

Last updated 2 years ago

Each Order is a completed booking that the customer has made using Checkout. Each Order will contain one or more OrderItems - each is a session or booked out facility. For each Order, there is a generated receipt that customers can view. Orders are sorted in descending order by order date with the most recently completed Orders appearing first in the list.

This is useful to provide customers with a history of Orders that they have made and actions for each Order e.g. , , etc.

Headers

X-API-KEY must be provided when making the request to this endpoint. This authorizes you to access the API for your customers.

Request

GET https://book.imin.co/api/v2/orders?customerIdentifier={customerIdentifier}&page={page}

This request must be made Server-side. Otherwise, it would be possible to view the secret API key with a browser.

The customerIdentifier parameter is the imin customer identifier that was created when you called our POST /customers endpoint with the customer in question

The page parameter specifies which page of Orders is returned

Response

An example 200 response looks like:

{
  "@context": [
    "https://openactive.io/",
    "https://schema.imin.co/",
    "https://openactive.io/ns-beta"
  ],
  "id": "https://book.imin.co/api/v2/orders?customerIdentifier=1234&page=1",
  "type": "imin:RestrictedCollection",
  "imin:totalItems": 1917,
  "view": {
    "id": "https://book.imin.co/api/v2/orders?customerIdentifier=1234&page=1",
    "type": "PartialCollectionView",
    "first": "https://book.imin.co/api/v2/orders?customerIdentifier=1234&page=1",
    "last": "https://book.imin.co/api/v2/orders?customerIdentifier=1234&page=192",
    "imin:currentPage": 1,
    "imin:itemsPerPage": 10,
    "imin:totalPages": 192,
    "urlTemplate": "https://book.imin.co/api/v2/orders?customerIdentifier=1234&page={page}",
    "next": "https://book.imin.co/api/v2/orders?customerIdentifier=1234&page=2"
  },
  "imin:item": [{
    "type": "Order",
    "@context": [
      "https://openactive.io/",
      "https://openactive.io/ns-beta"
    ],
    "id": "https://book.imin.co/api/v2/orders/0bac05e5-b207-4794-80b8-6c94211643c5",
    "identifier": "0bac05e5-b207-4794-80b8-6c94211643c5",
    "orderStatus": "OrderDelivered",
    "orderDate": "2022-11-15T15:24:26Z",
    "imin:receipt": [{
      "type": "Invoice",
      "url": "https://book.imin.co/api/v2/receipts/1",
      "dateCreated": "2021-04-30T11:42:47.813766+01:00"
    }], 
    "seller": {
      "type": "Organization",
      "id": "http://kinetic-insight.com",
      "termsOfService": [{
          "type": "PrivacyPolicy",
          "name": "Privacy Policy",
          "url": "http://opendata.kinetic-insight.com/privacy-policy"
        },
        {
          "type": "TermsOfUse",
          "name": "Terms and Conditions",
          "url": "http://opendata.kinetic-insight.com/terms-and-conditions"
        }
      ]
    },
    "orderedItem": [{
      "type": "OrderItem",
      "id": "https://book.imin.co/api/v2/orders/0bac05e5-b207-4794-80b8-6c94211643c5/order-items/abcd",
      "identifier": "abcd",
      "orderedItem": {
        "type": "ScheduledSession",
        "id": "https://search.imin.co/events-api/v2/scheduled-sessions/http%3A%2F%2Fopendata.kinetic-insight.com%2Fapi%2Ffeeds%2Fscheduled-sessions%2F00000000000000000269",
        "identifier": "http://opendata.kinetic-insight.com/api/feeds/scheduled-sessions/00000000000000000269",
        "eventStatus": "https://schema.org/EventScheduled",
        "startDate": "2020-01-16T10:00:00+00:00",
        "endDate": "2020-01-16T11:00:00+00:00",
        "superEvent": {
          "type": "SessionSeries",
          "location": {
            "type": "Place",
            "identifier": "2476",
            "name": "test venue",
            "url": "http://opendata.kinetic-insight.com/venues/2476",
            "geo": {
              "type": "GeoCoordinates",
              "latitude": -2.235037,
              "longitude": -0.1692925
            },
            "address": {
              "type": "PostalAddress",
              "addressLocality": " 3 Dale Street",
              "postalCode": "m1 1ba",
              "addressRegion": " Manchester",
              "addressCountry": "GB",
              "streetAddress": "Flat 3"
            }
          },
          "superEvent": {
            "type": "EventSeries",
            "name": "test sss",
            "organizer": {
              "type": "Organization",
              "id": "http://kinetic-insight.com",
              "name": "kinetic-insight",
              "sameAs": [
                "https://www.facebook.com/kineticinsight/",
                "https://twitter.com/kineticinsight"
              ],
              "url": "http://kinetic-insight.com",
              "logo": {
                "type": "ImageObject",
                "url": "http://kinetic-insight.com/wp-content/uploads/2017/05/KI-LOGO-WEB-K-ONLY-.png"
              },
              "telephone": "0800 808 9004",
              "email": "support@kinetic-insight.com"
            }
          }
        },
        "duration": "PT1H",
        "maximumAttendeeCapacity": 10,
        "remainingAttendeeCapacity": 9
      },
      "orderItemStatus": "https://openactive.io/OrderItemConfirmed",
      "acceptedOffer": {
        "type": "Offer",
        "id": "http://opendata.kinetic-insight.com/api/feeds/offers/ki-adult",
        "name": "ki-adult",
        "price": 10,
        "priceCurrency": "GBP",
        "latestCancellationBeforeStartDate": "P1D",
        "validFromBeforeStartDate": "P6D"
      },
      "allowCustomerCancellationFullRefund": true,
      "unitTaxSpecification": [{
        "type": "TaxChargeSpecification",
        "name": "VAT",
        "price": 0,
        "priceCurrency": "GBP",
        "rate": 0
      }],
      "accessPass": [{
        "@type": "Barcode",
        "text": "EXT12345678901234567"
      }],
      "imin:isPresentlyCancellable": true
    }],
    "orderNumber": "29",
    "broker": {
      "type": "Organization",
      "name": "LukeTestOrg",
      "description": "A fitness app for all the community",
      "url": "https://imin.co/luke-test-org",
      "address": {
        "type": "PostalAddress",
        "addressLocality": "Madeupsville",
        "postalCode": "TS4 3AE",
        "addressRegion": "Middlesbrough",
        "addressCountry": "GB",
        "streetAddress": "123 Fake Street"
      },
      "logo": {
        "type": "ImageObject",
        "url": "https://gorillafund.org/wp-content/uploads/2019/12/ISA-chesbeat-2nd-sequence-14-NOV-13-KRC-Vecellio1511-1024x683.jpg"
      }
    },
    "customer": {
      "type": "Person",
      "telephone": "020 811 8055",
      "email": "eheuheu@ehuehue.com",
      "givenName": "Eheuheu",
      "familyName": "Eheuheu"
    },
    "bookingService": {
      "type": "BookingService",
      "id": "https://partnerportal.mcractive.com",
      "name": "MCRactive Partner Portal"
    },
    "brokerRole": "https://openactive.io/AgentBroker",
    "payment": {
      "type": "Payment",
      "identifier": "ch_1Aq7JRKfrmweGdVCi3JpPkEd",
      "name": "Stripe payment"
    },
    "totalPaymentDue": {
      "type": "PriceSpecification",
      "price": 10,
      "priceCurrency": "GBP"
    },
    "totalPaymentTax": [{
      "type": "TaxChargeSpecification",
      "name": "VAT",
      "price": 0,
      "priceCurrency": "GBP",
      "rate": 0
    }]
  }]
}

Key fields:

  • view shows the total number of pages and helpful pages like previous, next and last

  • imin:item is the array of Order relating to the customer, ordered by orderDate in descending order.

  • orderedItem is the OrderItem for the Order

  • orderedItem.orderedItem is the ScheduledSession or FacilityUseSlot for that Order

  • confirmationNumber is the confirmation number for that Order

imin:receipt is an Array of , sorted such that the most recent receipt is the first item in the array of Invoices. If no imin:receipt attribute is present on the Order, that means no receipts exist for this order.

viewing receipts
cancelling orders
Invoices