Ticket Purchase

The ticket purchase API is used to purchasing tickets, register attendees and segment your audiences within minutes.

Here are the steps and API endpoints to Ticket Purchase in the Accelevents platform.

Ticket purchase

Calling these following API sequence will help you to create ticket purchase order in our platform

StepDescriptionAPI reference
Get event ticket detailsGet available ticketing details for your event.

This will provide you the details like number of ticket types, how many tickets are available in each ticket type, their pricing, etc.

Click here for more details
Get available ticketing details
Fee calculation(Only required for paid tickets)

For paid tickets payment gateways like stripe and square collect charges for each transaction, this API will help you to calculate fee so you can provide final charges which end users will be charged with.

Click here for more details
Calculate fees based on selected tickets
Create orderThis step will provide unique order-id from our platform for your ticketing order which can later be used to confirm order, modify order or retrieve details like purchaser or holder information

Also this will make sure that for specified duration your selected tickets are marked as on hold and let you finish the order.

Once the time limit for checkout is over you will have to repeat this step to generate the order-id again

Click here for more details
Order generation
Purchase ticketsThis is final step in ticket purchase, this will ensue that your selected tickets are added to your account.

Based on your event configuration users will receive order confirmation email.

In case of paid ticket users be charged and based on your payment gateway you will be able to see this payment information on their dashboards.

Click here for more details
Confirm order by paying ticket amount

1. Get ticket details

Get available ticketing details for your event.

This will provide you the details like number of ticket types, how many tickets are available in each ticket type, their pricing, etc for the ticket types which are not hidden and publicly available.

There is an optional parameter accessCode which can be used in order to have access to the hidden ticket types. Access codes provides you the ability that only those people who has this code can purchase certain ticket type.

Here is a sample response, which will be returned by API.

{
  "address": "string",
  "allowDisagreeDisclaimerConfirmation": true,
  "availableAccessCode": true,
  "categories": [
    {
      "color": "string",
      "dataType": "TICKET",
      "eventId": 0,
      "havingVariations": false,
      "id": 0,
      "imageUrl": "string",
      "name": "string",
      "position": 0,
      "quantity": 0
    }
  ],
  "discountCodeAvailable": false,
  "endDate": "2021-06-29T13:57:47.135Z",
  "eventCapacityReach": true,
  "eventFormat": "VIRTUAL",
  "eventKey": "string",
  "eventListingStatus": "PRIVATE",
  "eventVenueStatus": "VENUE",
  "exitIntentPopupEnabled": false,
  "hideRegistrationButton": false,
  "hideRemainingTickets": false,
  "hideTicketPrice": false,
  "holderAttributeRequired": true,
  "preEventAccessMinutes": 0,
  "requireDisclaimerConfirmation": true,
  "seatingChartKey": "string",
  "startDate": "2021-06-29T13:57:47.135Z",
  "stripeCountry": "string",
  "tickeTypes": [
    {
      "id": 0,
      "name": "string"
    }
  ],
  "ticketingFee": [
    {
      "addon": true,
      "aeFeeFlat": 0,
      "aeFeePercentage": 0,
      "creditCardProcessingFlat": 0,
      "creditCardProcessingPercentage": 0,
      "fromThreshold": 0,
      "inPerson": true,
      "operator": "string",
      "toThreshold": 0,
      "wlFeeFlat": 0,
      "wlFeePercentage": 0
    }
  ]
}

2. Fee calculation

🚧

Note

Only perform this action if you have paid tickets in your order, for free tickets you don't have to call this endpoint

For paid tickets payment gateways like stripe and square collect charges for each transaction, this API will help you to calculate fee so you can provide final charges which end users will be charged with.

Note that this calculations are based on how you have configured your ticket types it is possible to have ticket price inclusive or exclusive of these charges.

Here is a sample response, which will be returned by API.

{
  "aeFees": 0,
  "ccFees": 0,
  "ticketPrice": 0,
  "ticketQuantity": 0,
  "ticketingTypeId": 0,
  "totalPayable": 0,
  "wlFees": 0
}

3. Create order

This step will provide unique order-id from our platform for your ticketing order which can later be used to confirm order, modify order or retrieve details like purchaser or holder information

Also this will make sure that for specified duration (e.g. 10 minutes) your selected tickets are marked as on hold for you and let you finish the order

Once the time limit for checkout is over you will have to repeat this step to generate the order-id again.

Here is a sample response, which will be returned by API.

{
  "orderId": 0
}

4. Purchase tickets

❗️

Prerequisites

User should be authenticated in order to perform this action
here is signup/login reference guide for you to follow

This is final step in ticket purchase, this will ensue that your selected tickets are added to your account.

Based on your event configuration users will receive order confirmation email.

In case of paid ticket users be charged and based on your payment gateway you will be able to see this payment information on their dashboards.

πŸ“˜

For Stripe Payment Gateway and paid tickets

You will have to generate and pass stripe token in order to make sure that charge is created properly. It is required to validate stripe token id before you can charge user. For this you will be required to authenticate the stripe token from Stripe Form for which you should call this endpoint - Create Setup Intent.This will provide you the details like payment intent id and whether you need to perform 3D secure authentication or not.

To know more about 3D secure transaction check this doc

Here is a sample response, which will be returned by API.

{
  "message": "Success",
  "type": "Success"
}