Build your own Booking Portal & Shopping Basket

Build your own Booking Portal & Shopping Basket

Support with building your own Booking Portal or Shopping Basket


Downloadable resources

 


Related Help Guide Pages

This guide is designed for Training Administrators who want to understand what is possible, and for the Developers who will bring those ideas to life!

accessplanit’s standard Checkout Basket works brilliantly for most training companies, but some need more! If your website has its own look and feel, your customers expect a specific journey, or you use a payment provider we don't support out of the box, you don't have to compromise. With API v2 Feeds, you can build a fully bespoke booking portal and basket that lives inside your website, while accessplanit stays your single source of truth for Course, Booking, and Delegate data behind the scenes.

If you’ve purchased accessplanit’s API v2 Feeds, you already have everything you need to build your own fully branded booking portal and shopping basket, no additional licences or modules required!


Is a custom booking portal for you?

This approach is worth exploring if you need:

  • A fully branded booking portal that matches your website exactly

  • A bespoke booking journey or shopping basket built around your customers

  • Connect a payment gateway accessplanit doesn't support natively

  • Custom learner portal features

  • Support for Google or Microsoft SSO logins

  • Complete control of the user interface and user experience

  • To add functionality beyond what standard Checkout offers

If any of these resonate with you, keep reading! This page explains how to use the API Feeds to design your very own booking portal and/or shopping basket.

How it works

  1. You already have the data feeds
    API v2 Feeds give real-time access to Courses, Bookings, Invoices, Discounts, and Delegate details

  2. Your developers build the front end
    They design the pages, user journeys, and incorporate your design choices and branding, while accessplanit handles the data underneath

  3. You launch on your own terms
    Your own domain, your own payment gateway, your own customer experience, with accessplanit still running the show behind the scenes

To make that first step easier, we've built a full proof of concept (PoC) so your team isn't starting from a blank page.

image-20251117-115115.png
One of the pages from accessplanit PoC Learner Portal

See it in action: our proof of concept (PoC)

In this section we tour though the areas developed within the proof of concept

We've built a working example that demonstrates every core piece of a custom booking portal, made entirely from API Feeds, no extra licences, modules, or platform components. Each area below includes a short video tour so you can see the experience for yourself and pick up a few best-practice pointers along the way!

Remember!

With your own portal, you control the layout, colours, and journey - this PoC simply shows you what's possible.

Course search

A real-time, filterable course catalogue.

  • Search by Course label and delivery method (class, web, eLearning, etc.)

  • Results show the course name, delivery method, and a ‘Show Dates’ button

  • A dates table with start/end dates, duration, status, cost, venue, and available places

  • A Book button that adds the course straight to the basket

Commercial Site - Course Search.mp4
Video demonstrating a PoC for how the API Feeds can be used to create a course search

 

My Courses

A dedicated home for a learner's upcoming and past training.

  • My Courses: everything a user is registered on

  • My Web Courses: course objectives and joining links

  • My eLearning Courses: status tracking and package launch

Commercial Site - My Courses.mp4
Video demonstrating a PoC for how the API Feeds can be used to create 'My Course' areas in a portal

 

My eLearning

Learners launch assigned eLearning straight from the portal, with status visible and a one-click ‘Launch’ button for the SCORM package.

Commercial Site - eLearning Launcher.mp4
Video demonstrating a PoC for how the API Feeds can be used to display and launch eLearning Courses

 

My Bookings

A clear view of everything a learner has booked, including status, dates, and references - with ‘View Booking’ and ‘View Invoice’ pop-ups for more detail.

Commercial Site - My Bookings.mp4
Video demonstrating a PoC for how the API Feeds can be used to create a ‘My Bookings’ section with pop-up windows containing more information

 

Shopping Basket

A full, flexible booking journey:

  • ‘Book’ adds a course from search straight into the basket

  • Assign Delegates to places (or leave a Placeholder), the available Delegates are automatically filtered by the logged-in user's access level, for security

  • Apply accessplanit discount codes

  • Checkout creates the booking and registers Delegates/Placeholders onto the course

Please note

The PoC doesn't include a payment gateway, that choice is entirely yours.

Commercial Site - Basket.mp4
Video demonstrating a PoC for how the API Feeds can be used to create a shopping basket

 

My Account

Learners manage their own details:

  • Edit personal and contact information

  • Change password

  • Set marketing opt-in preference

Commercial Site - My Account.mp4
Video demonstrating a PoC for how the API Feeds can be used to create a My Account page

 

My Invoices

  • A list of invoices targeted to the logged-in user

  • A ‘View Invoice’ pop-up with full item-level detail

Please note

The PoC doesn't include a 'make payment' option against invoices, you could incorporate that into your design!

Commercial Site - My Invoices.mp4
Video demonstrating a PoC for how the API Feeds can be used to create a My Invoices section with a pop-up window to view the Invoice

 


Everything you need to get building

In this section you will get access to the resources and information to help you build your own portal or basket

Super Admin - Plan your custom booking portal workbook

Define your requirements before development starts, this guide will reduce rework and keep your project team aligned on the experience you want:

GitHub Repo

The actual code behind our proof of concept:

https://github.com/accessplanit/api-v2-demo

API v2 support resources

Get oriented with the feeds:

Integrate with the accessplanit API v2 Feeds - Overview

Full technical reference for your developers:

API v2 - Developer Resources

 


Top tips & recommendations

In this section we outline our top tips for your portal and basket!

Building your own portal gives you full control! These recommendations, are based on best practice and what we’ve learned from supporting customers building their own interfaces.

 

