Руководство по выставлению счетов для платформы Google Maps и мобильных устройств

Прежде чем внедрять новый проект Google Maps в производство, вам необходимо убедиться, что ваша настройка правильна, чтобы вы платили правильную сумму за продукты, которые вы используете. В этом документе мы рассматриваем аспекты, которые помогут вам обеспечить (i) прозрачность выставления счетов — чтобы можно было проверить использование до того, как будет создан счет, и (ii) правильную настройку проекта — чтобы вы могли использовать наши продукты.

Хотя это должен быть относительно простой процесс, партнеры Maps могут работать с вами, чтобы обеспечить правильное перемещение ваших проектов.

Концепции

В этом разделе мы хотим убедиться, что вы понимаете основную информацию о выставлении счетов в Google Maps и различных возможных настройках. Во многих ситуациях нет правильного или неправильного, это зависит от того, какого результата вы пытаетесь достичь.

В этом документе мы много говорим о вашем проекте Google Cloud. Это связано с тем, что через него доступны продукты Google Maps. Это означает, что конфигурация, которую мы рассматриваем в этом документе, создана в вашем проекте Google Cloud.

Платежные аккаунты

С каждой компанией, использующей продукты Google Maps, связан проект Google Cloud. Для этого проекта должен быть настроен платежный аккаунт. Платежный аккаунт отвечает за все использование Карт Google и ежемесячно выставляет счет на основе этого использования.

Для Mobility предусмотрен специальный платежный аккаунт. Этот платежный аккаунт предназначен для использования только в случаях, связанных с мобильностью, таких как совместные поездки, доставка и логистика.

Один платежный аккаунт может использоваться несколькими проектами Google Cloud или только одним.

Один проект, указывающий на один и тот же платежный аккаунт:

  • Конкретный вариант использования (т. е. варианты использования мобильных устройств)
  • Отдельные счета
  • Скидка предоставляется от объема данного отдельного проекта.

Несколько проектов, указывающих на один и тот же платежный аккаунт:

  • Тот же вариант использования
  • Воспользуйтесь преимуществами уровней скидок путем агрегирования использования.
  • Единый счет

Для получения дополнительной информации о платежных аккаунтах и ​​другой соответствующей информации перейдите по этой ссылке .

Как сказано выше, один платежный аккаунт может относиться к нескольким проектам. Если у вас несколько проектов, вам следует определить, какие из них будут использовать наши услуги мобильности, и указать для них учетную запись для выставления счетов за мобильность. Проекты, с которыми не связан вариант использования мобильных устройств, должны по-прежнему указывать на обычный платежный аккаунт платформы Google Maps, который вы используете сегодня. Чтобы получить аккаунт для выставления счетов за мобильную связь, необходимо подписать соглашение о мобильной связи с Google или через партнера. Ниже вы можете увидеть, как платежный аккаунт вписывается в общую схему и различные возможные настройки:

Возможные настройки платежного аккаунта
Возможные настройки платежного аккаунта

Облачные ресурсы, платежный аккаунт и генерация счетов

Говоря о ценах, на платформе Google Maps существуют различные уровни скидок, которые доступны через партнеров Maps или в некоторых случаях напрямую через Google. Эти уровни основаны на объеме, поэтому вы платите меньше, чем больше вы используете наши продукты (скидки применяются к каждому SKU индивидуально). Наша система выставления счетов идентифицирует ваши проекты на основе учетных данных, которые вы использовали для вызова наших продуктов. Это может быть ключ API или учетная запись службы для некоторых мобильных API:

Ключи API

API платформы Google Maps аутентифицируются с помощью ключа API. На основе этого ключа API Google идентифицирует соответствующий платежный аккаунт проекта Google Cloud, где будет происходить потребление.

Пример запроса к API геокодирования :

https://maps.googleapis.com/maps/api/geocode/json?place_id=ChIJeRpOeF67j4AR9ydy_PIzPuM&key=YOUR_API_KEY

