> ## Documentation Index
> Fetch the complete documentation index at: https://docs.automate.ax/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Automate.ax automations are TypeScript programs.
> Use Bun for installation and command examples.
> Use Automate.ax for the product name and automate.ax for the package, CLI, and domain.
> Treat documented public APIs as current; do not invent transitional or deprecated names.

# Bulk Update Customers

> Updates multiple customer profiles.

`square.bulkUpdateCustomers` updates multiple customer profiles.

## Example

```ts automations/square-bulk-update-customers.automation.ts theme={null}
import { automation, onDashboardRun } from "automate.ax"
import { square } from "automate.ax/square"

export default automation("Bulk Square Update Customers", () => {
  onDashboardRun({ title: "Bulk Square Update Customers" })

  square.bulkUpdateCustomers({
    customers: {
      "8DDA5NZVBZFGAX0V3HPF81HHE0": {
        emailAddress: "New.Amelia.Earhart@example.com",
        note: "updated customer note",
        version: BigInt("2"),
      },
      N18CPRVXR5214XPBBA6BZQWF3C: {
        givenName: "Marie",
        familyName: "Curie",
        version: BigInt("0"),
      },
    },
  })
})
```

## Inputs

Every input accepts a compatible signal. It requires `CUSTOMERS_WRITE`.

| Field       | Type                                              | Required | Default | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ----------- | ------------------------------------------------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `customers` | `Record\<string, Square.BulkUpdateCustomerData\>` | Yes      | —       | A map of 1 to 100 individual update requests, represented by `customer ID: \{ customer data \}` key-value pairs. Each key is the ID of the customer profile to update. To update a customer profile that was created by merging existing profiles, provide the ID of the newly created profile. Each value contains the updated customer data. Only new or changed fields are required. To add or update a field, specify the new value. To remove a field, specify `null`. |

Use the official [BulkUpdateCustomers reference](https://developer.squareup.com/reference/square/customers-api/bulk-update-customers) for provider field semantics and limits.

## Output

Returns the official `Square.BulkUpdateCustomersResponse` response as a codec-safe object. Square integer money amounts remain `bigint` values.
