Skip to content

Reserve products

This method allows the products added to the shopping cart to be reserved for a period of time.

Once the reservation has been confirmed, it is no longer possible to add more products to the cart.

Access method

POST /ShoppingCart/Confirm

Request structure

  • ShoppingCartId: (string) Required. Cart identifier.

Request examples

Examples
{
    "ShoppingCartId" : "j7gjproc9c6sw"
}

Response structure

  • ExpirationDateTime: (dateTime). Indicates when the reservation will expire. ISO 8601 format (yyyy-MM-ddThh:mm:ss.d).
  • Activities: (object). Information about the added activity.

    • Products: (list). List of added products.

      • ProductId: (string). Identifier of the added product.
      • CombinedProductId: (string). Identifier of the added combined product.
      • ProductName: (string). Name of the added product.
      • AccessDateTime: (dateTime). Access date and time. ISO 8601 format (yyyy-MM-ddThh:mm:ss.d).
      • Price: (decimal). Rate price.
      • PriceMode: (int). Price type.

        Possible values
        • 1: Retail price
        • 2: Net
      • Success: (boolean). Indicates whether the reservation was made successfully.

      • Tickets: (list). List of tickets that make up this product.
        • Ticket: (object). Ticket information.
          • TicketId: (string). Ticket identifier.
      • CancellationPolicy: (object). Indicates the cancellation policies that apply when cancelling this product.
        • IsRefundable: (boolean). Indicates whether free cancellation is available at any point.
        • Rules: (list). List of rules applied when cancelling.
          • Rule: Information about the rule to apply.
            • HoursInAdvanceOfAccess: (int). Number of hours in advance with respect to the access date from which the penalty indicated in Percentage will be applied.
            • Percentage: (decimal). Penalty percentage on the ticket price.
            • Amount: (decimal). Total penalty amount that will be applied.
            • FromInclusiveDateTime: (dateTime). Date/time from which this rule will apply.
            • ToExclusiveDateTime: (dateTime). Date/time until which this rule will apply.
  • Accommodations: (list). Information about accommodations/rooms added to the cart.

    • Accommodation: (object). Accommodation information.

      • ProductId: (string). Rate identifier.
      • ProductConditions: (string). Product conditions.
      • AccessDateTime: (dateTime). Check-in date.
      • AccessEndDateTime: (dateTime). Check-out date.
      • Quantity: (int). Quantity of units added.
      • Price: (decimal). Rate price.
      • PriceMode: (int). Price type.

        Possible values
        • 1: Retail price
        • 2: Net
      • Success: (boolean). Indicates whether the reservation was made successfully.

      • ErrorMessage: (boolean). In case of reservation error, associated message.
      • ChildrenAges: (list). List of the ages of babies/children.
        • int: Age of the baby/child.
      • NumberOfAdults: (int). Number of adults in this room.
      • NumberOfChildren: (int). Number of children in this room.
      • NumberOfSenior: (int). Number of seniors in this room.
      • NumberOfBabies: (int). Number of babies in this room.
      • NumberOfGeneric: (int). Number of undefined persons in this room.
      • CancellationPolicy: (object). Indicates the cancellation policies that apply when cancelling this product.
        • IsRefundable: (boolean). Indicates whether free cancellation is available at any point.
        • Rules: (list). List of rules applied when cancelling.
          • Rule: Information about the rule to apply.
            • HoursInAdvanceOfAccess: (int). Number of hours in advance with respect to the access date from which the penalty indicated in Percentage will be applied.
            • Percentage: (decimal). Penalty percentage on the ticket price.
            • Amount: (decimal). Total penalty amount that will be applied.
            • FromInclusiveDateTime: (dateTime). Date/time from which this rule will apply.
  • PaymentMethodsNotApplicable: (boolean). Indicates whether payment methods apply to this partner. Partners with a debit contract will need to apply payment methods (PaymentMethodsNotApplicable = false).

  • PaymentMethods: (list). Payment methods supported for the partner if working in debit mode.

    • PaymentMethod: (object). Information about the payment method.
      • Id: (string). Payment method identifier.
      • Type: (byte). Payment method type.
      • Name: (string). Payment method name.
      • CommercialName: (string) Optional. Commercial name of the payment method.
      • EnableSendByEmail: (boolean) Optional. Indicates whether this payment method can be used to automatically send a payment link by email.
      • Fields: (list). Array of fillable fields associated with the payment method. These fields can be specified when creating a transaction.
        • Id: (string). Field identifier.
        • Name: (string). Field name.
        • IsRequired: (boolean). Indicates whether the field is mandatory.
        • RegexValidation: (string) Optional. Regular expression that the field value must satisfy.
        • RegexValidationErrorMessage: (string) Optional. Error message to display if the regular expression is not satisfied.
        • DefaultValue: (string) Optional. Default field value to show to the user.
        • DataType: (byte). Indicates the data type required by the field value.

          Possible values
          • 0: Text
          • 1: Numeric
          • 2: Date
          • 3: Boolean
  • Success: (boolean). Value that indicates whether the call was processed correctly or not.

  • Errors: (list). Array of errors.
    • Error: (object).
      • ErrorMessage: (string). Error message explaining why the request was not successful. If it was correct, it will return null.
      • ErrorCode: (int). Code that identifies the error.
  • ErrorEntityBreakDown (list): list that contains objects with the name and ID in case of error.
    • Id (string): identifier
    • Name (string): related name of the identifier.