JWT

Некоторые API требуют идентификатор проекта Google Cloud в URL-адресе и используют JWT для аутентификации. Поэтому важно убедиться, что правильные системы используют правильный метод аутентификации, чтобы обеспечить правильное выставление счетов.

Пример запроса к API Fleet Engine :

curl -X GET \ https://fleetengine.googleapis.com/v1/providers/project_id/deliveryVehicles/vehicle-1234 \
  -H 'authorization: Bearer eyJ0eXAiOi...' \
  -H 'cache-control: no-cache' \
  -H 'content-type: application/json' \
  -d '{
    "lastLocation": {
        "location": {
            "latitude": 37.432,
            "longitude": -122.094
        },
        "updateTime": "2022-11-13T17:55:00Z"
    }
}'

Расходы

На платформе Google Maps затраты рассчитываются на основе объема запросов API. За мобильные услуги мы взимаем плату в зависимости от объема оплачиваемых мобильных транзакций, которые представляют собой успешно завершенные поездки или задачи (отправки, а не получение). Это определяется до подписания договора. Если вы представляете компанию по совместному использованию поездок или доставке еды, завершение поездки или доставки является вашим показателем успеха. Это соответствует поездке . Задания используются для логистических компаний и розничных торговцев, которым необходимо успешно доставлять посылки.

Мы понимаем, что клиенты Mobility также используют продукты платформы Google Maps при совершении своих поездок и доставок. Таким образом, если вы используете учетную запись для выставления счетов за мобильность, вы можете бесплатно звонить на платформу Google Maps при условии, что в рамках одного и того же варианта использования мобильности соблюдаются заранее определенные ограничения.

Например, если вы являетесь компанией по доставке еды, для каждой успешной поездки вы можете вызвать API геокодирования десять раз. Дополнительные сведения об этих ограничениях см. в разделе «Ограничения использования» в документации по мобильности. Любые изменения в ограничениях требуют внесения поправок в ваш контракт, поэтому обратитесь к представителю Google или партнера, чтобы обсудить ваши конкретные потребности.

В конце месяца будет создан счет на основе (i) количества успешных поездок или задач, зарегистрированных в системе, и (ii) любого объема вызовов API платформы Google Maps, превышающего заранее установленные лимиты («излишки»). . Наши ограничения соответствуют тому, что мы в целом считаем необходимым на рынке.

Мы предлагаем вам внимательно прочитать официальную документацию по выставлению счетов за мобильную связь, которую можно найти здесь .

Пилотные проекты и оценка

Клиенты могут запустить небольшой пилотный проект (проверку концепции, оценку) мобильных услуг в платежном аккаунте платформы Google Maps на ограниченный период времени до подписания контракта. Если вы хотите запустить пилотную версию, поговорите со своим партнером по Картам или коллегой из Google.

Как уже упоминалось, на пилотном этапе учетная запись для выставления счетов за мобильность недоступна, поскольку контракт еще не подписан. Это означает, что за использование продуктов платформы Google Maps взимается плата, а за продукты, предназначенные для мобильных устройств, — нет. Другими словами, это означает, что на пилотном этапе выставление счетов не зависит от задачи или поездки, поэтому лимиты использования на этом этапе не применяются.

Как только пилотный проект будет официально запущен в производство, он должен быть оплачен в соответствии с контрактом.

Обобщить:

  • Этап пилотного проекта/разработки : плата взимается только за общедоступные API Карт Google. За API и SDK, которые не являются общедоступными, не будет взиматься плата, пока в проекте не будет использована учетная запись для выставления счетов за мобильность. Имейте в виду, что Google предлагает кредиты в размере 200 долларов США на API платформы Google Maps для любого нового созданного платежного аккаунта. Этого должно быть достаточно для контролируемой среды в течение периода оценки.

  • Фаза производства : плата взимается либо за поездки, либо за задания. Расходы, связанные с платформой Google Maps, будут возникать только в том случае, если использование превышает лимиты использования («ограничения»), предусмотренные в контракте. В этом случае вам придется платить за излишки. Излишки взимаются, как определено здесь .

