Skip to main content

Recreatex documentation

Recreatex 6.0.0

What's new

Security

Supporting full encryption of all Recreatex passwords, for optimal security

Supporting multiple administrator accounts to manage passwords

Loyalty

Intersolve gateway -  enables GANTNER to dynamically configure and test Intersolve compatible cards. Our customers benefit from a faster turn-around to support Intersolve compatible loyalty cards.

Priopass - Support for the Priopass loyalty pass

UiTPAS – support for Mia tarrifs + integration with activities in web shop

Direct debit (Incasso)

Supporting freeze of direct debit period, and more flexible direct debit reversals

Web shop

Key usability improvements for online bookings

  • The flow has been adjusted for end users, so they can easily search based on activity, location or simply create a quick booking.

  • In addition, users can now easily consult the activity agenda to make their booking, as all information is condensed on a single page

Create online bookings as a contact for an organization or company (impersonation)

Key performance improvements for online ticketing, exhibitions and lessons

Detailed information

This topic contains more detailed information about certain new features in this version:

Priopass integration

The new integration of the Priopass makes it possible to scan a Priopass at a Recreatex POS. Based on the validity of the Priopass a ticket will be printed in Recreatex. A license is needed to use this new functionality.

Priopass configuration
  • Create a card definition of the type Priopass in Sydadmin > Management > Devices > Card definitions. Make sure the settings are configured correctly.

rn6000_clip0002.png
  • Configure all parameters in Recreatex in POS > parameters > tab Priopass.

rn6000_clip0004.png
  • Create a payment method Priopass in General > Settings > Finances > Payment methods.

rn6000_clip0005.png
Priopass use

When scanning a  Priopass on the POS, it will be displayed if the card is valid and a ticket can be printed.

rn6000_clip0006.png
Priopass reports

To print a report of all Priopass registrations, go to POS > Reports > Report Priopass-registrations.

rn6000_clip0021.png
Loyalty Gateway

Intersolve is a provider of several loyalty cards (Museumkaart, Rotterdampas, …)

A new Loyalty gateway has been created in order to:

  • improve the stability between Recreatex and the Intersolve system.

  • make it easier to configure new Intersolve cards in the future.

Instead of the locally installed Liab service, Recreatex will now communicate directly with the Intersolve web service.

Warning

Customers already using one or more of the Intersolve cards will have to make changes to the configuration in Recreatex to make sure the validation of the cards works after an update to 6.0.0

The Intersolve configuration has been simplified and bundled in these locations:

  • in Sydadmin > Management > Devices > Card definitions (see dropdown box)

  • in General > Parameters > Tab Intersolve

  • in General > Basic data > Articles > Articles > Article card > Tab Intersolve

  • in General > Settings > Finances > Payment methods (field for Intersolve)

Details about configuration can be found in the manual Intersolve: Configuration & Use within Recreatex. The use of the cards itself has not changed.

rn6000_clip0007.png
rn6000_clip0008.png
Web shop facility booking usability improvements

In the web shop the flow and visualisations to create a facility booking have been optimized.

This new functionality can be enabled with a manager setting.

rn6000_clip0009.png

Note

To make full use of the new flow, please make sure you have configured images on all activities, Locations and types.

When working with direct linking, make sure to change to the new URL:

Old flow URL : http://webshop....be/Reservations/Overview?id=...

New flow URL : http://webshop....be/Bookings/Overview?id=...

In the new flow you can start from:

  • the Activity

  • the location

  • a type

  • or create a quick booking

rn6000_clip0010.png
rn6000_clip0011.png

All three flows will eventually lead the user to a colour coded calendar view only showing the places where the selected activity can take place. The colours of this calendar view can be changed in the web shop manager. When the check box Allow activity colours for occupied hours is enabled, the colours from the activity as configured in Recreatex will be used. When disabled, all bookings get the colour configured in the Manager under Colour occupied Hours.

rn6000_clip0012.png

In the day view time slots can be selected by clicking and dragging.

rn6000_clip0013.png

In the week and month view you can click on a day to go to the day view of that particular day.

rn6000_clip0014.png
Web shop impersonation

Within Recreatex it was already possible to create a facility booking for an organisation or company and link the contact person of the organisation. It is now also possible for a contact person to make such a facility booking through the web shop.

A contact person for a company or organisation can be created in three ways:

  • in Recreatex itself

  • on the web shop with the account of the organisation

  • on the web shop with a contact person login of the organisation that has “administrator” privileges

Contact person log in process