Response examples

Examples
{
    "Activities": {
        "Products": [
            {
                "ProductId": "yt1pgb1k61wdc",
                "ProductName": "Forfait Adulto + Alquiler snow 2 días ",
                "AccessDateTime": "2023-01-25T00:00:00",
                "Quantity": 1,
                "Price": 119.60,
                "PriceMode": 1,
                "Success": true,
                "Tickets": [
                    {
                        "TicketId": "na19qnrm8zh3e"
                    }
                ],
                "CancellationConditions": {
                    "IsRefundable": true,
                    "Rules": [
                        {
                            "Percentage": 100.000000000000,
                            "Amount": 119.60,
                            "FromInclusiveDateTime": "2023-01-22T00:00:00",
                            "HoursInAdvanceOfAccess": 72.000000000000
                        }
                    ]
                }
            }
        ]
    },
    "Accommodations": [
        {
            "ProductId": "gmw4uitqxsg91",
            "ProductConditions": "Reception is opened from 08:00 to 11:00 &  from 16:00 to 19:00 all week except Wednesday afternoon it is closed. If client has to arrive out of this hours, pls contact the hotel by phone  Importe total estimado de tasas y recargos para esta reserva:22.23 Euro pagaderas a la llegada.  Recogida de llaves 17:00-19:00.Hora de entrada 18:00-.Aparcamiento 8.00 EUR Por unidad/noche.Identificación a la llegada.Depósito a la llegada.",
            "AccessDateTime": "2023-01-25T00:00:00",
            "Quantity": 1,
            "Price": 273.0100,
            "PriceMode": 1,
            "Success": true,
            "ErrorMessage": "",
            "NumberOfAdults": 1,
            "NumberOfChildren": 0,
            "NumberOfSenior": 0,
            "NumberOfBabies": 0,
            "NumberOfGeneric": 0,
            "CancellationConditions": {
                "IsRefundable": true,
                "Rules": [
                    {
                        "Percentage": 100.0,
                        "Amount": 273.0100,
                        "FromInclusiveDateTime": "2023-01-22T00:00:00",
                        "HoursInAdvanceOfAccess": 72.0
                    }
                ]
            }
        },
        {
            "ProductId": "5msetyd6q4rqa",
            "ProductConditions": "Reception is opened from 08:00 to 11:00 &  from 16:00 to 19:00 all week except Wednesday afternoon it is closed. If client has to arrive out of this hours, pls contact the hotel by phone  Importe total estimado de tasas y recargos para esta reserva:22.23 Euro pagaderas a la llegada.  Recogida de llaves 17:00-19:00.Hora de entrada 18:00-.Aparcamiento 8.00 EUR Por unidad/noche.Identificación a la llegada.Depósito a la llegada.",
            "AccessDateTime": "2023-01-25T00:00:00",
            "Quantity": 1,
            "Price": 273.0100,
            "PriceMode": 1,
            "Success": true,
            "ErrorMessage": "",
            "ChildrenAges": [
                5
            ],
            "NumberOfAdults": 2,
            "NumberOfChildren": 1,
            "NumberOfSenior": 0,
            "NumberOfBabies": 0,
            "NumberOfGeneric": 0,
            "CancellationConditions": {
                "IsRefundable": true,
                "Rules": [
                    {
                        "Percentage": 100.0,
                        "Amount": 273.0100,
                        "FromInclusiveDateTime": "2023-01-22T00:00:00",
                        "HoursInAdvanceOfAccess": 72.0
                    }
                ]
            }
        }
    ],
    "ExpirationDateTime": "2023-01-13T01:19:16.067",
    "PaymentMethodsNotApplicable": false,
    "PaymentMethods": [
        {
            "Type": 1,
            "Name": "Tarjeta bancaria",
            "EnableSendByEmail": true
        },
        {
            "Type": 9,
            "Name": "TPV Externo",
            "EnableSendByEmail": false
        },
        {
            "Type": 13,
            "Name": "Bizum",
            "EnableSendByEmail": true
        },
        {
            "Type": 4,
            "Name": "Reserva online",
            "EnableSendByEmail": false
        }
    ],
    "Success": true
}

Additional HTTP headers

  • This call accepts an additional header to indicate the partner user who is performing the cart confirmation:
Header name Header value
AdminPartnerUserId AdminPartner user identifier