Как перейти на учетную запись для выставления счетов за мобильность

При переходе на рабочую среду вам обычно приходится создавать несколько других проектов Google Cloud Platform (GCP) для представления различных сред, таких как QA (обеспечение качества) и производство. До этого у вас, вероятно, была только одна среда разработки.

Требования

Человек на вашей стороне, который может:

  1. Управляйте учетными записями выставления счетов в Google Cloud. Обычно это делает администратор учетной записи выставления счетов или владелец проекта.
  2. Доступ к новому идентификатору платежного аккаунта, указанному в приветственном письме, созданном после подписания контракта.
  3. Доступ к проекту Google Cloud, соответствующему производственной среде, в которой будут сообщаться о поездках или задачах.

Ниже мы покажем шаги, необходимые для настройки нового проекта, а также порядок настройки выставления счетов в этих новых проектах.

Настройка нового проекта

Создание проекта

  1. [Вы] Создание нового проекта(ов) GCP для новой среды(ов) (т. е. производства, обеспечения качества и т. д.). Это делается через Google Cloud Console, прямая ссылка здесь .
  2. [Партнер или команда Google] Этот проект должен быть внесен в белый список, чтобы иметь доступ к продуктам для мобильных устройств. Для этого обратитесь к своему торговому представителю Google или партнеру, который сделает это за вас. Укажите идентификатор проекта, созданный на предыдущем шаге.
  3. [Вы] обновляете основные контакты в своих проектах. Это очень важно, чтобы команды поддержки Google могли связаться с нужными людьми на вашей стороне.

Конфигурация проекта

Следующие шаги следует выполнить в Google Cloud Console для проекта, созданного на предыдущих шагах:

  1. [Вы] Создание сервисных учетных записей, включая привязку правильных ролей идентификации мобильности и управления доступом (IAM) ( на основе поездки и задачи ) — как это было сделано в среде разработки или с более структурированным разделением доступа, если необходимо — см. этот раздел .
  2. [Вы] Создание ключей API — как это было сделано в среде разработки или с более структурированным разделением доступа (например, по продукту, домену и т. д.), если это необходимо.
  3. [Вы] Включение API, таких как «Местные поездки и доставки», и других необходимых API платформы Google Maps (например, геокодирование, автозаполнение, проверка адреса).
  4. [Вы] Квота: если вам нужно увеличение количества запросов в секунду (запросов в секунду) для определенных API, откройте заявку в службу поддержки. Посмотрите, как это сделать, здесь . Вы должны добавить бизнес-обоснование, объясняющее, почему необходимо повышение. Предопределенные квоты можно увидеть здесь .
  5. [Вы] Если у вас есть разработанные системы, в которых использовались учетные данные из среды разработки, убедитесь, что эти системы могут указывать на новые учетные данные, которые были созданы для новых созданных проектов. Это включает в себя указание внутренним и внешним системам новых учетных данных, таких как ключи API, учетные записи служб, и обеспечение использования правильных идентификаторов проектов в каждой соответствующей среде.

Платежная конфигурация

Здесь мы предполагаем, что вы уже подписали договор с Google напрямую (если применимо) или через партнера. Это необходимое условие для получения в приветственном письме счета выставления счетов за мобильную связь, который будет использоваться на следующих этапах.

  1. [Вы] Убедитесь, что идентификатор учетной записи для выставления счетов за мобильную связь был получен в приветственном письме , которое отправляется от Google по электронной почте после подписания и исполнения договора. Важно : Приветственное письмо отправляется техническим и финансовым контактам, указанным в форме заказа вашего контракта. Совместно с командой проекта выясните, кто мог его получить, и попросите этого человека предоставить вам идентификатор платежного аккаунта, который представляет собой серию символов и цифр, разделенных дефисом.
  2. [Вы] Работаете с Google или партнером, чтобы убедиться, что проверка счетов выполнена. Это означает, что ваши системы уже правильно отправляют отчеты о поездках или задачах в Google. Подробности в следующем разделе.
  3. [Вы] указываете в своих проектах Google Cloud новый платежный аккаунт с помощью Cloud Console — см. раздел «Конфигурация платежного аккаунта» далее в этом документе.