Accessibility

Designing an accessible experience makes sure that every learner can search for courses, make bookings, and access their training without barriers. We recommend considering the following when designing your custom portal:

  • Support full keyboard navigation

  • Use descriptive aria-labels (e.g. "Add to Basket", "Launch eLearning")

  • Meet WCAG AA colour contrast across menus, buttons, and alerts

  • Write meaningful error messages ("Please enter a Delegate email", not "Invalid input")

  • Never rely on colour alone to show availability or status

  • Correctly associate form labels with inputs

  • Make sure eLearning launch and other embedded content works with screen readers and assistive input

 

Authentication

Your custom portal must authenticate users using accessplanit’s existing login process. The proof of concept demonstrates how to handle this securely.

  • Authenticate through accessplanit's existing login - don't replicate or replace it

  • Store and pass the returned session token securely with every API request

  • Never store passwords or handle credential verification yourself

  • Use secure session timeouts and prompt re-login when a token expires

  • Always use HTTPS; never log tokens in browser consoles or server logs

  • Encourage logout on shared devices

 

Performance & caching

API Feeds provide real-time data, which is ideal for accuracy but without optimisation unnecessary calls can slow your custom portal down and this may also impact your core accessplanit platform! Use these techniques to keep everything fast and reliable:

  • Cache anything that rarely changes (course categories, locations, configuration lists)

  • Use short-lived client-side caching for search filters and course info

  • Lazy-load booking history and large course lists rather than rendering everything at once

  • Show loading states so users know data is on its way

  • Prefer manual "Refresh" buttons over automatic polling


FAQs

Here are some common questions that we receive about the building your own basket and portal and their answers

Can I use my own payment gateway?

Yes! Since you’re building your own front-end, you’re free to integrate with any payment gateway you prefer. Payments will not pass through accessplanit’s Checkout.

Can I fully customise the look and feel?

Yes - the entire user interface is completely under your control, so you can design it to match your branding, layout, and user experience requirements.

Do we need additional licences or modules?

No, you only the API v2 Feeds included within your contract to make use of this.

Can accessplanit help troubleshoot issues with our custom code?

We can support you with questions specifically related to the API Feeds (such as which modules or fields to use).
However, our team isn’t able to provide support for any issues related to the custom portal or basket you build.

Is the Proof of Concept intended for use in a live environment?

No, the Proof of Concept is connected to a demonstration platform and is provided purely as a reference for your development team.

Can we add a section in our custom portal for uploading documents?

Yes, you can build an upload area within your portal.
However, it’s important to note that files cannot currently be uploaded into your accessplanit platform via the API feeds. Because of this, any documents your customers or Delegates upload would not sync back to accessplanit, and would instead need to be stored, referenced, or downloaded directly from your custom portal.

Do we need to build our own payment gateway integration, or can we use an accessplanit one?

Because you’re creating your own shopping basket, it won’t connect to the standard accessplanit basket.
This gives you the flexibility to integrate with any payment gateway you choose, even ones accessplanit doesn’t support by default. The trade-off is that you cannot use accessplanit’s built-in payment integrations, as these only work with the accessplanit Shopping Basket and/or Checkout Basket.

Can fields in ‘My Account’ be made read-only so users can view them but not edit them?

Yes, as your team will controls the build of the My Account page, you decide:

  • What information is displayed

  • Which fields are editable

  • Which fields are mandatory or optional

The only requirement from accessplanit is that all Users must include essential information (e.g., first name and last name) so the platform can function correctly.

Can Users log into the portal using their accessplanit login details?

Yes. The proof of concept is linked directly to accessplanit authentication, meaning users log in with the same username and password they use for the platform.

Is User access in the portal restricted based on their accessplanit roles?

All API v2 Feeds are restricted based on the user token or user API key provided, so if this is the way you would like your integration to work, provide the API token for the logged in user and our API's will automatically filter the results based on their access levels.

Our Proof of Concept works in a different way, we have integrated using a service user for the interactions with the API, this has an elevated level of permissions allowing read/write access on modules such as user details. This way the user can update their user details in their profile without needing specific roles or permissions granted to allow them to write to the userdetails API feed.

We also use the login endpoint for API v2 which gives a true or false result, this way we can streamline the login flow while also using a service user to handle interactions with your AP platform via API v2.

Can we create our own registration form for new customers?

Yes, although the proof of concept doesn’t include a registration page, you can certainly build your own.
We will need to make sure your form:

  • Creates Users correctly in accessplanit

  • Stores their login credentials accurately so they can log in later

⚠️ Please notify accessplanit before you start building your own Registration Form so that we can check and discuss the creation of new user passwords with you.

Can we design our own ‘Add Delegates’ step in the shopping basket?

Absolutely! As you’re building the basket yourselves, you can fully customise the ‘Add Delegates’ step to match your requirements.
The only condition is that the data you collect must be compatible with the accessplanit API v2 feeds, these are very comprehensive, so they cover nearly all scenarios.

You’re welcome to use our Proof of Concept as a starting point or source of inspiration, but the final design will depend on your needs and your development team’s capability.

 


Support

If you need any further support with the API Feeds, here are the steps to get in touch with us

Raise a ticket with our support team: https://www.accessplanit.com/tickets-view

 

 


Contact Our Team

If you can't find what you're looking for, access our Support Portal, and our team of experts will be happy to help!

Follow Us

Facebook|height=20 LinkedIn|height=20 Instagram|height=20 Twitter|height=20

Copyright © 2025 accessplanit.

Social media icons by icons8.com