Obtener Métodos de Entrega

Esta llamada permite obtener los métodos de entrega disponibles para una reserva específica en Colaborador. Es un paso esencial si los tickets requieren gestión de entrega, lo cual se indica en el catálogo de productos con la propiedad RequiresDeliveryManagement.

1. Método de Acceso

Parámetro

Descripción

URL (Versión por defecto 3.21)

{baseurl}/api/deliverymethods?PartnerId={partnerId}

URL (Versión 3.60)

{baseurl}/api/deliverymethods?PartnerId={partnerId}&api-version=3.60

Verbo HTTP

GET

Formato de Envío

application/json

 

2. Datos de Envío

Para obtener los métodos de entrega, se deben enviar los siguientes parámetros:

Campo

Descripción

PartnerId

Identificador único del colaborador.

ReservationId

Identificador de la reserva obtenida en el paso de Reserva de Productos.

api-version

Versión de la API a utilizar (por defecto 3.21).

 

3. Ejemplo de Petición

curl -X GET "{baseurl}/api/deliverymethods?PartnerId={partnerId}&ReservationId=zp83haxd5ucwn" \

     -H "Content-Type: application/json"

También puedes hacer la solicitud desde un navegador o Postman con la siguiente URL:

{baseurl}/api/deliverymethods?PartnerId={partnerId}&ReservationId=zp83haxd5ucwn

4. Estructura de la Respuesta

La API devuelve un array con los métodos de entrega disponibles. Dependiendo del Type, puede haber métodos de envíorecogida en un punto específico.

Campo

Descripción

Methods

Array con los métodos de entrega disponibles.

Id

Identificador único del método de entrega.

Name

Nombre del método de entrega.

Description

Descripción del método de entrega (opcional).

Type

Tipo de entrega: 0 = Envío1 = Recogida.

DeliveryPoints

Si Type = 1, contiene los puntos de recogida disponibles.

Success

true si la llamada fue exitosa.

Timestamp

Hora en la que se procesó la solicitud.

ErrorMessage

Mensaje de error en caso de falla.

ErrorCodes

Códigos de error, si los hay.

 

5. Ejemplo de Respuesta Exitosa

{

    "Methods": [

        {

            "Id": "hen3s1e7ao4ch",

            "Name": "Envío a domicilio",

            "Type": 0

        },

        {

            "Id": "stai6dbnn7xws",

            "Name": "Entrega en hotel",

            "Description": "Entrega en la recepción del hotel asociado.",

            "Type": 1,

            "DeliveryPoints": [

                {

                    "Id": "md8jo6fumzj56",

                    "Name": "Hotel Prueba",

                    "Address": "Carrer Botiguers, 1",

                    "City": "Paterna",

                    "ZipCode": "46019",

                    "Province": "Valencia",

                    "CountryCode": "es",

                    "PhoneNumber": "961345415",

                    "Email": "email@hotel.com"

                }

            ]

        }

    ],

    "Success": true,

    "Timestamp": "2025-02-05T15:30:00.000Z"

}

6. Ejemplo de Respuesta con Error

Si la ReservationId no es válida o no se requieren métodos de entrega, la API devolverá un mensaje de error:

{

    "Success": false,

    "ErrorMessage": "No se encontraron métodos de entrega para esta reserva.",

    "Timestamp": "2025-02-05T15:32:00.000Z"

}

7. Consideraciones Finales

  • Algunos tickets requieren un método de entrega obligatorio, lo cual debe verificarse en el catálogo de productos.
  • Si el método de entrega es recogida (Type = 1), se debe elegir un DeliveryPoint.
  • El Id del método de entrega debe incluirse en la transacción final.

Si no hay métodos de entrega disponibles, podría ser un error en la reserva o el producto podría no requerir gestión de entrega.

¿Te ha parecido útil este artículo?