Более подробно о биллинге в целом можно прочитать здесь и здесь .

Проверка платежа

Проверка платежа важна для проверки правильности оплаты. Иногда компании случайно внедряют API неправильно, что приводит к увеличению расходов или занижению отчетности.

Проверка платежа состоит из следующих этапов:

  1. Проверка того, имеют ли запросы к API платформы Google Maps идентификатор tripId (или TaskId) в заголовке запроса — подробнее здесь .

  2. Проверка правильности отчетности о поездках (или задачах). Это зависит от того, какой пакет мобильности используется:

    • Mobility Starter и Optimize или Accelerate (на основе поездки) : требуется интеграция с API ReportBillableEvent . Это означает, что всякий раз, когда поездка успешно завершается, необходимо сделать запрос к этому API. Чтобы проверить, правильно ли это происходит, необходимо выполнить действия, описанные здесь .
    • Mobility Accelerate (на основе задач) : выставление счетов не обязательно должно запускаться вызовом API. Это происходит автоматически, когда результат задачи доставки установлен на УСПЕШНО. Поэтому очень важно, чтобы вы правильно установили результат задачи: НЕУДАЧА или УСПЕШНО. Инженеры по работе с клиентами (партнеры или Google) будут работать с вами, чтобы убедиться, что внедрение было выполнено правильно. С помощью Cloud Logging вы можете проверить, правильно ли обновляются задачи, выполнив следующий запрос Cloud Logging:
    resource.type="fleetengine.googleapis.com/DeliveryFleet"
    jsonPayload.@type="type.googleapis.com/maps.fleetengine.delivery.log.v1.UpdateTaskLog"
    jsonPayload.request.task.taskOutcome="TASK_OUTCOME_LOG_SUCCEEDED"
    

    Если записи отображаются, это означает, что ваши серверные системы правильно ставят задачи на УСПЕШНОЕ выполнение.

    Примечание . Однако важно проверить, соответствует ли количество фактических поездок или успешно выполненных задач количеству зарегистрированных вызовов. Иногда мы видим, что сообщается о событиях выставления счетов, но они не соответствуют общему количеству поездок или задач, которые были фактически выполнены в реальной жизни (занижение отчетности).

Состояние работоспособности интеграции

Успешный переход на рабочую среду должен не только гарантировать правильную работу биллинга, но и работоспособность API. Когда дело доходит до мобильных услуг, важно проверить, правильно ли реализована интеграция с Fleet Engine (API местных поездок и доставки).

Для этого вы можете открыть Cloud Logging и использовать следующий запрос:

jsonPayload.errorResponse.code:*

Здесь должны быть перечислены все записи журнала с проблемами. Например:

Запрос ошибок с помощью Cloud Logging
Запрос ошибок с помощью Cloud Logging

Эти проблемы можно экспортировать в другие облачные продукты, такие как BigQuery. Метрики и оповещения можно настроить на основе запроса Cloud Logging:

Создание метрики на основе запроса Cloud Logging
Создание метрики на основе запроса Cloud Logging

Поскольку это продукты Google Cloud, могут возникнуть дополнительные расходы. Вы можете поговорить со своим партнером или представителем Google, чтобы получить больше ясности.

Настройка платежного аккаунта

Если все ваши системы теперь правильно сообщают о поездках или задачах и ошибок интеграции не обнаружено, пришло время указать для вашего проекта(ов) платежный аккаунт, который вы получили в приветственном письме и который был описан в предыдущих разделах этого документа. .

