Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Nhà phát triển ở Khu vực kinh tế Châu Âu (EEA)
Khi tính toán một tuyến đường hoặc ma trận tuyến đường, bạn có thể muốn xem xét mọi khoản phí cầu đường trên tuyến đường đó.
Đối với một số thành phố, bạn có thể tính phí cầu đường ước tính cho một tuyến đường bằng đơn vị tiền tệ phù hợp.
Để biết danh sách các vị trí có thu phí được hỗ trợ, hãy xem thông tin tham khảo về TollPass.
Cách tính phí cầu đường
Routes API tính phí cầu đường ước tính, có tính đến mọi chiết khấu hoặc thẻ thông hành có sẵn cho người lái xe hoặc phương tiện, cũng như các phương thức thanh toán thuận tiện nhất.
Nếu không có giá cầu đường cho một tuyến đường nhất định, thì Routes API sẽ cho biết có phí cầu đường nhưng không xác định được mức phí.
Để nhận được thông tin ước tính chính xác về phí cầu đường, hãy nhớ cung cấp những thông tin sau trong yêu cầu của bạn:
Loại khí thải của xe được dùng cho tuyến đường (VehicleEmissionType). Nếu không cung cấp loại khí thải, thì phí cầu đường cho xe chạy bằng xăng sẽ được trả về.
Tất cả thẻ thu phí mà xe và người lái xe có bằng cách sử dụng (TollPass). API sử dụng thẻ thu phí để xác định chính xác phí cầu đường và trả về giá tiền mặt khi thẻ thu phí trong yêu cầu không phải là thẻ địa phương của tuyến đường.
Chỉ định tránh trạm thu phí (nếu cần). Nếu bạn muốn tránh đường thu phí khi có thể, hãy thêm avoidTolls làm RouteModifier.
Tính phí cầu đường bằng thẻ thu phí
Để tính phí cầu đường bằng thẻ thu phí, bạn chỉ định mọi thẻ thu phí trong yêu cầu. Sau đó, API sẽ trả về giá của thẻ và vé.
Nếu bạn chỉ định một thẻ thu phí không hợp lệ, thẻ đó sẽ bị bỏ qua.
Nếu bạn chỉ định nhiều thẻ thu phí dưới dạng một mảng, API sẽ cố gắng tính giá cho tuyến đường của từng thẻ.
Cách hoạt động của thẻ thu phí có thể khác nhau tuỳ theo khu vực.
Mức phí có thể thấp hơn nếu bạn có thẻ thu phí: Ở một số khu vực, người lái xe hoặc xe có thẻ thu phí sẽ trả một mức phí cầu đường khác với những người không có thẻ.
Ví dụ: nếu có thẻ thu phí Good To Go! ở Seattle, Washington, Hoa Kỳ, bạn sẽ trả phí thấp hơn so với khi không có thẻ.
Một số đường có thể yêu cầu thẻ thu phí: Một số khu vực, chẳng hạn như Indonesia, có những con đường yêu cầu thẻ thu phí. Nếu bạn không chỉ định thẻ thu phí cho một tuyến đường bắt buộc phải có thẻ thu phí, thì API sẽ không trả về giá thu phí.
Tính phí cầu đường cho một tuyến đường
Ví dụ sau đây sử dụng phương thức computeRoutes để trả về thông tin về phí cầu đường kèm theo mức giá ước tính khi sử dụng thẻ thu phí. Trong ví dụ này, bạn:
Đặt trường mảng extraComputations thành TOLLS để bật tính năng tính toán thông tin về phí cầu đường.
Chỉ định loại xe và loại thẻ thu phí bằng cách sử dụng trường routeModifiers của yêu cầu. Giá cầu đường được trả về dựa trên mức giá mà loại xe và thẻ đã chỉ định sử dụng. Nếu bạn chỉ định nhiều thẻ và vé, thì giá rẻ nhất sẽ được trả về.
Sử dụng mặt nạ trường phản hồi để định cấu hình phương thức trả về thông tin về phí cầu đường trong phản hồi. Trong ví dụ này, yêu cầu bao gồm các thuộc tính sau trong mặt nạ trường phản hồi:
trường routes.travelAdvisory.tollInfo để trả về thông tin cho toàn bộ tuyến đường.
routes.legs.travelAdvisory.tollInfo để trả về thông tin cho từng chặng.
Phản hồi này chứa thông tin về phí cầu đường trong đối tượng TollInfo (REST) hoặc TollInfo (gRPC). Trong ví dụ này, bạn sẽ trả về thông tin về phí cầu đường cho toàn bộ tuyến đường và cho từng chặng của tuyến đường.
[null,null,["Cập nhật lần gần đây nhất: 2025-08-10 UTC."],[[["\u003cp\u003eThe Routes API can calculate estimated toll fees for routes in select cities, taking into account toll discounts, passes, and payment methods.\u003c/p\u003e\n"],["\u003cp\u003eTo get accurate toll estimates, specify the vehicle's emission type, any applicable toll passes, and whether to avoid tolls using RouteModifiers.\u003c/p\u003e\n"],["\u003cp\u003eToll pass usage can result in lower rates or may be required for certain roads, with the API attempting to calculate prices based on provided passes.\u003c/p\u003e\n"],["\u003cp\u003eRequests calculating tolls are billed at a higher rate, and the returned \u003ccode\u003eestimatedPrice\u003c/code\u003e applies to non-commercial vehicles, potentially differing for commercial ones.\u003c/p\u003e\n"],["\u003cp\u003eToll information can be obtained by setting \u003ccode\u003eextraComputations\u003c/code\u003e to \u003ccode\u003eTOLLS\u003c/code\u003e, specifying vehicle and toll pass details in \u003ccode\u003erouteModifiers\u003c/code\u003e, and using a response field mask to include tollInfo in the output.\u003c/p\u003e\n"]]],["The Routes API can compute estimated toll fees for routes, considering toll discounts and payment methods. Accurate toll calculations require specifying vehicle emission type and applicable toll passes. The API returns cash prices if no passes are specified. Toll passes can offer lower rates or be mandatory in some regions. To get toll information, include \"TOLLS\" in `extraComputations` and specify toll passes in `routeModifiers`. The API then returns the toll prices in the response, which may vary by the requested toll passes.\n"],null,["# Calculate toll fees for a route\n\n**European Economic Area (EEA) developers** If your billing address is in the European Economic Area, effective on 8 July 2025, the [Google Maps Platform EEA Terms of Service](https://cloud.google.com/terms/maps-platform/eea) will apply to your use of the Services. Functionality varies by region. [Learn more](/maps/comms/eea/faq).\n\nWhen you are computing a route or a route matrix,\nyou might want to take into consideration any toll fees on the route.\nFor select cities, you can compute the estimated\ntoll fee for a route in the appropriate currency.\n\nTo get tolls for a route matrix, see\n[Calculate tolls fees for a route matrix](/maps/documentation/routes/calculate_toll-rm).\n\nFor the list of supported toll locations, see the reference for\n[TollPass](/maps/documentation/routes/reference/rest/v2/RouteModifiers#tollpass).\n| **Caution:** Requests that calculate toll fees are billed at a higher rate. [Learn more about billing](/maps/documentation/routes/usage-and-billing) for the Routes API.\n\nHow tolls are calculated\n------------------------\n\nThe Routes API calculates the estimated toll fee,\ntaking into consideration any toll price discounts or passes available\nto the driver or vehicle, and the most convenient payment methods.\nIf there is no available toll price for a given route,\nthe Routes API indicates the existence of a toll\nwith an unknown fee.\n| **Note** : The Routes API calculates tolls on a route differently than Google Maps:\n|\n| - The Routes API returns only the toll prices (pass or cash) that would actually be charged for the trip, assuming your request accurately represents what types of passes each driver and/or vehicle has. If you don't specify any toll passes, the API returns the cash prices, which is usually the highest toll.\n| - Google Maps typically returns the cheapest possible price for a vehicle. Users cannot specify which toll passes they have; instead, to see cash tolls, users can disable the **See toll pass prices** option, which is enabled by default.\n\nTo get accurate toll estimates, make sure you include the following information\nin your request:\n\n- **The emission type** of the vehicle used for the route ([`VehicleEmissionType`](/maps/documentation/routes/reference/rest/v2/RouteModifiers#vehicleemissiontype)). If no emission type is provided, the toll for a gasoline-fueled vehicle is returned.\n- **All toll passes the vehicle and driver have** using ([`TollPass`](/maps/documentation/routes/reference/rest/v2/RouteModifiers#tollpass)). The API uses the toll passes to determine accurate toll fees, and returns cash prices when toll passes in the request are not local to the route.\n- **Specify avoid tolls, if needed** . If you want to avoid toll roads where possible, add `avoidTolls` as a `RouteModifier`.\n\n### Calculate tolls using a toll pass\n\nTo calculate tolls using a toll pass, you specify any toll passes as part of\nthe request. The API then returns pass prices.\n\n- If you specify an invalid toll pass, the pass is ignored.\n\n- If specify multiple toll passes as an array, the API attempts to\n calculate the price for the route for each pass.\n\n| **Note:** You can only specify a toll pass for the `DRIVE` and `TWO_WHEELER` travel modes.\n\nThe way toll passes behave can vary by region.\n\n- **Rates may be lower with a toll pass** : In some regions, a driver or vehicle\n with a toll pass pays a different toll than those who don't have a pass.\n For example, if you have a\n [Good To Go!](https://en.wikipedia.org/wiki/Good_to_Go_(toll_collection_system))\n toll pass in Seattle, WA, US, you pay a lower toll than if you don't have a\n pass.\n\n- **Some roads may require a toll pass**: Some regions, such as Indonesia, have\n roads that require a toll pass. If you don't specify a toll pass for a\n route where a toll pass is required, the API does not return a toll price.\n\nCalculate toll fees for a route\n-------------------------------\n\nThe following example uses the\n[`computeRoutes`](/maps/documentation/routes/reference/rest/v2/TopLevel/computeRoutes)\nmethod to return toll information with an estimated\nprice when a toll pass is used. In this example, you:\n\n- Set the `extraComputations` array field to `TOLLS` to enable the calculation\n of toll information.\n\n- Specify the vehicle type and the toll pass type by using the\n `routeModifiers` field of the request. The toll price returned is based on\n the pricing used by the specified vehicle type and pass. If more than one\n pass is specified, the least expensive pricing is returned.\n\n- Use the [response field mask](/maps/documentation/routes/choose_fields) to configure the method to\n return toll information in the response. In this example, the request\n included the following properties in the response field mask:\n\n - `routes.travelAdvisory.tollInfo` field to return information for the\n entire route.\n\n - `routes.legs.travelAdvisory.tollInfo` to return information\n for each leg.\n\n | **Note:** This route contains only one leg.\n\n### Request for toll information\n\n```console\ncurl -X POST -d '{\n \"origin\":{\n \"location\":{\n \"latLng\":{\n \"latitude\":42.340173523716736,\n \"longitude\":-71.05997968330408\n }\n }\n },\n \"destination\":{\n \"location\":{\n \"latLng\":{\n \"latitude\":42.075698891472804,\n \"longitude\": -72.59806562080408\n }\n }\n },\n \"travelMode\": \"DRIVE\",\n \"extraComputations\": \\[\"TOLLS\"\\],\n \"routeModifiers\":{\n \"vehicleInfo\":{\n \"emissionType\": \"GASOLINE\"\n },\n \"tollPasses\": [\n \"US_MA_EZPASSMA\",\n \"US_WA_GOOD_TO_GO\"\n ]\n }\n}' \\\n-H 'Content-Type: application/json' \\\n-H 'X-Goog-Api-Key: \u003cvar translate=\"no\"\u003eYOUR_API_KEY\u003c/var\u003e' \\\n-H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.travelAdvisory.tollInfo,routes.legs.travelAdvisory.tollInfo' \\\n'https://routes.googleapis.com/directions/v2:computeRoutes'\n```\n\n### Response containing toll information\n\nThe response contains information on tolls in a\n[TollInfo](/maps/documentation/routes/reference/rest/v2/TollInfo) (REST) or\n[TollInfo](/maps/documentation/routes/reference/rpc/google.maps.routing.v2#tollinfo) (gRPC) object. In this\nexample, you return toll information for the entire route and for each leg of\nthe route.\n| **Note** : The Routes API provides an `estimatedPrice` that applies to non-commercial vehicles.\n|\n| - Toll prices may be different for commercial vehicles.\n- The `units` and `nanos` are omitted when their value is zero. \n\n```json\n{\n \"routes\": [\n {\n \"legs\": [\n {\n \"travelAdvisory\": {\n \"tollInfo\": {\n \"estimatedPrice\": [\n {\n \"currencyCode\": \"USD\",\n \"units\": \"4\",\n \"nanos\": 400000000\n }\n ]\n }\n }\n }\n ],\n \"distanceMeters\": 150338,\n \"duration\": \"6650s\",\n \"travelAdvisory\": {\n \"tollInfo\": {\n \"estimatedPrice\": [\n {\n \"currencyCode\": \"USD\",\n \"units\": \"4\",\n \"nanos\": 400000000\n }\n ]\n }\n }\n }\n ]\n}\n```"]]