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

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

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

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

Платежные конфигурации содержат поле payments_account и группу полей payments_account_info, которые идентифицируют используемый платежный аккаунт, в том числе:

  • payments_account_info.payments_account_id – 16-значный идентификатор, представленный в виде строки с дефисами (например, "1234-5678-9012-3456"). Он используется для идентификации платежного аккаунта, связанного с платежной конфигурацией.
  • payments_account_info.payments_account_name – название платежного аккаунта, связанного с конфигурацией платежных данных. Это название указывается в ежемесячных счетах.
  • payments_account_info.payments_profile_id – 12-значный идентификатор, который выглядит как строка с дефисами (например, "1234-5678-9012") и используется для идентификации платежного профиля, связанного с конфигурацией.

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

Как создать платежные конфигурации

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

Как использовать существующий платежный аккаунт

Чтобы установить связь с существующим платежным аккаунтом, укажите в поле payments_account название ресурса действительного платежного аккаунта (например, customers/{customer_id}/paymentsAccounts/{payments_account_id}). При этом не изменяйте поле payments_account_info.

Вы можете получить список доступных платежных аккаунтов с помощью метода PaymentsAccountService.ListPaymentsAccounts. Возвращаемые объекты PaymentsAccount зависят от управляющего аккаунта, который вы используете для аутентификации.

Для каждого PaymentsAccount название ресурса его управляющего аккаунта, ответственного за оплату, находится в поле paying_manager_customer.

Как использовать новый платежный аккаунт

Чтобы установить связь с новым платежным аккаунтом, задайте следующие поля в payments_account_info (не задавайте payments_account):

В примере ниже показано, как создать платежную конфигурацию на основе существующего идентификатора платежного профиля. Как уже говорилось, при этом также будет создан новый платежный аккаунт с названием My New Payments Account.

BillingSetup billingSetup =
    BillingSetup.newBuilder()
        .setPaymentsAccountInfo(
            PaymentsAccountInfo.newBuilder()
                .setPaymentsAccountName("My New Payments Account")
                .setPaymentsProfileId("1234-5678-9012")
                .build())
        .setStartTimeType(TimeTypeEnum.TimeType.NOW)
        .build();

BillingSetupOperation operation =
    BillingSetupOperation.newBuilder().setCreate(billingSetup).build();

try (BillingSetupServiceClient billingSetupServiceClient =
    googleAdsClient.getBillingSetupServiceClient()) {
  MutateBillingSetupResponse response =
      billingSetupServiceClient.mutateBillingSetup(
          Long.toString(customerId), operation);
}

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

Статус платежной конфигурации

Новые экземпляры BillingSetup должны быть одобрены, прежде чем они вступят в силу. До этого момента их status будет находиться в состоянии PENDING.

Объект BillingSetup может иметь одно из следующих значений status:

BillingSetupStatus Описание
PENDING На рассмотрении
APPROVED_HELD Одобрен, но соответствующий первый бюджет не одобрен. Это может произойти только в платежных конфигурациях, настроенных для кредитной линии.
APPROVED Настройка одобрена.
CANCELLED Пользователь отменил настройку до одобрения.

Как получить платежную конфигурацию аккаунта

Как и большинство других объектов в Google Ads API, BillingSetup извлекается путем запроса GoogleAdsService.Search или GoogleAdsService.SearchStream с использованием запроса на языке запросов Google Рекламы (GAQL), который указывает, какие поля следует возвращать:

SELECT
  billing_setup.resource_name,
  billing_setup.id,
  billing_setup.status,
  billing_setup.payments_account,
  billing_setup.payments_account_info.payments_account_id,
  billing_setup.payments_account_info.payments_account_name,
  billing_setup.payments_account_info.payments_profile_id,
  billing_setup.payments_account_info.payments_profile_name,
  billing_setup.start_date_time,
  billing_setup.end_date_time,
  billing_setup.end_time_type
FROM billing_setup

Получив ссылку на BillingSetup, вы можете использовать ее для создания AccountBudgetProposal, как описано в статье Бюджеты аккаунтов.

Как отменить платежную конфигурацию, ожидающую подтверждения

BillingSetup, которая ещё не вступила в силу, можно отменить, отправив BillingSetupOperation с полем remove, в котором указано название ресурса платежной конфигурации (customers/{customer_id}/billingSetups/{billing_setup_id}). Платежные конфигурации можно отменить, только если их status – PENDING или если они APPROVED для запуска в будущем.