NebulaCRS 2026.3

NebulaCRS 2026.3

New Features/Changes

Zoho NumberModuleVersionDescriptionZoho Desk Number
CRS-I3345Interface2026.2.9214OXI – EFT reversal transaction code
Refund/reversal messages sent to Opera via OXI now use transactionCode="EFT" when the first deposit received on the reservation was an EFT payment type (DepositPaymentTypeID=6). All other reversals continue to use transactionCode="DEPOSIT".
#224508
CRS-I3344Booknow 2.02026.3.9227Exclude specific room types from date picker availability
A new "Exclude Room From Date Picker Availability" multi-select has been added to the site page in the Content Manager. Selected inventory types are excluded from the available room calculation used by the BookNow date picker, allowing, for example, internal Tour Guide room types to be hidden from public availability.
N/A
CRS-I3178Interface2026.3.9290OXI2WAY – Breakfast/meal plan service sync from Opera
The OXI2WAY interface can now receive services sent from Opera (e.g. breakfast) and match them to the corresponding service built in CRS. Unmatched services are silently ignored.
N/A
CRS-I3362Interface2026.3.9292DirectPMS – improved meal plan default logic on rate upload
When a DirectPMS rate upload message does not include or sends an unrecognised RatePlanLevelFee meal plan, the system now checks in order: (1) any existing Hotel Rate Code meal plan override is preserved; (2) the default meal plan on the rate code is used; (3) only if neither applies does it default to RO.
N/A
CRS-I3369Admin2026.3.9292SSO hti-session cookie SameSite configuration
Two new settings allow the hti-session SSO cookie's SameSite attribute to be configured for self-hosted customers: NebulaCRS.SameSite.Lax=Y or NebulaCRS.SameSite.None=Y. The None value was confirmed working for cross-domain SSO setups.
N/A
CRS-I3299Admin2026.3.9292Virtual Rooms
Enables component room logic by making CRS the Master of Availability.
Allows virtual rooms (e.g., a Family Room) to be linked to multiple child room types (e.g., double and twin rooms).
Automatically calculates virtual room inventory based on the lowest number of available linked child units.
Deducts inventory across both the virtual room and child rooms simultaneously, supporting allocations, inventory closeouts and limits, rate closeouts and restrictions and channels.
Virtual Room treated as normal room type in PMS.
*Not Supported in eRes.
N/A
CRS-I3305Admin2026.3.9299Promotional code character limit increased to 15
Rate restriction promotion code parameters have been increased from 10 to 15 characters across NebulaCRS, BookNow 2.0, Call Center, and eResAPI.
#221900
CRS-I3366Reports2026.3.9299Nationality Statistics by Source reports
Two new reports added: Nationality Statistics by Source Arrival Date and Nationality Statistics by Source Booking Date.
#225186
CRS-I3375Reports2026.3.9299Corporate Materialisation report
New Corporate Allocation Materialisation report added
N/A
CRS-I3358Interface2026.3.9299STAAH – contracted rates ignoring agent contract end date
Contracted rate codes on STAAH were uploading beyond the STAAH channel agent rate contract end date, unlike other interfaces (e.g. ConnectPush). Updated STAAH to validate against the contract end date. A secondary fix was required to prevent rate closeouts and restrictions from also being affected by the framework change.
CRS-I3386Reports2026.3.9312Services reports with agent/company name
Two new reports: Services by Agent and Services by Corporate, showing service bookings alongside the associated agent or company name.
#225025
CRS-I3399Reports2026.3.9312Auto Card Processing report – exclude cancelled reservations & filter by property
The Auto Card Processing report now excludes cancelled reservations and limits results to only properties where PCI Proxy is enabled, removing irrelevant multi-property itinerary entries.
N/A
CRS-I1849Call Center2026.3.9320Reports available in Call Center
Reports are now accessible directly within Call Center. The implementation supports all existing report types with improvements: user rights are still respected (the reports folder is hidden if "Run Reports" is off for a user group), property filtering is scoped to the user's assigned properties, and hidden items can be toggled intuitively.
#69488
CRS-I3382Call Center2026.3.9320Agent profile alerts now shown in Call Center
Alerts configured on agent profiles were not popping up in Call Center when an agent was selected on a reservation, unlike eRes.
#225066
CRS-I3294Call Center2026.3.9320Merge tag: property address country
A new merge tag for the arriving property's and itinerary's address country is now available for use in email templates.
N/A
CRS-I3337Booknow 2.02026.3.9320Corporate booker invitation email – customisable subject line
The subject line of the corporate booker invitation email can now be customised via the setting BookNow.CorporateBooker.InviteSubject.
N/A
CRS-I3420Interface2026.3.9362Google Hotel List Feed – include hotel brand attribute
The GoogleHPA hotel list feed XML now includes a client_attr name="hotel_brand" element populated from the brand configured on the NebulaCRS property, enabling hotel grouping in Google Hotel Center.
N/A


Defects Resolved

