@vendit-dev/thirdparty-adapters 0.7.29 → 0.7.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -121,12 +121,15 @@ var getMealConditionText = function (_mealCondition) {
121
121
  function groupByRoomWithTotalCounts(roomAndRoomRateInformations, totalRoomCount) {
122
122
  var groupedRooms = Array(totalRoomCount).fill([]);
123
123
  return roomAndRoomRateInformations.reduce(function (acc, curr) {
124
- var RoomTypeCode = curr.RoomInformation.RoomTypeCode, RoomDate = curr.RoomRateInformation.RoomDate;
124
+ var RoomTypeCode = curr.RoomInformation.RoomTypeCode, RoomRateInformation = curr.RoomRateInformation;
125
+ var roomRateInformation = (0, tl_lincoln_types_1.makeArray)(RoomRateInformation);
125
126
  var existingRooms = acc.find(function (groupedRoom) {
126
127
  var _a, _b;
127
- return groupedRoom.length > 0
128
- && ((_b = (_a = groupedRoom[0]) === null || _a === void 0 ? void 0 : _a.RoomInformation) === null || _b === void 0 ? void 0 : _b.RoomTypeCode) === RoomTypeCode
129
- && !groupedRoom.some(function (room) { return room.RoomRateInformation.RoomDate === RoomDate; });
128
+ return groupedRoom.length > 0 &&
129
+ ((_b = (_a = groupedRoom[0]) === null || _a === void 0 ? void 0 : _a.RoomInformation) === null || _b === void 0 ? void 0 : _b.RoomTypeCode) === RoomTypeCode &&
130
+ !groupedRoom.some(function (room) {
131
+ return (0, tl_lincoln_types_1.makeArray)(room.RoomRateInformation).some(function (r) { return r.RoomDate === roomRateInformation[0].RoomDate; });
132
+ });
130
133
  });
131
134
  if (existingRooms) {
132
135
  existingRooms.push(curr);
@@ -199,61 +202,86 @@ function formatPhoneNumber(text) {
199
202
  return onlyNumberText;
200
203
  }
201
204
  var makePaymentInfo = function (_a) {
202
- var datas = _a.datas, basicInformation = _a.basicInformation, reservationType = _a.reservationType, OptionList = _a.OptionList, PointDiscountList = _a.PointDiscountList;
203
- var paymentInfo = datas.reduce(function (paymentInput, _a) {
204
- var _b, _c, _d, _e;
205
- var RoomInfo = _a.RoomInformation, RoomRateInformation = _a.RoomRateInformation;
206
- var roomAmount = (_b = RoomRateInformation === null || RoomRateInformation === void 0 ? void 0 : RoomRateInformation.TotalPerRoomRate) !== null && _b !== void 0 ? _b : (((RoomRateInformation === null || RoomRateInformation === void 0 ? void 0 : RoomRateInformation.PerMaleRate) || 0)
207
- * (RoomInfo.RoomPaxMaleCount || 0)
208
- + ((RoomRateInformation === null || RoomRateInformation === void 0 ? void 0 : RoomRateInformation.PerFemaleRate)
209
- || (RoomRateInformation === null || RoomRateInformation === void 0 ? void 0 : RoomRateInformation.PerMaleRate)
210
- || 0)
211
- * (RoomInfo.RoomPaxFemaleCount || 0)
212
- || 0);
213
- paymentInput.amount += roomAmount;
214
- (_c = paymentInput.segments) === null || _c === void 0 ? void 0 : _c.push({
215
- amount: roomAmount,
216
- servedAt: RoomRateInformation.RoomDate,
217
- referenceType: 'RESERVATION',
218
- referenceSubType: reservationType,
219
- });
220
- if (basicInformation.MealCondition !== 'Other'
221
- && basicInformation.MealCondition !== 'WithoutMeal') {
222
- paymentInput.amount += (RoomRateInformation === null || RoomRateInformation === void 0 ? void 0 : RoomRateInformation.TotalPerRoomServiceFee) || 0;
223
- (_d = paymentInput.segments) === null || _d === void 0 ? void 0 : _d.push({
224
- amount: (RoomRateInformation === null || RoomRateInformation === void 0 ? void 0 : RoomRateInformation.TotalPerRoomServiceFee) || 0,
225
- servedAt: RoomRateInformation.RoomDate,
226
- referenceType: 'SERVICE',
227
- referenceSubType: (0, exports.formattedNameForMealCondition)(basicInformation.MealCondition, basicInformation.SpecificMealCondition),
228
- });
229
- }
230
- if ((OptionList === null || OptionList === void 0 ? void 0 : OptionList.length) > 0) {
231
- (_e = paymentInput.segments) === null || _e === void 0 ? void 0 : _e.push.apply(_e, OptionList.map(function (option) { return ({
232
- amount: 0,
233
- servedAt: option.OptionDate,
234
- referenceType: 'SERVICE',
235
- referenceSubType: option.Name,
236
- }); }));
237
- }
238
- return Object.assign(paymentInput, {
205
+ var _b, _c, _d, _e, _f, _g, _h;
206
+ var datas = _a.datas, basicInformation = _a.basicInformation, reservationType = _a.reservationType, OptionList = _a.OptionList, PointDiscountList = _a.PointDiscountList, basicRateInformation = _a.basicRateInformation;
207
+ var paymentInfo = (basicRateInformation === null || basicRateInformation === void 0 ? void 0 : basicRateInformation.Payment) === 'Hotel Collect'
208
+ ? {
209
+ amount: basicRateInformation.TotalAccommodationCharge || 0,
210
+ commissionAmount: basicRateInformation.TotalAccommodationCommissionAmount || 0,
239
211
  reservationType: reservationType,
240
- type: 'platform',
241
- externalRoomTypeCode: datas[0].RoomInformation.NetRmTypeGroupCode,
242
- externalRoomTypeName: datas[0].RoomInformation.RoomTypeName,
243
- useStartAt: "".concat(datas[0].RoomRateInformation.RoomDate).concat((basicInformation === null || basicInformation === void 0 ? void 0 : basicInformation.CheckInTime)
212
+ segments: [],
213
+ externalRoomTypeCode: (_c = (_b = datas === null || datas === void 0 ? void 0 : datas[0]) === null || _b === void 0 ? void 0 : _b.RoomInformation) === null || _c === void 0 ? void 0 : _c.NetRmTypeGroupCode,
214
+ externalRoomTypeName: (_e = (_d = datas === null || datas === void 0 ? void 0 : datas[0]) === null || _d === void 0 ? void 0 : _d.RoomInformation) === null || _e === void 0 ? void 0 : _e.RoomTypeName,
215
+ useStartAt: "".concat((_h = (_g = (0, tl_lincoln_types_1.makeArray)((_f = datas === null || datas === void 0 ? void 0 : datas[0]) === null || _f === void 0 ? void 0 : _f.RoomRateInformation)) === null || _g === void 0 ? void 0 : _g[0]) === null || _h === void 0 ? void 0 : _h.RoomDate).concat((basicInformation === null || basicInformation === void 0 ? void 0 : basicInformation.CheckInTime)
244
216
  ? " ".concat(basicInformation === null || basicInformation === void 0 ? void 0 : basicInformation.CheckInTime)
245
217
  : ''),
218
+ }
219
+ : datas.reduce(function (paymentInput, _a) {
220
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k;
221
+ var RoomInfo = _a.RoomInformation, RoomRateInformation = _a.RoomRateInformation;
222
+ var roomRateInformations = (0, tl_lincoln_types_1.makeArray)(RoomRateInformation);
223
+ var roomAmount = roomRateInformations.reduce(function (acc, curr) {
224
+ return (acc +
225
+ (curr.TotalPerRoomRate ||
226
+ 0 ||
227
+ (curr.PerMaleRate || 0) * (RoomInfo.RoomPaxMaleCount || 0) +
228
+ (curr.PerFemaleRate || curr.PerMaleRate || 0) *
229
+ (RoomInfo.RoomPaxFemaleCount || 0) ||
230
+ 0));
231
+ }, 0);
232
+ paymentInput.amount += roomAmount;
233
+ for (var _i = 0, roomRateInformations_1 = roomRateInformations; _i < roomRateInformations_1.length; _i++) {
234
+ var roomRateInformation = roomRateInformations_1[_i];
235
+ if (roomRateInformation.TotalPerRoomRate) {
236
+ (_b = paymentInput.segments) === null || _b === void 0 ? void 0 : _b.push({
237
+ amount: roomRateInformation.TotalPerRoomRate,
238
+ servedAt: roomRateInformation.RoomDate,
239
+ referenceType: 'RESERVATION',
240
+ referenceSubType: reservationType,
241
+ });
242
+ }
243
+ }
244
+ if (basicInformation.MealCondition !== 'Other' &&
245
+ basicInformation.MealCondition !== 'WithoutMeal') {
246
+ for (var _l = 0, roomRateInformations_2 = roomRateInformations; _l < roomRateInformations_2.length; _l++) {
247
+ var roomRateInformation = roomRateInformations_2[_l];
248
+ paymentInput.amount +=
249
+ roomRateInformation.TotalPerRoomServiceFee || 0;
250
+ (_c = paymentInput.segments) === null || _c === void 0 ? void 0 : _c.push({
251
+ amount: roomRateInformation.TotalPerRoomServiceFee || 0,
252
+ servedAt: roomRateInformation.RoomDate,
253
+ referenceType: 'SERVICE',
254
+ referenceSubType: (0, exports.formattedNameForMealCondition)(basicInformation.MealCondition, basicInformation.SpecificMealCondition),
255
+ });
256
+ }
257
+ }
258
+ if ((OptionList === null || OptionList === void 0 ? void 0 : OptionList.length) > 0) {
259
+ (_d = paymentInput.segments) === null || _d === void 0 ? void 0 : _d.push.apply(_d, OptionList.map(function (option) { return ({
260
+ amount: 0,
261
+ servedAt: option.OptionDate,
262
+ referenceType: 'SERVICE',
263
+ referenceSubType: option.Name,
264
+ }); }));
265
+ }
266
+ return Object.assign(paymentInput, {
267
+ reservationType: reservationType,
268
+ type: 'platform',
269
+ externalRoomTypeCode: (_e = RoomInfo.NetRmTypeGroupCode) !== null && _e !== void 0 ? _e : (_g = (_f = datas[0]) === null || _f === void 0 ? void 0 : _f.RoomInformation) === null || _g === void 0 ? void 0 : _g.NetRmTypeGroupCode,
270
+ externalRoomTypeName: (_h = RoomInfo.RoomTypeName) !== null && _h !== void 0 ? _h : (_k = (_j = datas[0]) === null || _j === void 0 ? void 0 : _j.RoomInformation) === null || _k === void 0 ? void 0 : _k.RoomTypeName,
271
+ useStartAt: "".concat(roomRateInformations[0].RoomDate).concat((basicInformation === null || basicInformation === void 0 ? void 0 : basicInformation.CheckInTime)
272
+ ? " ".concat(basicInformation === null || basicInformation === void 0 ? void 0 : basicInformation.CheckInTime)
273
+ : ''),
274
+ });
275
+ }, {
276
+ amount: 0,
277
+ commissionAmount: 0,
278
+ reservationType: 'lodge',
279
+ segments: [],
280
+ externalRoomTypeCode: '',
281
+ externalRoomTypeName: '',
282
+ type: 'platform',
283
+ useStartAt: '',
246
284
  });
247
- }, {
248
- amount: 0,
249
- commissionAmount: 0,
250
- reservationType: 'lodge',
251
- segments: [],
252
- externalRoomTypeCode: '',
253
- externalRoomTypeName: '',
254
- type: 'platform',
255
- useStartAt: '',
256
- });
257
285
  if (PointDiscountList && (PointDiscountList === null || PointDiscountList === void 0 ? void 0 : PointDiscountList.length) > 0) {
258
286
  paymentInfo.amount -= PointDiscountList.reduce(function (acc, point) { return acc + point.PointsDiscount; }, 0);
259
287
  // auto segment 로 생성되도록 처리
@@ -298,9 +326,9 @@ var refineReservationData = function (infoTravelXML) {
298
326
  name: BasicInformation.GuestOrGroupNameKanjiName,
299
327
  email: Member === null || Member === void 0 ? void 0 : Member.UserMailAddr,
300
328
  reservedBy: SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName,
301
- memo: "".concat((Member === null || Member === void 0 ? void 0 : Member.UserKana)
302
- || (Member === null || Member === void 0 ? void 0 : Member.UserName)
303
- || "".concat(BasicInformation.GuestOrGroupNameKanjiName), " ").concat(BasicInformation === null || BasicInformation === void 0 ? void 0 : BasicInformation.PackagePlanName, "\n").concat((OtherInfo === null || OtherInfo === void 0 ? void 0 : OtherInfo.GuestRequest)
329
+ memo: "".concat((Member === null || Member === void 0 ? void 0 : Member.UserKana) ||
330
+ (Member === null || Member === void 0 ? void 0 : Member.UserName) ||
331
+ "".concat(BasicInformation.GuestOrGroupNameKanjiName), " ").concat(BasicInformation === null || BasicInformation === void 0 ? void 0 : BasicInformation.PackagePlanName, "\n").concat((OtherInfo === null || OtherInfo === void 0 ? void 0 : OtherInfo.GuestRequest)
304
332
  ? "[\uC694\uCCAD\uC0AC\uD56D]\n".concat(OtherInfo.GuestRequest)
305
333
  : '', "\n").concat((OtherInfo === null || OtherInfo === void 0 ? void 0 : OtherInfo.AdditionalInformation)
306
334
  ? "[\uCD94\uAC00\uC815\uBCF4]\n".concat(OtherInfo.AdditionalInformation)
@@ -319,21 +347,22 @@ var refineReservationData = function (infoTravelXML) {
319
347
  useStartAt: useStartAt,
320
348
  platform: tl_lincoln_ota_1.TL_LINCOLN_TO_VENDIT_OTA_MAP[(SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName) || 'ANONYMOUS'] || (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName),
321
349
  externalPlatformCode: SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCode,
322
- externalPlatformName: (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName)
323
- || (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeName),
350
+ externalPlatformName: (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName) ||
351
+ (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeName),
324
352
  },
325
353
  reservations: groupedRooms.map(function (key, index) {
326
354
  var _a, _b, _c, _d;
327
355
  var datas = groupedRooms[index];
328
356
  var roomsSortedByDate = datas.sort(function (a, b) {
329
- return new Date(a.RoomRateInformation.RoomDate).valueOf()
330
- - new Date(b.RoomRateInformation.RoomDate).valueOf();
357
+ return new Date((0, tl_lincoln_types_1.makeArray)(a.RoomRateInformation)[0].RoomDate).valueOf() -
358
+ new Date((0, tl_lincoln_types_1.makeArray)(b.RoomRateInformation)[0].RoomDate).valueOf();
331
359
  });
332
- var reservationType = Number(Allotment.UseDiv) === 1
333
- && BasicInformation.CheckInDate === BasicInformation.CheckOutDate
360
+ var reservationType = Number(Allotment.UseDiv) === 1 &&
361
+ BasicInformation.CheckInDate === BasicInformation.CheckOutDate
334
362
  ? 'rent'
335
363
  : 'lodge';
336
- var CheckInDate = roomsSortedByDate[0].RoomRateInformation.RoomDate;
364
+ var CheckInDate = (0, tl_lincoln_types_1.makeArray)(roomsSortedByDate[0].RoomRateInformation)[0]
365
+ .RoomDate;
337
366
  var CheckOutDate = (_a = (0, moment_1.default)(CheckInDate)
338
367
  .add(BasicInformation === null || BasicInformation === void 0 ? void 0 : BasicInformation.Nights, 'days')) === null || _a === void 0 ? void 0 : _a.format('YYYY-MM-DD');
339
368
  var OptionList = Option ? (0, tl_lincoln_types_1.makeArray)(Option) : [];
@@ -344,6 +373,7 @@ var refineReservationData = function (infoTravelXML) {
344
373
  reservationType: reservationType,
345
374
  OptionList: OptionList,
346
375
  PointDiscountList: PointDiscountList,
376
+ basicRateInformation: BasicRateInformation,
347
377
  });
348
378
  return {
349
379
  useStartAt: "".concat(CheckInDate).concat((BasicInformation === null || BasicInformation === void 0 ? void 0 : BasicInformation.CheckInTime)
@@ -353,19 +383,19 @@ var refineReservationData = function (infoTravelXML) {
353
383
  ? " ".concat(BasicInformation === null || BasicInformation === void 0 ? void 0 : BasicInformation.CheckOutTime)
354
384
  : ''),
355
385
  sleeps: isGroupReservation
356
- ? (BasicInformation.GrandTotalPaxCount || 0)
357
- / BasicInformation.TotalRoomCount
358
- || ((_b = datas[0].RoomInformation) === null || _b === void 0 ? void 0 : _b.PerRoomPaxCount)
386
+ ? (BasicInformation.GrandTotalPaxCount || 0) /
387
+ BasicInformation.TotalRoomCount ||
388
+ ((_b = datas[0].RoomInformation) === null || _b === void 0 ? void 0 : _b.PerRoomPaxCount)
359
389
  : (_d = (_c = roomsSortedByDate[0]) === null || _c === void 0 ? void 0 : _c.RoomInformation) === null || _d === void 0 ? void 0 : _d.PerRoomPaxCount,
360
390
  guestName: "".concat(BasicInformation.GuestOrGroupNameKanjiName ||
361
391
  BasicInformation.GuestOrGroupNameSingleByte ||
362
392
  'Anonymous').concat(isGroupReservation ? " ".concat(index + 1) : ''),
363
393
  externalPlatformCode: SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCode,
364
- externalPlatformName: (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName)
365
- || (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeName),
394
+ externalPlatformName: (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName) ||
395
+ (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeName),
366
396
  cmsOtaNumber: "".concat(BasicInformation.TravelAgencyBookingNumber).concat(isGroupReservation ? "v".concat(index + 1) : ''),
367
- cmsProductName: roomsSortedByDate[0].RoomInformation.RoomTypeName
368
- || BasicInformation.PackagePlanName,
397
+ cmsProductName: roomsSortedByDate[0].RoomInformation.RoomTypeName ||
398
+ BasicInformation.PackagePlanName,
369
399
  platform: tl_lincoln_ota_1.TL_LINCOLN_TO_VENDIT_OTA_MAP[(SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName) || 'ANONYMOUS'] || (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName),
370
400
  otaNumber: "".concat(tl_lincoln_ota_1.TL_LINCOLN_TO_VENDIT_OTA_MAP[(SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName) || 'ANONYMOUS'] || (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName), "|").concat("".concat(BasicInformation.TravelAgencyBookingNumber)),
371
401
  externalRoomTypeCode: roomsSortedByDate[0].RoomInformation.NetRmTypeGroupCode,
@@ -373,10 +403,10 @@ var refineReservationData = function (infoTravelXML) {
373
403
  type: reservationType,
374
404
  phone: formatPhoneNumber("".concat((Member === null || Member === void 0 ? void 0 : Member.UserTel) || Basic.PhoneNumber || '')),
375
405
  status: status,
376
- memoContent: "".concat((Member === null || Member === void 0 ? void 0 : Member.UserKana)
377
- || (Member === null || Member === void 0 ? void 0 : Member.UserName)
378
- || "".concat(BasicInformation.GuestOrGroupNameKanjiName), " ").concat(roomsSortedByDate[0].RoomInformation.RoomTypeName
379
- || BasicInformation.PackagePlanName, "\n").concat((OtherInfo === null || OtherInfo === void 0 ? void 0 : OtherInfo.GuestRequest)
406
+ memoContent: "".concat((Member === null || Member === void 0 ? void 0 : Member.UserKana) ||
407
+ (Member === null || Member === void 0 ? void 0 : Member.UserName) ||
408
+ "".concat(BasicInformation.GuestOrGroupNameKanjiName), " ").concat(roomsSortedByDate[0].RoomInformation.RoomTypeName ||
409
+ BasicInformation.PackagePlanName, "\n").concat((OtherInfo === null || OtherInfo === void 0 ? void 0 : OtherInfo.GuestRequest)
380
410
  ? "[\uC694\uCCAD\uC0AC\uD56D]\n".concat(OtherInfo.GuestRequest)
381
411
  : '', "\n").concat((OtherInfo === null || OtherInfo === void 0 ? void 0 : OtherInfo.AdditionalInformation)
382
412
  ? "[\uCD94\uAC00\uC815\uBCF4]\n".concat(OtherInfo.AdditionalInformation)
@@ -386,8 +416,8 @@ var refineReservationData = function (infoTravelXML) {
386
416
  paymentInfo: Object.assign(paymentInfo, !isFullyPaid && {
387
417
  amount: (DepositList === null || DepositList === void 0 ? void 0 : DepositList.reduce(function (acc, deposit) { return acc + ((deposit === null || deposit === void 0 ? void 0 : deposit.DepositAmount) || 0); }, 0)) || 0,
388
418
  isFullyPaid: false,
389
- outstandingAmount: paymentInfo.amount
390
- - ((DepositList === null || DepositList === void 0 ? void 0 : DepositList.reduce(function (acc, deposit) { return acc + ((deposit === null || deposit === void 0 ? void 0 : deposit.DepositAmount) || 0); }, 0)) || 0),
419
+ outstandingAmount: paymentInfo.amount -
420
+ ((DepositList === null || DepositList === void 0 ? void 0 : DepositList.reduce(function (acc, deposit) { return acc + ((deposit === null || deposit === void 0 ? void 0 : deposit.DepositAmount) || 0); }, 0)) || 0),
391
421
  }),
392
422
  };
393
423
  }),
@@ -228,7 +228,7 @@ export interface RoomAndRoomRateInformation {
228
228
  PlanGroupCode?: string | number;
229
229
  RepresentativePersonName?: string;
230
230
  };
231
- RoomRateInformation: RoomRateInformation & {
231
+ RoomRateInformation: SingleOrArray<RoomRateInformation & {
232
232
  PerMaleRate?: number;
233
233
  PerFemaleRate?: number;
234
234
  RoomRatePaxMaleCount?: number;
@@ -243,7 +243,7 @@ export interface RoomAndRoomRateInformation {
243
243
  RoomRateChildB50Request?: string;
244
244
  RoomRateChildC30Request?: string;
245
245
  RoomRateChildDNoneRequest?: string;
246
- };
246
+ }>;
247
247
  GuestInformation?: GuestInformation;
248
248
  }
249
249
  export interface RoomRateInformation {
@@ -293,7 +293,7 @@ export interface RoomAndGuestInformation {
293
293
  }
294
294
  export interface RoomAndGuestList {
295
295
  RoomInformation: RoomInformation;
296
- RoomRateInformation: RoomRateInformation;
296
+ RoomRateInformation: SingleOrArray<RoomRateInformation>;
297
297
  GuestInformation?: GuestInformation;
298
298
  }
299
299
  export interface GuestInformation {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vendit-dev/thirdparty-adapters",
3
- "version": "0.7.29",
3
+ "version": "0.7.31",
4
4
  "description": "Third party adapters between v-cloud and other PMS/CMS providers.",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -0,0 +1,90 @@
1
+ [
2
+ {
3
+ "type": "CREATED",
4
+ "externalId": "1123291933",
5
+ "externalRevision": "1",
6
+ "guestOrGroupInfo": {
7
+ "isGroupReservation": false,
8
+ "name": "Chihyung Li",
9
+ "reservedBy": "Expedia",
10
+ "memo": "Chihyung Li Room Only(1-2名)(SellRate)\n[요청사항]\n[Bedding type]2 Twin Beds [Smoking/Non-smoking]Non-Smoking [Payment instructions]Hotel Collect Booking Collect Payment From Guest. [Payment instructions]Hotel Collect Booking credit card cannot be sent through this channel. Please refer to EPC.\n[추가정보]\n[PromoName]MinLos,MinLos,MinLos,MinLos,MinLos,MinLos\n성인 2명\n[결제정보]\n지불수단: Hotel Collect\n\n수수료율: 정보 없음\n수수료 총액: 정보 없음\n[할인정보]\n",
11
+ "status": "reserved",
12
+ "phone": "0007091047109",
13
+ "useExpireAt": "2025-09-04",
14
+ "useStartAt": "2025-08-29",
15
+ "platform": "EXPEDIA",
16
+ "externalPlatformCode": 52,
17
+ "externalPlatformName": "Expedia"
18
+ },
19
+ "reservations": [
20
+ {
21
+ "useStartAt": "2025-08-29",
22
+ "useExpireAt": "2025-09-04",
23
+ "sleeps": 2,
24
+ "guestName": "Chihyung Li",
25
+ "externalPlatformCode": 52,
26
+ "externalPlatformName": "Expedia",
27
+ "cmsOtaNumber": "2262724972",
28
+ "cmsProductName": "Twin Room, Non Smoking",
29
+ "platform": "EXPEDIA",
30
+ "otaNumber": "EXPEDIA|2262724972",
31
+ "externalRoomTypeCode": 4,
32
+ "externalRoomTypeName": "Twin Room, Non Smoking",
33
+ "type": "lodge",
34
+ "phone": "0007091047109",
35
+ "status": "RESERVED",
36
+ "memoContent": "Chihyung Li Twin Room, Non Smoking\n[요청사항]\n[Bedding type]2 Twin Beds [Smoking/Non-smoking]Non-Smoking [Payment instructions]Hotel Collect Booking Collect Payment From Guest. [Payment instructions]Hotel Collect Booking credit card cannot be sent through this channel. Please refer to EPC.\n[추가정보]\n[PromoName]MinLos,MinLos,MinLos,MinLos,MinLos,MinLos\n[인원정보]\n성인 2명\n",
37
+ "paymentInfo": {
38
+ "amount": 0,
39
+ "commissionAmount": 0,
40
+ "reservationType": "lodge",
41
+ "segments": [
42
+ {
43
+ "amount": 149571,
44
+ "servedAt": "2025-08-29",
45
+ "referenceType": "RESERVATION",
46
+ "referenceSubType": "lodge"
47
+ },
48
+ {
49
+ "amount": 149571,
50
+ "servedAt": "2025-08-30",
51
+ "referenceType": "RESERVATION",
52
+ "referenceSubType": "lodge"
53
+ },
54
+ {
55
+ "amount": 91613,
56
+ "servedAt": "2025-08-31",
57
+ "referenceType": "RESERVATION",
58
+ "referenceSubType": "lodge"
59
+ },
60
+ {
61
+ "amount": 91613,
62
+ "servedAt": "2025-09-01",
63
+ "referenceType": "RESERVATION",
64
+ "referenceSubType": "lodge"
65
+ },
66
+ {
67
+ "amount": 91613,
68
+ "servedAt": "2025-09-02",
69
+ "referenceType": "RESERVATION",
70
+ "referenceSubType": "lodge"
71
+ },
72
+ {
73
+ "amount": 91613,
74
+ "servedAt": "2025-09-03",
75
+ "referenceType": "RESERVATION",
76
+ "referenceSubType": "lodge"
77
+ }
78
+ ],
79
+ "externalRoomTypeCode": 4,
80
+ "externalRoomTypeName": "Twin Room, Non Smoking",
81
+ "type": "platform",
82
+ "useStartAt": "2025-08-29",
83
+ "isFullyPaid": false,
84
+ "outstandingAmount": 665594
85
+ }
86
+ }
87
+ ],
88
+ "rawData": "{\"?xml\":\"\",\"AllotmentBookingReport\":{\"TransactionType\":{\"DataFrom\":\"FromTravelAgency\",\"DataClassification\":\"NewBookReport\",\"DataID\":\"1123291933-1\",\"SystemDate\":\"2025-08-07\"},\"AccommodationInformation\":{\"AccommodationName\":\"K-POP HOTEL SEOUL STATION\",\"AccommodationCode\":8460576},\"SalesOfficeInformation\":{\"SalesOfficeCompanyName\":\"Expedia\",\"SalesOfficeName\":\"A-Hotels.com\",\"SalesOfficeCode\":52},\"BasicInformation\":{\"TravelAgencyBookingNumber\":2262724972,\"TravelAgencyBookingDate\":\"2025-08-07\",\"TravelAgencyBookingTime\":\"22:38:38\",\"TravelAgencyReportNumber\":1113,\"GuestOrGroupNameSingleByte\":\"Chihyung Li\",\"GuestOrGroupNameKanjiName\":\"Chihyung Li\",\"CheckInDate\":\"2025-08-29\",\"CheckOutDate\":\"2025-09-04\",\"Nights\":6,\"TotalRoomCount\":1,\"GrandTotalPaxCount\":2,\"TotalPaxMaleCount\":2,\"TotalChildA70Count\":0,\"TotalChildB50Count\":0,\"TotalChildC30Count\":0,\"TotalChildDNoneCount\":0,\"PackagePlanName\":\"Room Only(1-2名)(SellRate)\",\"PackagePlanCode\":207397920,\"MealCondition\":\"Other\",\"SpecificMealCondition\":\"None Specified\",\"OtherServiceInformation\":\"Payment:Hotel Collect\\n[Bedding type]2 Twin Beds [Smoking/Non-smoking]Non-Smoking [Payment instructions]Hotel Collect Booking Collect Payment From Guest. [Payment instructions]Hotel Collect Booking credit card cannot be sent through this channel. Please refer to EPC.\\n[PromoName]MinLos,MinLos,MinLos,MinLos,MinLos,MinLos\"},\"BasicRateInformation\":{\"RoomRateOrPersonalRate\":\"RoomRate\",\"TaxServiceFee\":\"IncludingServiceAndTax\",\"Payment\":\"Hotel Collect\",\"TotalAccommodationCharge\":665594},\"RoomAndGuestInformation\":{\"RoomAndGuestList\":[{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0},\"RoomRateInformation\":{\"RoomDate\":\"2025-08-29\",\"TotalPerRoomRate\":149571}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0},\"RoomRateInformation\":{\"RoomDate\":\"2025-08-30\",\"TotalPerRoomRate\":149571}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0},\"RoomRateInformation\":{\"RoomDate\":\"2025-08-31\",\"TotalPerRoomRate\":91613}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0},\"RoomRateInformation\":{\"RoomDate\":\"2025-09-01\",\"TotalPerRoomRate\":91613}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0},\"RoomRateInformation\":{\"RoomDate\":\"2025-09-02\",\"TotalPerRoomRate\":91613}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0},\"RoomRateInformation\":{\"RoomDate\":\"2025-09-03\",\"TotalPerRoomRate\":91613}}]},\"RisaplsInformation\":{\"RisaplsCommonInformation\":{\"Basic\":{\"SalesOfficeCompanyCode\":47,\"TelegramDiv\":\"\",\"RisaplsDataID\":\"\",\"RisaplsTelegramNumber\":\"\",\"TelegramData\":\"NewBook Expedia SNT-NET 08-07 22:38 (47)\\nBooking No.: 2262724972 NO.00001113 K-POP HOTEL SEOUL STATION(8460576)\\nGuest:\\n Chihyung Li TEL:0-0-07091047109\\n Chihyung Li\\n Mail:2791bi85wm@m.expediapartnercentral.com\\n\\nRate Name:Room Only(1-2名)(SellRate)(207397920)\\nCheck-In:2025.08.29 6night incl. service charge and taxes\\nTransportaion: Check-in time:\\nNo. of Guests: 2Person Details:(Adults)2Person\\nNo. of Rooms : 1Room\\n08.29 200723118- 1Room (Twin Room, Non Smoking) 149,571KRW\\n Adults 2Person\\n08.30 200723118- 1Room (Twin Room, Non Smoking) 149,571KRW\\n Adults 2Person\\n08.31 200723118- 1Room (Twin Room, Non Smoking) 91,613KRW\\n Adults 2Person\\n09.01 200723118- 1Room (Twin Room, Non Smoking) 91,613KRW\\n Adults 2Person\\n09.02 200723118- 1Room (Twin Room, Non Smoking) 91,613KRW\\n Adults 2Person\\n09.03 200723118- 1Room (Twin Room, Non Smoking) 91,613KRW\\n Adults 2Person\\n Accommodation cost : 665,594KRW\\n\\n Total Cost : 665,594KRW\\n ----------------------------------------------------------------\\nPayment :Hotel Collect\\n\\nRemarks:\\n[Bedding type]2 Twin Beds [Smoking/Non-smoking]Non-Smoking [Payment instructions]Hotel Collect Booking Collect Payment From Guest. [Payment instructions]Hotel Collect Booking credit card cannot be sent through this channel. Please refer to EPC.\\n[PromoName]MinLos,MinLos,MinLos,MinLos,MinLos,MinLos\\n\\nSales channels:\\nA-Hotels.com(47) TEL\\n\\n[source]A-Hotels.com\\n---\",\"PhoneNumber\":\"0-0-07091047109\",\"Email\":\"2791bi85wm@m.expediapartnercentral.com\",\"TotalPaxManCount\":2,\"Version\":2,\"AccommodationId\":\"W54781\"},\"Allotment\":{\"AssignDiv\":0,\"GenderDiv\":0,\"HandleDiv\":1,\"RsvUserDiv\":0,\"UseDiv\":0},\"RoomAndRoomRateInformation\":[{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0,\"RoomTypeAgent\":47,\"RoomFrame\":\"--\",\"NetRmTypeGroupCode\":4,\"PlanGroupCode\":2},\"RoomRateInformation\":{\"RoomDate\":\"2025-08-29\",\"TotalPerRoomRate\":149571,\"RoomRatePaxMaleCount\":2,\"RoomRatePaxFemaleCount\":0,\"RoomRateChildA70Count\":0,\"RoomRateChildB50Count\":0,\"RoomRateChildC30Count\":0,\"RoomRateChildDNoneCount\":0}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0,\"RoomTypeAgent\":47,\"RoomFrame\":\"--\",\"NetRmTypeGroupCode\":4,\"PlanGroupCode\":2},\"RoomRateInformation\":{\"RoomDate\":\"2025-08-30\",\"TotalPerRoomRate\":149571,\"RoomRatePaxMaleCount\":2,\"RoomRatePaxFemaleCount\":0,\"RoomRateChildA70Count\":0,\"RoomRateChildB50Count\":0,\"RoomRateChildC30Count\":0,\"RoomRateChildDNoneCount\":0}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0,\"RoomTypeAgent\":47,\"RoomFrame\":\"--\",\"NetRmTypeGroupCode\":4,\"PlanGroupCode\":2},\"RoomRateInformation\":{\"RoomDate\":\"2025-08-31\",\"TotalPerRoomRate\":91613,\"RoomRatePaxMaleCount\":2,\"RoomRatePaxFemaleCount\":0,\"RoomRateChildA70Count\":0,\"RoomRateChildB50Count\":0,\"RoomRateChildC30Count\":0,\"RoomRateChildDNoneCount\":0}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0,\"RoomTypeAgent\":47,\"RoomFrame\":\"--\",\"NetRmTypeGroupCode\":4,\"PlanGroupCode\":2},\"RoomRateInformation\":{\"RoomDate\":\"2025-09-01\",\"TotalPerRoomRate\":91613,\"RoomRatePaxMaleCount\":2,\"RoomRatePaxFemaleCount\":0,\"RoomRateChildA70Count\":0,\"RoomRateChildB50Count\":0,\"RoomRateChildC30Count\":0,\"RoomRateChildDNoneCount\":0}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0,\"RoomTypeAgent\":47,\"RoomFrame\":\"--\",\"NetRmTypeGroupCode\":4,\"PlanGroupCode\":2},\"RoomRateInformation\":{\"RoomDate\":\"2025-09-02\",\"TotalPerRoomRate\":91613,\"RoomRatePaxMaleCount\":2,\"RoomRatePaxFemaleCount\":0,\"RoomRateChildA70Count\":0,\"RoomRateChildB50Count\":0,\"RoomRateChildC30Count\":0,\"RoomRateChildDNoneCount\":0}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0,\"RoomTypeAgent\":47,\"RoomFrame\":\"--\",\"NetRmTypeGroupCode\":4,\"PlanGroupCode\":2},\"RoomRateInformation\":{\"RoomDate\":\"2025-09-03\",\"TotalPerRoomRate\":91613,\"RoomRatePaxMaleCount\":2,\"RoomRatePaxFemaleCount\":0,\"RoomRateChildA70Count\":0,\"RoomRateChildB50Count\":0,\"RoomRateChildC30Count\":0,\"RoomRateChildDNoneCount\":0}}],\"OtherInfo\":{\"GuestRequest\":\"[Bedding type]2 Twin Beds [Smoking/Non-smoking]Non-Smoking [Payment instructions]Hotel Collect Booking Collect Payment From Guest. [Payment instructions]Hotel Collect Booking credit card cannot be sent through this channel. Please refer to EPC.\",\"AdditionalInformation\":\"[PromoName]MinLos,MinLos,MinLos,MinLos,MinLos,MinLos\"}}}}}"
89
+ }
90
+ ]
package/test.json ADDED
@@ -0,0 +1,52 @@
1
+ [
2
+ {
3
+ "type": "CREATED",
4
+ "externalId": "1123291933",
5
+ "externalRevision": "1",
6
+ "guestOrGroupInfo": {
7
+ "isGroupReservation": false,
8
+ "name": "Chihyung Li",
9
+ "reservedBy": "Expedia",
10
+ "memo": "Chihyung Li Room Only(1-2名)(SellRate)\n[요청사항]\n[Bedding type]2 Twin Beds [Smoking/Non-smoking]Non-Smoking [Payment instructions]Hotel Collect Booking Collect Payment From Guest. [Payment instructions]Hotel Collect Booking credit card cannot be sent through this channel. Please refer to EPC.\n[추가정보]\n[PromoName]MinLos,MinLos,MinLos,MinLos,MinLos,MinLos\n성인 2명\n[결제정보]\n지불수단: Hotel Collect\n\n수수료율: 정보 없음\n수수료 총액: 정보 없음\n[할인정보]\n",
11
+ "status": "reserved",
12
+ "phone": "0007091047109",
13
+ "useExpireAt": "2025-09-04",
14
+ "useStartAt": "2025-08-29",
15
+ "platform": "EXPEDIA",
16
+ "externalPlatformCode": 52,
17
+ "externalPlatformName": "Expedia"
18
+ },
19
+ "reservations": [
20
+ {
21
+ "useStartAt": "2025-08-29",
22
+ "useExpireAt": "2025-09-04",
23
+ "sleeps": 2,
24
+ "guestName": "Chihyung Li",
25
+ "externalPlatformCode": 52,
26
+ "externalPlatformName": "Expedia",
27
+ "cmsOtaNumber": "2262724972",
28
+ "cmsProductName": "Twin Room, Non Smoking",
29
+ "platform": "EXPEDIA",
30
+ "otaNumber": "EXPEDIA|2262724972",
31
+ "externalRoomTypeCode": 4,
32
+ "externalRoomTypeName": "Twin Room, Non Smoking",
33
+ "type": "lodge",
34
+ "phone": "0007091047109",
35
+ "status": "RESERVED",
36
+ "memoContent": "Chihyung Li Twin Room, Non Smoking\n[요청사항]\n[Bedding type]2 Twin Beds [Smoking/Non-smoking]Non-Smoking [Payment instructions]Hotel Collect Booking Collect Payment From Guest. [Payment instructions]Hotel Collect Booking credit card cannot be sent through this channel. Please refer to EPC.\n[추가정보]\n[PromoName]MinLos,MinLos,MinLos,MinLos,MinLos,MinLos\n[인원정보]\n성인 2명\n",
37
+ "paymentInfo": {
38
+ "amount": 0,
39
+ "commissionAmount": 0,
40
+ "reservationType": "lodge",
41
+ "segments": [],
42
+ "externalRoomTypeCode": 4,
43
+ "externalRoomTypeName": "Twin Room, Non Smoking",
44
+ "useStartAt": "2025-08-29",
45
+ "isFullyPaid": false,
46
+ "outstandingAmount": 665594
47
+ }
48
+ }
49
+ ],
50
+ "rawData": "{\"?xml\":\"\",\"AllotmentBookingReport\":{\"TransactionType\":{\"DataFrom\":\"FromTravelAgency\",\"DataClassification\":\"NewBookReport\",\"DataID\":\"1123291933-1\",\"SystemDate\":\"2025-08-07\"},\"AccommodationInformation\":{\"AccommodationName\":\"K-POP HOTEL SEOUL STATION\",\"AccommodationCode\":8460576},\"SalesOfficeInformation\":{\"SalesOfficeCompanyName\":\"Expedia\",\"SalesOfficeName\":\"A-Hotels.com\",\"SalesOfficeCode\":52},\"BasicInformation\":{\"TravelAgencyBookingNumber\":2262724972,\"TravelAgencyBookingDate\":\"2025-08-07\",\"TravelAgencyBookingTime\":\"22:38:38\",\"TravelAgencyReportNumber\":1113,\"GuestOrGroupNameSingleByte\":\"Chihyung Li\",\"GuestOrGroupNameKanjiName\":\"Chihyung Li\",\"CheckInDate\":\"2025-08-29\",\"CheckOutDate\":\"2025-09-04\",\"Nights\":6,\"TotalRoomCount\":1,\"GrandTotalPaxCount\":2,\"TotalPaxMaleCount\":2,\"TotalChildA70Count\":0,\"TotalChildB50Count\":0,\"TotalChildC30Count\":0,\"TotalChildDNoneCount\":0,\"PackagePlanName\":\"Room Only(1-2名)(SellRate)\",\"PackagePlanCode\":207397920,\"MealCondition\":\"Other\",\"SpecificMealCondition\":\"None Specified\",\"OtherServiceInformation\":\"Payment:Hotel Collect\\n[Bedding type]2 Twin Beds [Smoking/Non-smoking]Non-Smoking [Payment instructions]Hotel Collect Booking Collect Payment From Guest. [Payment instructions]Hotel Collect Booking credit card cannot be sent through this channel. Please refer to EPC.\\n[PromoName]MinLos,MinLos,MinLos,MinLos,MinLos,MinLos\"},\"BasicRateInformation\":{\"RoomRateOrPersonalRate\":\"RoomRate\",\"TaxServiceFee\":\"IncludingServiceAndTax\",\"Payment\":\"Hotel Collect\",\"TotalAccommodationCharge\":665594},\"RoomAndGuestInformation\":{\"RoomAndGuestList\":[{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0},\"RoomRateInformation\":{\"RoomDate\":\"2025-08-29\",\"TotalPerRoomRate\":149571}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0},\"RoomRateInformation\":{\"RoomDate\":\"2025-08-30\",\"TotalPerRoomRate\":149571}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0},\"RoomRateInformation\":{\"RoomDate\":\"2025-08-31\",\"TotalPerRoomRate\":91613}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0},\"RoomRateInformation\":{\"RoomDate\":\"2025-09-01\",\"TotalPerRoomRate\":91613}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0},\"RoomRateInformation\":{\"RoomDate\":\"2025-09-02\",\"TotalPerRoomRate\":91613}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0},\"RoomRateInformation\":{\"RoomDate\":\"2025-09-03\",\"TotalPerRoomRate\":91613}}]},\"RisaplsInformation\":{\"RisaplsCommonInformation\":{\"Basic\":{\"SalesOfficeCompanyCode\":47,\"TelegramDiv\":\"\",\"RisaplsDataID\":\"\",\"RisaplsTelegramNumber\":\"\",\"TelegramData\":\"NewBook Expedia SNT-NET 08-07 22:38 (47)\\nBooking No.: 2262724972 NO.00001113 K-POP HOTEL SEOUL STATION(8460576)\\nGuest:\\n Chihyung Li TEL:0-0-07091047109\\n Chihyung Li\\n Mail:2791bi85wm@m.expediapartnercentral.com\\n\\nRate Name:Room Only(1-2名)(SellRate)(207397920)\\nCheck-In:2025.08.29 6night incl. service charge and taxes\\nTransportaion: Check-in time:\\nNo. of Guests: 2Person Details:(Adults)2Person\\nNo. of Rooms : 1Room\\n08.29 200723118- 1Room (Twin Room, Non Smoking) 149,571KRW\\n Adults 2Person\\n08.30 200723118- 1Room (Twin Room, Non Smoking) 149,571KRW\\n Adults 2Person\\n08.31 200723118- 1Room (Twin Room, Non Smoking) 91,613KRW\\n Adults 2Person\\n09.01 200723118- 1Room (Twin Room, Non Smoking) 91,613KRW\\n Adults 2Person\\n09.02 200723118- 1Room (Twin Room, Non Smoking) 91,613KRW\\n Adults 2Person\\n09.03 200723118- 1Room (Twin Room, Non Smoking) 91,613KRW\\n Adults 2Person\\n Accommodation cost : 665,594KRW\\n\\n Total Cost : 665,594KRW\\n ----------------------------------------------------------------\\nPayment :Hotel Collect\\n\\nRemarks:\\n[Bedding type]2 Twin Beds [Smoking/Non-smoking]Non-Smoking [Payment instructions]Hotel Collect Booking Collect Payment From Guest. [Payment instructions]Hotel Collect Booking credit card cannot be sent through this channel. Please refer to EPC.\\n[PromoName]MinLos,MinLos,MinLos,MinLos,MinLos,MinLos\\n\\nSales channels:\\nA-Hotels.com(47) TEL\\n\\n[source]A-Hotels.com\\n---\",\"PhoneNumber\":\"0-0-07091047109\",\"Email\":\"2791bi85wm@m.expediapartnercentral.com\",\"TotalPaxManCount\":2,\"Version\":2,\"AccommodationId\":\"W54781\"},\"Allotment\":{\"AssignDiv\":0,\"GenderDiv\":0,\"HandleDiv\":1,\"RsvUserDiv\":0,\"UseDiv\":0},\"RoomAndRoomRateInformation\":[{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0,\"RoomTypeAgent\":47,\"RoomFrame\":\"--\",\"NetRmTypeGroupCode\":4,\"PlanGroupCode\":2},\"RoomRateInformation\":{\"RoomDate\":\"2025-08-29\",\"TotalPerRoomRate\":149571,\"RoomRatePaxMaleCount\":2,\"RoomRatePaxFemaleCount\":0,\"RoomRateChildA70Count\":0,\"RoomRateChildB50Count\":0,\"RoomRateChildC30Count\":0,\"RoomRateChildDNoneCount\":0}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0,\"RoomTypeAgent\":47,\"RoomFrame\":\"--\",\"NetRmTypeGroupCode\":4,\"PlanGroupCode\":2},\"RoomRateInformation\":{\"RoomDate\":\"2025-08-30\",\"TotalPerRoomRate\":149571,\"RoomRatePaxMaleCount\":2,\"RoomRatePaxFemaleCount\":0,\"RoomRateChildA70Count\":0,\"RoomRateChildB50Count\":0,\"RoomRateChildC30Count\":0,\"RoomRateChildDNoneCount\":0}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0,\"RoomTypeAgent\":47,\"RoomFrame\":\"--\",\"NetRmTypeGroupCode\":4,\"PlanGroupCode\":2},\"RoomRateInformation\":{\"RoomDate\":\"2025-08-31\",\"TotalPerRoomRate\":91613,\"RoomRatePaxMaleCount\":2,\"RoomRatePaxFemaleCount\":0,\"RoomRateChildA70Count\":0,\"RoomRateChildB50Count\":0,\"RoomRateChildC30Count\":0,\"RoomRateChildDNoneCount\":0}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0,\"RoomTypeAgent\":47,\"RoomFrame\":\"--\",\"NetRmTypeGroupCode\":4,\"PlanGroupCode\":2},\"RoomRateInformation\":{\"RoomDate\":\"2025-09-01\",\"TotalPerRoomRate\":91613,\"RoomRatePaxMaleCount\":2,\"RoomRatePaxFemaleCount\":0,\"RoomRateChildA70Count\":0,\"RoomRateChildB50Count\":0,\"RoomRateChildC30Count\":0,\"RoomRateChildDNoneCount\":0}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0,\"RoomTypeAgent\":47,\"RoomFrame\":\"--\",\"NetRmTypeGroupCode\":4,\"PlanGroupCode\":2},\"RoomRateInformation\":{\"RoomDate\":\"2025-09-02\",\"TotalPerRoomRate\":91613,\"RoomRatePaxMaleCount\":2,\"RoomRatePaxFemaleCount\":0,\"RoomRateChildA70Count\":0,\"RoomRateChildB50Count\":0,\"RoomRateChildC30Count\":0,\"RoomRateChildDNoneCount\":0}},{\"RoomInformation\":{\"RoomTypeCode\":200723118,\"RoomTypeName\":\"Twin Room, Non Smoking\",\"PerRoomPaxCount\":2,\"RoomPaxMaleCount\":2,\"RoomPaxFemaleCount\":0,\"RoomChildA70Count\":0,\"RoomChildB50Count\":0,\"RoomChildC30Count\":0,\"RoomChildDNoneCount\":0,\"RoomTypeAgent\":47,\"RoomFrame\":\"--\",\"NetRmTypeGroupCode\":4,\"PlanGroupCode\":2},\"RoomRateInformation\":{\"RoomDate\":\"2025-09-03\",\"TotalPerRoomRate\":91613,\"RoomRatePaxMaleCount\":2,\"RoomRatePaxFemaleCount\":0,\"RoomRateChildA70Count\":0,\"RoomRateChildB50Count\":0,\"RoomRateChildC30Count\":0,\"RoomRateChildDNoneCount\":0}}],\"OtherInfo\":{\"GuestRequest\":\"[Bedding type]2 Twin Beds [Smoking/Non-smoking]Non-Smoking [Payment instructions]Hotel Collect Booking Collect Payment From Guest. [Payment instructions]Hotel Collect Booking credit card cannot be sent through this channel. Please refer to EPC.\",\"AdditionalInformation\":\"[PromoName]MinLos,MinLos,MinLos,MinLos,MinLos,MinLos\"}}}}}"
51
+ }
52
+ ]