A contact person can be linked to an existing address or not.

rn6000_clip0015.png

To make sure the contact can log into the web shop, the Show on Website setting for the contact needs to be enabled.

rn6000_clip0016.png

If the contact person is linked to an existing address, the credentials of the existing address need to be used. The moment that this user logs in he/she will get the choice to log in for the individual account or as a contact person of the organisation. If the contact person is not linked to an individual account, the credentials of the contact person itself need to be used.

rn6000_clip0017.png
Configuring the rights of a contact person

The contact person can only see the modules for which (s)he has privileges (letting/booking/exhibitions/ticketing). If the contact person is configured as an administrator (s)he will be able to change the address and other fields of the organisation and will be able to edit or add other contacts.

rn6000_clip0018.png
rn6000_clip0022.png
How it looks on the web shop

When you’re logged in with the contact person you will be able to see additional info in the My Profile menu (depending on the configuration of the contact).

rn6000_clip0019.png

It is possible to switch between the individual account and the contact accounts. When there are already items in the basket, you get a warning that the basket will be cleared (as it is possible that a booking for the individual and for the organisation have different prices)

rn6000_clip0020.png
Recreatex API
Recreatex Platform and API versions will be released in sync

From Recreatex 6.0.0.0 onwards, the Recreatex API will be linked with the Recreatex core version.

Why this change?

  • To reduce the number of possibilities combining Recreatex core+ Recreatex API + Recreatex Web/mobile apps, to combinations with Recreatex core/API vs Recreatex Web/Mobile apps.

  • To simplify integration, development and testing.

  • To reduce errors in the field through the reduction of combinations to test.

What does it mean practically?

  • The Recreatex API will get a 6.0 version instead of a 4.0 version.

  • The Recreatex API  will get a separate installer, instead of being bundled with the Recreatex Web installer.

Better backwards compatibility

If we perform a major or minor update to our WSDL, we change the version number in the WSDL namespace. This requires integrators to update/test their integration, even though their existing calls might still be backwards compatible. From 6.0 onwards, we removed the reference to the version number in the namespace, enabling better compatibility.

Example of namespace < 6.0

http://www.recreatex.be/webshop/v3.8/

Example of namespace >= 6.0

http://www.recreatex.be/webshop/

The current version of the API can still be discovered within the documentation tag of the IWebShop contract definition:

Sample:

<wsdl:portType msc:usingSession="false" name="IWebShop">

    <wsdl:documentation>

        <summary>

            ReCreateX Web Shop Web Services (Contract version 4.0)

        </summary>

    </wsdl:documentation>

The version number can be retrieved programmatically, calling GetCurrentWsdlVersion.

Standards compliance (W3C)

In order to be fully W3C compliant with our WSDL, we have to support all messages as wrapped messages

This ensures better transparency for integration and interoperability with an enterprise service bus (ESB)

Sample (before):

<wsdl:message name="ListCountriesRequest">

<wsdl:part name="Context" element="tns:Context"/>

<wsdl:part name="ListCountriesSearchCriteria" element="tns:ListCountriesSearchCriteria"/>

</wsdl:message>

<wsdl:message name="ListCountriesResponse">

<wsdl:part name="Result" element="tns:Result"/>

</wsdl:message>

Sample (after):

<wsdl:message name="ListCountriesRequest">

<wsdl:part name="parameters" element="tns:ListCountriesRequest"/>

</wsdl:message>

<wsdl:message name="ListCountriesResponse">

<wsdl:part name="parameters" element="tns:ListCountriesResponse"/>

</wsdl:message>

API’s need to be verified for breaking changes

  • All references to the "xxxSpecified" properties need to be removed.

  • All string type references (actually Guids) for API objects need to be replaced by Guid references.

  • All Color values now actually use the System.Drawing.Color object (instead of a new Color object)

Automated API tests

We have introduced automated API testing in order to reduce the chance of error with method calls, parameter passing and underlying queries.

Flexible logging

We have introduced more flexible API logging, which can be configured at runtime to enable more or less logging as needed.

Following new functionality

  • Define where to output the logging to

  • database/table to log to ( Webshop manager database by default)

  • Switch from SQL to log4net logging

  • Enable/change logging for specific methods on the fly

  • Disable logging of large requests/responses and define boundary of large message

  • Define which type of requests are logged or not

  • SOAP/WCF requests

  • JSON requests

  • Images, docs need to be logged or not

API call changes

Method

Summary

FindExpositions

Renamed property MaxVisitorsPerPeriodWeb to MaxVisitorsPerPeriod

