Toll

Ejemplo 3 – Descuento en el peaje mediante pago automático

Algunas estaciones de peaje ofrecen un porcentaje de descuento a los usuarios que utilizan métodos de pago automáticos, conocidos como TAG o TelePeaje.

En Brasil, este porcentaje es del 5% y sólo está disponible en algunos concesionarios que ofrecen el servicio. Este porcentaje puede variar en otros países. En Argentina, por ejemplo, el concesionario Caminos del Río Uruguay ofrece un 15% de descuento a los usuarios que utilicen el tag, o TelePeaje.

En el siguiente ejemplo, tenemos una ruta con un solo camión de dos ejes que pasa por el peaje de Parapuã, en Brasil, que ofrece un descuento del 5%.

{
    "calculationMode": "THE_FASTEST",
    "points": [
        {
            "siteId": "p1-before829",
            "latitude": -21.839539778137308,
            "longitude": -50.72464998254153
        },
        {
            "siteId": "p2-afterid829",
            "latitude": -21.845671861785434,
            "longitude": -50.717879778340304
        }
    ],
    "toll": {
        "vehicleType": "TRUCK_WITH_TWO_DOUBLE_AXLES"
    }    
}

Como en los ejemplos anteriores, tollCosts muestra el valor total de los peajes en toda la ruta. En cada tramo se devolverá un objeto tollCalculation que contiene un objeto tolls con los valores e información de cada peaje del tramo correspondiente, y legTotalCost que muestra el valor total de los peajes de ese tramo. También se devolverá el campo vehicleType, que indica el vehículo utilizado en ese tramo.

Dentro de cada objeto en tolls tendremos la información de cada peaje. Con las siguientes diferencias:

  • price – Precio normal del peaje, sin el descuento TAG;
  • conditions – Array con todos los valores condicionales del peaje. En el caso de este ejemplo, tenemos la siguiente información:
    • billingsType – Tipo de peaje. Valores posibles: [NORMAL, TAG];
    • value – Valor del acondicionador de peaje en moneda local.

En el caso de este ejemplo, el valor que debe tenerse en cuenta para obtener el descuento TAG será el valor de value en conditions, y no el que se devuelve en el precio.

Aquí está la respuesta completa al ejemplo:

{
    "id": "6580831a4d0aa15a056e8f30",
    "clientId": "maplink",
    "totalDistance": 989,
    "totalNominalDuration": 44,
    "averageSpeed": 80.00,
    "tollCosts": 20.00,
    "legs": [
        {
            "distance": 988,
            "nominalDuration": 44,
            "averageSpeed": 80.0,
            "points": "vohdCvcrtHbA{AnEwGhCmDfBgCrCsEz@cApAsA~BkBrBiArD}B",
            "tollCalculation": {
                "tolls": [
                    {
                        "id": "829",
                        "name": "Pedágio - Parapuã",
                        "address": "SP294, KM551+500",
                        "city": "Parapuã",
                        "state": {
                            "name": "São Paulo",
                            "code": "SP"
                        },
                        "country": "Brasil",
                        "concession": "Eixo-SP",
                        "direction": "EAST",
                        "coordinates": {
                            "latitude": -21.841946,
                            "longitude": -50.721171
                        },
                        "serviceTypes": [
                            {
                                "serviceId": "792",
                                "name": "Via Facil"
                            },
                            {
                                "serviceId": "35352945515000103",
                                "name": "ANTTCODE"
                            }
                        ],
                        "price": 20.00,
                        "conditions": [
                            {
                                "billingsType": [
                                    "TAG"
                                ],
                                "value": 19.00
                            }
                        ]
                    }
                ],
                "legTotalCost": 20.00,
                "vehicleType": "TRUCK_WITH_TWO_DOUBLE_AXLES"
            }
        }
    ],
    "source": "MAPLINK"
}