Примечание . Если вы работаете с партнером Google Maps, он может помочь вам на этом этапе, и вам не обязательно выполнять приведенные ниже действия в одиночку. Если вы работаете напрямую с Google, что может произойти в некоторых регионах, вы можете выполнить следующие шаги:

Для этого:

  1. Откройте консоль Google Cloud (https://console.cloud.google.com).
  2. Выберите новый проект, который будет использоваться в производстве.
  3. Перейдите в раздел «Биллинг» этого проекта. Доступ к этой ссылке можно получить с помощью ярлыка: https://console.cloud.google.com/billing.
  4. Биллинг > Нажмите «Управление платежными аккаунтами»:
    Несколько платежных аккаунтов
    Ваш проект может выглядеть иначе, чем приведенный выше.
  5. В разделе «Выставление счетов» > нажмите на значок с тремя точками.Открыть подробнее Рядом с единицей созданного производственного проекта и выберите «Изменить платежный аккаунт»:
    Выберите проект
  6. Выставление счетов > в разделе «Учетная запись для выставления счетов» выберите в раскрывающемся списке код учетной записи для выставления счетов, который вы получили в приветственном письме. Затем нажмите «УСТАНОВИТЬ АККАУНТ»:
    Выберите проект
  7. Проект будет связан с новым платежным аккаунтом:
    Выберите правильный платежный аккаунт
    Важно ! С этого момента все поездки и задачи, указанные в этом проекте, будут оплачиваться, как описано ранее. Если проверка платежных данных еще не произошла, пока не привязывайте платежный аккаунт.
  8. После добавления нового метода выставления счетов перейдите в «Обзор > Обзор платежей» и «Настройки платежей», чтобы подтвердить правильность информации. Для получения дополнительной информации об обновлении счетов и платежей перейдите по этой ссылке .
    По любым вопросам, связанным с выставлением счетов, отправьте запрос в службу поддержки по вопросам выставления счетов или обратитесь к своему партнеру или представителю Google.

Отчеты о выставлении счетов

Отчеты о платежах помогут вам понять расходы, связанные с платежным аккаунтом, связанным с проектом.

Примечание . Если вы работаете с партнером Google Maps, обратитесь к нему и убедитесь, что вам предоставлена ​​необходимая платежная информация.

Откройте связанный платежный аккаунт проекта, выберите «Отчеты». Тогда вы можете использовать следующий набор фильтров:

Фильтры отчета о платежах
Фильтры отчета о платежах

Здесь основной настройкой, которую следует иметь в виду, является фильтр «Группировать по SKU», который покажет подробную информацию о поездках и задачах, а также о других API, если они используются, в том числе о том, были ли излишки или нет, как объяснялось ранее:

Фильтры отчета о платежах
Пример продуктов, использованных в проекте

Информация в отчете обновляется ежедневно. Если необходима внутридневная информация, можно использовать запросы Cloud Logging, чтобы узнать, сколько оплачиваемых событий произошло в течение дня. См. предыдущие разделы для этого.

План наращивания мощности

Важным моментом, о котором следует упомянуть, является ваш план наращивания производительности. Обычно не весь трафик переносится в проект мобильности, в зависимости от характера вашего бизнеса. Например, некоторым компаниям требуется время, чтобы развернуть новое решение во всех своих филиалах, франшизах, магазинах, офисах и т. д. Это означает, что часть трафика будет использовать старые системы, а часть трафика пойдет в новый проект.

Кроме того, во многих случаях не весь трафик будет относиться к варианту мобильного использования, как в случае с указателями местоположения магазинов, самовывозом на обочине и другими внутренними решениями. Они должны указывать на платежный аккаунт платформы Google Maps, поскольку трафик там должен храниться отдельно от платежного аккаунта для мобильных устройств.

Важно соблюдать Политику внедрения:

  • Модель на основе поездки . «Решение для поездок и доставки по требованию предназначено для использования в коммерческих службах поездок и доставки по требованию. Такие услуги обычно включают в себя (а) потребителей, которые подают запросы на поездку до определенного пункта назначения (или доставку определенного товара), и (б) водителей, которые удовлетворяют запросы и которые управляют транспортным средством для оказания услуг».
  • Модель, основанная на задачах : «Решение для флота последней мили на платформе Google Maps предназначено для использования в коммерческих службах доставки на последней миле и услугах самовывоза на первой миле. Такие услуги обычно включают в себя (а) парк транспортных средств доставки, которые либо принадлежат Заказчику, либо арендуются им по контракту, (б) поставки по заранее запланированному маршруту, (в) сеть распределительных центров с оперативными группами, которые поддерживают выполнение доставки, и (г) потребители, которые отслеживают, а затем получают поставки».

Поэтому вы должны понимать, какие из ваших систем должны указывать на платежный аккаунт платформы Google Maps, а какие — на платежный аккаунт для мобильных устройств. Обычно имеется несколько проектов, каждый из которых указывает на правильный платежный аккаунт.

В качестве примера предположим, что каждая поездка/задача сегодня включает 10 запросов геокодирования в соответствии с ограничениями на использование. Если ваша миграция займет несколько месяцев и вы начнете сообщать о 100 тысячах поездок/задач в первый месяц, это означает, что вы можете вызвать API геокодирования 1 миллион раз. Но если ваш бизнес запрашивает 5M Geocoding, эта разница (4M) может быть указана как превышение. Здесь возможны два варианта:

  1. Вы увеличиваете количество поездок/задач, о которых нам сообщаете (ускоряете план наращивания), поэтому применяются более высокие лимиты. В этом случае вам нужно будет сообщать о 500 тыс. поездок/задач в месяц.
  2. Вы договариваетесь о более высоких лимитах во время переговоров по контракту, как объяснялось ранее.
  3. Вы направляете запросы API геокодирования к API платформы Google Maps, чтобы получить более высокие уровни скидок и платить дешевле, чем излишки.

Мы знаем, что оценка затрат зависит от размера и сложности вашего бизнеса, а варианты использования могут быть сложными. Поговорите со своим партнером или коллегой из Google, чтобы определить, как лучше всего подготовиться к запуску производства с использованием существующих проектов.

Подводя итог, можно сказать, что для создания надлежащего плана расширения необходимы следующие шаги: 1. Определите, какие варианты использования связаны с мобильностью, а какие нет в соответствии с Политикой внедрения. 2. Определите, какие API платформы Google Maps используются сегодня для соответствующих сценариев использования и их объемов. 3. Определите, будут ли по-прежнему необходимы API платформы Google Maps после внедрения решения для мобильности. Например, расчет ETA происходит автоматически в Fleet Engine, возможно, вам больше не понадобится рассчитывать их с помощью Directions API. 4. Определите, сколько времени потребуется для полной миграции вариантов использования мобильных устройств на новую мобильную платформу на вашей стороне. 5. Дважды проверьте, достаточны ли ограничения использования для поддержки ваших вариантов использования. 6. Определите переломный момент, когда все запросы платформы Google Maps можно будет перенести в платежный аккаунт для мобильных устройств для сценариев использования мобильных устройств.

Заключение

В заключение, правильная настройка платежной учетной записи необходима для предсказуемости цен и прозрачности. Используя нашу мобильную технологию, включающую лучшие в своем классе услуги определения местоположения, компании могут быть уверены, что их процессы выставления счетов точны и эффективны. Это не только помогает сократить расходы, но также предоставляет необходимые данные и идеи, необходимые для принятия обоснованных бизнес-решений. Более того, прозрачность, предлагаемая такой системой, позволяет компаниям иметь четкое представление о своих расходах, что приводит к лучшему управлению бюджетом.

Следующие действия