Zoho NumberModuleVersionDescriptionZoho Desk Number
CRS-I3354Interface2026.2.9192OTA-WS – Rates/Rate/Total incorrect for per-person sharing rates
The Total element inside Rates/Rate was sending only the half-per-person value instead of the full sharing total for per-person-per-night rate types. Added logic to distinguish between per-person and room rate calculations for daily totals and fixed the unit rate total which was also doubling.
N/A
CRS-I3350Interface2026.2.9192Null pointer in PMS monitor – service with no effective date
Reservations containing a service with no effective date (e.g. booked via eResAPI without a PriceEffectiveDate) caused a null pointer error in the PMS interface monitor. Fixed by defaulting to the itinerary arrival date. A separate null check was also added for cancelled reservation downloads.
N/A
CRS-I3376Interface2026.2.9192Date picker showing wrong date for non-UTC timezones
Guests browsing from timezones behind UTC (e.g. UTC−7) saw incorrect dates displayed in the date picker. Fixed timezone handling so the selected start and end dates are always displayed accurately regardless of the viewer's local timezone.
N/A
CRS-I3356eRes2026.2.9196Guest profiles not retrievable on eRes front-end
A missing IDType column error prevented guest profiles from loading on the eRes front-end following the passport/ID field changes.
N/A
CRS-I3357Call Center2026.2.9201Two overlapping allocations only showing one on density chart
When two allocation periods for the same agent/company overlapped the same dates, Call Center displayed only one allocation (often the one with 0 units), making rooms appear unavailable even when units remained. Fixed to sum all overlapping allocation periods correctly.
#224901
CRS-I3355Call Center2026.2.9201Cancellation history showing wrong user and channel
Reservation cancellations in Call Center incorrectly displayed the original booking creator instead of the user who performed the cancellation, and showed the channel as "API" instead of "Central Reservations." History logic updated to log the actual logged-in user and request channel at time of cancellation.
#224921
CRS-I3360Interface2026.2.9214eResAPI – ExtraServiceDetails not amending existing services
After the eResAPI migration from XMLBeans to JDom, specifying a UniqueID in ExtraServiceDetails during a reservation modification was cancelling and rebooking the service instead of amending the existing one. The ServiceID was not being read from the JDOM structure correctly; fixed to update the service in-place.
N/A
CRS-I3363Interface2026.3.9223GoogleHPA – incorrect timestamp timezone format
The Transaction timestamp in XML responses sent to Google HPA was missing the timezone offset (sent as "2026-07-16T12:53:55" instead of "2026-07-16T12:53:55+02:00"). Updated to include the correct UTC offset.
N/A
CRS-I3368Call Center2026.3.9223Special characters corrupting memo and service note fields
Copying text from emails containing special characters (e.g. em-dashes, typographic quotes) into Call Center memo or service note fields produced garbled text on save. Fixed by ensuring the cached InputStream is read as UTF-8.
#225366
CRS-I3367Interface2026.3.9243STAAH – agent OTA code mapping not applying to reservations
Agent mappings configured via the OTA code in STAAH channel connections were not being matched on reservation receipt, defaulting to the interface's default agent instead. Updated channel connections to store and match the OTA code correctly from the JSON reservation message.
N/A
CRS-I3373Interface2026.3.9292Expedia cancellations throwing null pointer on OXI/OXITwoWay
Credit-card-guaranteed Expedia reservations being cancelled via the ADS interface caused a null pointer error in CCUtils.getCardID when building the OXI/OXITwoWay cancel message. Added a null check; the cancellation message now sends with payment type Cash when the card code cannot be resolved.
N/A
CRS-I3372Interface2026.3.9292DirectPMS – deposit capture not queuing reservation modification
When "PMS Use Financial Transaction" was off, capturing a deposit via Call Center no longer automatically queued a PMS Message Pool entry for the reservation modification containing deposit details. Updated Nebula deposit logic to create the message pool entry as eRes does.
N/A
CRS-I3398Interface2026.3.9362Virtual rooms – correct availability logic across all ADS interfaces
All eRes and NebulaCRS ADS interfaces (ConnectPush, DirectPush, Booking.com, Expedia, Agoda, SiteMinder, eResAPI, HotelBeds) now use the vNeInventoryAvailability view for virtual room availability. Multiple issues were resolved: multi-unit reservations now reduce all linked room types correctly; inventory limits and holds are factored into the view's dynamic availability calculation; and the eResAPI BookIgnoreRQ now correctly releases held virtual room and linked room inventory.
#226118
CRS-I3422Interface2026.3.9362Rate availability message deleting restrictions on SynXisPMS & SiteConnect
When SynXisPMS sent a Restriction message followed by a Rate Rules Availability message for the same dates, the restriction (closeout) was deleted by the rate message. The same issue affected SiteConnect. Root cause was the PMS framework always processing restrictions and closeouts even when the interface receives them separately. Fixed the framework to not overwrite restrictions when they are managed independently.
N/A
CRS-I3418Interface2026.3.9362ConnectPush – null pointer causing reservation stuck in queue
A specific reservation received via ConnectPMS caused a null pointer exception when creating on the ConnectPush (Extraordinary) system, leaving it stuck in the waiting-for-response queue with no visible error. Logic issue identified and fixed.
#226374