May 2024
New Features
Functionality
-
We've introduced a new setting which lets you determine whether the deal form is displayed in the order summary on your customers' mobile devices.
-
You can now use OCAPI to provide specific error responses when a customer orders an item that is unavailable. New error responses include:
- Sold out for Current Business Date
- Sold out indefinitely
- Outside available hours
- Invalid quantity
-
We've introduced two new endpoints you can use to retrieve information about item availability:
- GetItemAvailabilitiesForSite: ocapi/v1/sites/{siteId}/item-availability
- GetItemAvailabilitiesForGiftShop: ocapi/v1/gift-shop/item-availability
Both resources include information on two types of item availability:
- SoldOutForCurrentBusinessDate: This is equivalent to a selling limit with no quantity and sold out today only.
- SoldOutIndefinitely: This is equivalent to a selling limit with no quantity and sold out indefinitely.
Integrate these resources with your sales channels so that you can let your patrons know why an item isn't currently available.
-
The GetCurrentMember API call now returns the new property HasUnprocessedPriceAdjustment, which lets a member know that their current recurring subscription price is going to change.
-
We've introduced two new endpoints to support processing external payments.
External payments are payments made to the Digital Platform via an external system, where the interaction with the payment provider and actual taking of the payment is handled by the client application. The payments must still be recorded in Vista for an order to be completed.
- CreateExternallyProcessedPayments: POST /ocapi/v1/enterprise/orders/{orderId}/payments/externally-processed
- Returns booking ID and externally processed payment details
- CompleteExternallyProcessedPayments: PUT /ocapi/v1/enterprise/orders/{orderId}/payments/externally-processed
- Requires card type and payment value information. Returns completed externally processed payment details
To ensure a separation of capability between OCAPI and OCAPI Enterprise endpoints, a new client profile has been created called Ocapi.Enterprise which has the following required permissions/behaviors enabled by default.
- OCAPI.Enterprise.Payments
- OCAPI.Enterprise.Payments.CompleteExternallyProcessedPayments
- OCAPI.Enterprise.Payments.CreateExternallyProcessedPayments
- AllowCompleteOrderWithoutPerformingPayment
Note: This feature requires the new Externally processed payments license for Digital Platform.
-
We've added the isChildTicket field to the OCAPI V1 endpoint GET /ocapi/v1/showtimes/{showtimeId}/ticket-prices, which indicates whether or not the ticket is a Child ticket.
-
We've enhanced our API so that your customers can now apply any discounts you've set up to tickets in their order.
To allow for this, we've added a new parameter, discountID, to the /ocapi/v1/orders/{orderId}/showtimes/{showtimeId} endpoint for the Digital Platform. See Ordering tickets for details.
When the ID for a Loyalty discount is passed using this parameter, the discount will be applied to the customer's order. -
We've enhanced our API so that you can now load unopened sessions and return their status via the following V1 Sessions endpoint:
- /OData.Sessions&includeUnopened=true now returns a field called "Status" against each session
Unopened sessions are loaded into the Digital Platform by running Webloader with the following DataToLoad pipe SESSIONSINCLUDINGUNOPENED.
Note: This enhancement requires version 5.0.13.0.9914 of Sales Server or higher, and it is currently not compatible with Call Centre and Vista Web.
Security
-
We've changed our subscription flows to ensure that Subscriptions in the Vista Digital Platform are compliant with Strong Customer Authentication (SCA). To do this, we've deprecated an endpoint and replaced it with new flows.
We've deprecated the following endpoint for members to reactivate their frozen subscription with recurring billing:
POST ocapi/v1/members/current/subscriptions/current/reactivate
Now when a subscription member wants to reactivate their frozen membership, a new subscription order must be created, specifying the 'Reactivate' order action. After that, the existing subscription order completion flow can be used.
For details on the new flows and endpoints, see the documentation for the Digital Platform.
-
We've changed our subscription flows to ensure that Subscriptions in Vista Digital Platform are compliant with Strong Customer Authentication (SCA).
Previously the following endpoints would be used to set the payment card for a subscription with recurring billing:
- CreateEmbeddedMemberPaymentCard - POST ocapi/v1/members/current/payment-cards/embedded
- SetPrimaryMemberPaymentCard - PUT ocapi/v1/members/current/payment-cards/primary
We've deprecated the endpoint SetPrimaryMemberPaymentCard, and created the following endpoint which can be used to add or select a payment card for a subscription with recurring billing:
- CreateRecurringSubscriptionEmbeddedPaymentCard - POST ocapi/v1/members/current/subscriptions/recurring/payment-card/embedded
Note: The endpoint CreateEmbeddedMemberPaymentCard can continue to be used to add payment cards to a member's wallet regardless of whether the member has a subscription.
For details on the new flows and endpoints, see the documentation for the Digital Platform.
-
We've changed our subscription flows to ensure that Subscriptions in Vista Digital Platform are compliant with Strong Customer Authentication (SCA).
Previously the following endpoint would be used to set a member's future subscription (if they opted for recurring billing):
- SetFutureRecurringSubscription - POST ocapi/v1/members/current/subscriptions/future-recurring
We've deprecated this endpoint, and replaced it with the following endpoint to initiate creation of a future subscription with recurring billing, and add or select a payment card for that subscription:
- CreateFutureRecurringSubscriptionPaymentCard - POST ocapi/v1/members/current/subscriptions/future-recurring/payment-card/embedded
We've also created another endpoint to check the status of the future subscription creation:
- GetFutureRecurringSubscriptionCreation - GET ocapi/v1/members/current/subscriptions/future-recurring/creation
For details on the new flows and endpoints, see the documentation for the Digital Platform.
Improvements
Security
-
We've ensured that potentially sensitive Loyalty member information is secure during password resets.
Fixes
-
Initiating payment via Lumos Mobile no longer results in an error.
Data Integrity
-
The GetTicketPricesForShowtime endpoint no longer returns duplicate reward IDs when a recognition-restricted ticket discount is configured to be available for multiple ticket types.
-
Web Loader can now consistently handle the scheduling multiple marathons, and no duplicate film IDs are recorded in the database.
Financial
-
We've fixed an issue in which, if a customer ordered two package tickets and applied two different discounts, the first discount would override the second discounts preventing it being applied to the second ticket.
-
Showtime ticket price discounts are now displayed in dollars, as expected, rather than in cents.
-
When a request is sent to the OCAPI endpoint CreateFutureRecurringSubscriptionPaymentCard for a future recurring subscription, it now returns the billing amount with a valid value.
-
We've updated the Digital Platform so that retrying payments now works correctly on the Lumos-application Payment page.
Functionality
-
Member-restricted Discounts can no longer be applied to member-restricted tickets. Although use of this scenario is not encouraged, to avoid losing your configuration if you were using it, we've introduced a toggle setting, AllowLRDiscountOnLRTicket, to allow you to enable or disable this feature as required.
-
The DiscountValue field in the Digital Platform now returns the correct value from the GetDealItems endpoint for deals of the "Price Off" type.
-
The system now respects custom values for the Sales Server timeout for Web Loader, even when they're configured using scheduled task parameters.
-
We've fixed an issue that could result in incorrect displays of total spend or number of Loyalty points earned for individual transactions when customers viewed their transaction history.
-
The system now correctly processes refunds when a user initiates a matched refund and payment providers are configured for only specific clients. In this scenario, the Digital Platform now prioritises the payment provider for the calling client application, and then uses providers configured with a wild card client class value.
-
The Digital Platform no longer freezes on start-up when it can't reach Service Discover DNS resources.
-
The Vista Content Delivery Network now returns images as expected, ignoring any unavailable dimension metadata.
-
Adding concessions to an online order no longer results in a "Sorry, your request could not be processed right now" error message.
-
We've fixed an issue that allowed users to apply a loyalty-only discount to an order by using the discount ID, even when no loyalty member was logged in.
-
Validating a deal or payment voucher using the cinema defined in the NonTransactionalVoucherGiftCardCinemaId system setting, instead of the cinema defined in the order, no longer results in a validation error.
-
Redeeming a ticket voucher for a session which had unallocated seating no longer results in an error message stating that the VoucherAreaCategoryCode was not found.
-
The refund status now successfully updates the bookingFee node when calling the Digital Platform's OCAPI GetCompletedOrder endpoint is used to complete and refund an order.
-
The number of tickets is now calculated correctly and orders can be completed when customers purchase ticket packages that contain multiple tickets configured for sale only via POS.
-
When modifiers of the type Information Only are marked as sold out, there is now no effect on item availability, as expected. Items are unavailable only when Adjust Stock modifiers are sold out.
-
Barcodes now consistently appear in voucher and gift card confirmation emails, as expected.
-
We've fixed an issue that resulted in a Digital Platform-generated cookie sometimes causing websites integrated with the Digital Platform to display a 403 error.
-
The inSeatDelivery value of an item is now reflected in the allowedDevliveryMethods result of an API call, even when the item configured to have in-seat delivery is included in an item package.
-
Digital Platform-generated cookie refresh tokens can no longer be used after the cookie is deleted and expired.
-
All tax levels are now summed and returned correctly when the Modifier Price Type is set to Use Modifier Price and there are multiple levels of sales tax.
-
We've fixed an issue that allowed members to redeem their subscription tickets regardless of the status of their subscription, via the AddTicketRedemptionCard endpoint. Now, only members with active subscriptions can redeem their subscription tickets.
-
Adding an item with a modifier using the the V1 AddConcessions endpoint /RESTTicketing.svc/order/concessions, when a loyalty discount had been applied to the item, no longer results in an incorrect tax cents amount for the modifier in the response body.
- Completed orders now show the correct tax amount saved when a customer buys a package ticket that has a children's ticket with 0 sales tax.
-
OCAPI now accurately returns the payment status of failed split payments with the GetOrderCompletion endpoint, and the CreateEmbeddedPayment and CreateRedirectPayment endpoints correctly validate when the order payment is in a failed state.
-
Seat plan endpoints now always return wheelchair and companion seats.
-
The OData Sessions endpoint filters as expected with the OR condition.
-
If a concession item has the same modifier included in several of its modifier groups, you can now add this modifier to the order successfully.
-
We've fixed integration with Vista Notifier in earlier releases of 5.0.13.
-
Voucher-exclusive deals are now correctly applied to child items where the parent item has a deal configured.
-
Orders containing zero-value tickets can now be refunded via Call Centre.
-
Data saved while creating sessions in Cinema Manager (and during certain other sequences of events) is now correctly sent to the Digital Platform via Data Stream.
-
When patrons are ordering items in the Vista Web Gift Shop using embedded payments they can now change delivery methods.
Performance
-
Response times are now faster when receiving a large volume of requests from Redis.
-
We've fixed an issue with the order deserialiser to ensure orders made using Vista Web are now processed as expected.
-
System performance when ticket discounts have been configured is improved.
-
Member transactions returned from the Loyalty Member service now page consistently.
October 2023
Improvements
Security
-
We've ensured that potentially sensitive Loyalty member information is secure during password resets.
Fixes
Data Integrity
-
We've fixed an issue that prevented some marathon sessions from loading.
Functionality
-
Deal vouchers and payment vouchers linked to specific cinemas no longer produce validation errors in orders submitted for those cinemas.
-
Redeeming ticket vouchers for unallocated seating sessions no longer gives an error stating that the VoucherAreaCategoryCode was not found.
-
We've fixed an issue where an order could not be completed when purchasing ticket packages containing multiple tickets configured only for sale via POS.
-
Cookies generated by Digital Platform no longer cause integrated websites to display a 403 error.
-
Digital Platform's cookie refresh tokens can no longer be used after the associated cookie has been deleted or expired.
-
Multiple levels of sales taxes are now calculated and returned correctly on modifiers and smart modifiers.
-
Only members with active subscriptions can redeem subscription tickets via the AddTicketRedemptionCard endpoint.
-
The tax cents quantity returned by the V1 AddConcessions endpoint /RESTTicketing.svc/order/concessions is now correct when adding an item with a modifier that has a loyalty discount applied.
-
The OData Sessions endpoint now filters as expected with the OR condition.
-
If a concession item has the same modifier included in several of its modifier groups, you can now add this modifier to the order successfully.
Performance
-
We've improved the response time of Digital Platform when it's configured to use Redis and receives a large volume of requests.
Comments
0 comments
Article is closed for comments.