GetPointOfSales

New property added to PointOfSale

(ExpositionCustomerMandatory)

ListLockedBasketItems

New parameter added to ExpositionPeriodReservation

(AutomaticArticleSales)

FindSubscriptionArticles

New parameter added to SubscriptionArticle

(AllowMultiplePurchasesSubscriptions)

GetPointOfSales

New property added to PointOfSale

(MustPrintCashReport)

GetSalesHeaderReceiptPrintData

New property added to GetSalesHeaderReceiptCriteria

(PrintAccessTickets )

GetCreditSalesByDivisionCard

New property added to SalesItem

(PriceGroup)

FindLessonGroupComments

Removed property MustMatchDate in LessonGroupCommentSearchCriteria

Added property Includes in LessonGroupCommentSearchCriteria

( Includes (of type LessonGroupCommentIncludes), Current, Previous)

License validation

The license will only be fetched once per day now instead of for every API call

GetPersonLLVInfoByLessonGroup

Parameter changed from Guid to Guid?

(LessonGroupId)

LockBasketItems

New property added to CultureEventReservation

(TraderId)

FindCultureReservations

New property added to CultureReservation

(CultureSeriesId)

ListStudentFollowScores

Replaced fields Norm1 to Norm30 by list of NormScore objects in StudentFollowScore

(NormScores)

FindPersonContacts

Added search criteria and expanded the result obect

Criteria:IncludeRelations

Result object:Relations

FindAccessZones

New property added to AccessZoneOccupancy

(VisitorsCurrent)

SaveCrmLog

Added new enum member "DirectDebit" to the enum "CRMLogType"

FindExpositions

New property added to Exposition

(AllowOverbooking)

FindArticles

New property added to Article

(UitpasEventId)

FindActivities

New property added to Activity

(UitpasEventId)

StartNewShift

New property added to StartNewShiftResponse

(SalesShiftId)

CheckOutBasket

New properties added to ArticleSale

(§UitpasPrice, UitpasNumber, UitpasPriceGroup)

CheckOutBasket

New property added to ArticleSalesItem

(UitpasPaymentError)

CheckOutBasket

New property added to ArticleSalesItem

(IsMembership)

FindPerson

New properties added to ClubInfo

(Info11, Info12, Info13, Info14, Info15)

FindReasons

New include added to ReasonSearchCriteria

(ReasonIncludes)

FindReasons

New properties added to Reason

(CancelCostSensitive

, CancelCostAmount)

FindReservations

New properties added to Reservation

(Contact, SubsidyInfo)

FindReservations

New properties added to ReservationIncludes

(Contact, SubsidyInfo)

UpdatePlaceReservation

New property added to PlaceReservation

( SubsidyInfoID)

CreatePersonAndLinkCards

New property added to CreatePersonAndLinkCardsCriteria

(ArticleId)

FindSales

New properties added to FindSalesCriteria

(OnlinePaymentOrderId, OrderNumber)

FindETicket

New property added to ETicket

(OnlinePaymentOrderId)

FindArticles

New property added to Article

(Vat)

FindArticles

New property added to ArticleIncludes

(Vat)

FindInfoPlayLogs

New property added to InfoPlayLog

(IsValidEntry)

ListLessonGroups

New property added to LessonGroup

(MaxAllowedStudents)

API calls added

Method

Summary

FindInfoPlayLogs

New service method for getting the subscription logs for info play. This is a lightweight version of the call FindSubscriptionLogs.

GetCashReport

New method to receive the cash report of a shift

FindPersonLlvTransferHistories

New method to receive the LLV transfer histories without the need to perform the FindPerson method

FindPersonLlvCurrentLessonGroups

New method to receive the LLV lesson groups for a specific person without the need to perform the FindPerson method

GetDirectDebitParameters

GetCurrentDivision

New method

GetHallAllocations

New function GetHallAllocations.

(This bundles GetSeatAllocatoins and GetSiteAllocations.)

ListStudentFollowScoresAll

New method to load both the current and previous scores for a lesson group and day

FindContactRelations

New method to load all persons linked to a contact

SearchUitpasTariff

New method to find the tariff for a combination of an UiTPAS-Number and an UiTPAS-EventID

BuyUitpasEvent

New method to process the payment linked with an UiTPAS. Is implemented in the CheckOutBasket.

FindSubsidyInfos

New method to search for subsidy infos

FindAvailablePlacesForReservationActivities

New method added to load all available places for an reservation activity