---
title: "POST /v23/customers/{customersId}/billingSetups:mutate"
method: POST
path: "/v23/customers/{customersId}/billingSetups:mutate"
tags: ["customers"]
---

# POST /v23/customers/{customersId}/billingSetups:mutate

`POST /v23/customers/{customersId}/billingSetups:mutate`

## Request

- Base URL: `https://searchads360.googleapis.com`
- URL: `https://searchads360.googleapis.com/v23/customers/{customersId}/billingSetups:mutate`
- Auth: OAuth 2 and OAuth 2
  - Implicit: `https://accounts.google.com/o/oauth2/auth`
  - Scopes: `https://www.googleapis.com/auth/doubleclicksearch`
  - Authorization code: `https://accounts.google.com/o/oauth2/auth`
  - Token URL: `https://accounts.google.com/o/oauth2/token` scopes: `https://www.googleapis.com/auth/doubleclicksearch`
- TypeScript: <https://skmtc.dev/google/apis/searchads360/docs/v23/customers/:customersId/billingSetups:mutate/post.ts> (a function with typed inputs; its response is checked against the schema)

Creates a billing setup, or cancels an existing billing setup. List of thrown errors: [AuthenticationError]() [AuthorizationError]() [BillingSetupError]() [DateError]() [FieldError]() [HeaderError]() [InternalError]() [MutateError]() [QuotaError]() [RequestError]()

## Path parameters

- `customersId` string, required

## Request body

- GoogleAdsSearchads360V23ServicesMutateBillingSetupRequest: Request message for billing setup mutate operations.
  - `operation` GoogleAdsSearchads360V23ServicesBillingSetupOperation: A single operation on a billing setup, which describes the cancellation of an existing billing setup.
    - `create` GoogleAdsSearchads360V23ResourcesBillingSetup: A billing setup, which associates a payments account and an advertiser. A billing setup is specific to one advertiser.
      - `endDateTime` string: Output only. The end date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format.
      - `endTimeType` 'UNSPECIFIED' | 'UNKNOWN' | 'NOW' | 'FOREVER': Output only. The end time as a type. The only possible value is FOREVER.
      - `id` string, int64: Output only. The ID of the billing setup.
      - `paymentsAccount` string: Immutable. The resource name of the payments account associated with this billing setup. Payments resource names have the form: `customers/{customer_id}/paymentsAccounts/{payments_account_id}` When setting up billing, this is used to signup with an existing payments account (and then payments_account_info should not be set). When getting a billing setup, this and payments_account_info will be populated.
      - `paymentsAccountInfo` GoogleAdsSearchads360V23ResourcesBillingSetupPaymentsAccountInfo: Container of payments account information for this billing.
        - `paymentsAccountId` string: Output only. A 16 digit id used to identify the payments account associated with the billing setup. This must be passed as a string with dashes, for example, "1234-5678-9012-3456".
        - `paymentsAccountName` string: Immutable. The name of the payments account associated with the billing setup. This enables the user to specify a meaningful name for a payments account to aid in reconciling monthly invoices. This name will be printed in the monthly invoices.
        - `paymentsProfileId` string: Immutable. A 12 digit id used to identify the payments profile associated with the billing setup. This must be passed in as a string with dashes, for example, "1234-5678-9012".
        - `paymentsProfileName` string: Output only. The name of the payments profile associated with the billing setup.
        - `secondaryPaymentsProfileId` string: Output only. A secondary payments profile id present in uncommon situations, for example, when a sequential liability agreement has been arranged.
      - `resourceName` string: Immutable. The resource name of the billing setup. BillingSetup resource names have the form: `customers/{customer_id}/billingSetups/{billing_setup_id}`
      - `startDateTime` string: Immutable. The start date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format. Only a future time is allowed.
      - `startTimeType` 'UNSPECIFIED' | 'UNKNOWN' | 'NOW' | 'FOREVER': Immutable. The start time as a type. Only NOW is allowed.
      - `status` 'UNSPECIFIED' | 'UNKNOWN' | 'PENDING' | 'APPROVED_HELD' | 'APPROVED' | 'CANCELLED': Output only. The status of the billing setup.
    - `remove` string: Resource name of the billing setup to remove. A setup cannot be removed unless it is in a pending state or its scheduled start time is in the future. The resource name looks like `customers/{customer_id}/billingSetups/{billing_id}`.

## Response `200`

Successful response

- GoogleAdsSearchads360V23ServicesMutateBillingSetupResponse: Response message for a billing setup operation.
  - `result` GoogleAdsSearchads360V23ServicesMutateBillingSetupResult: Result for a single billing setup mutate.
    - `resourceName` string: Returned for successful operations.

---

[API](https://skmtc.dev/google/apis/searchads360.md) - [All operations](https://skmtc.dev/google/apis/searchads360/llms.txt) - [OpenAPI document](https://skmtc.dev/google/apis/searchads360/revisions/4a4511f84b18?raw)
