---
title: "Set the buyer company name and tax ID for a booking's invoice"
method: PUT
path: "/v1/bookings/{publicId}/buyer-tax-details"
tags: ["bookings"]
---

# Set the buyer company name and tax ID for a booking's invoice

`PUT /v1/bookings/{publicId}/buyer-tax-details`

## Request

- Base URL: `https://api.getmyhotels.com`
- URL: `https://api.getmyhotels.com/v1/bookings/{publicId}/buyer-tax-details`
- Auth: HTTP bearer

Runs `booking.updateBuyerTaxDetails`; owner-only. REPLACES all three fields: an omitted field is cleared, so send `{}` to remove the company details entirely. `buyerTaxId` needs `buyerTaxIdCountry` and is validated for that country (GSTIN for IN, VAT for EU/UK). Refused with 400 once a non-void invoice exists for the booking — the issued invoice keeps its own snapshot. Read the current values from `buyer` on `GET /v1/bookings/{publicId}/receipt`, whose `editable` flag says whether this call will be accepted.

## Path parameters

- `publicId` string, required

## Request body

- object
  - `buyerCompanyName` string
  - `buyerTaxIdCountry` 'IN' | 'GB' | 'AT' | 'BE' | 'BG' | 'CY' | 'CZ' | 'DE' | 'DK' | 'EE' | 'ES' | 'FI' | 'FR' | 'GR' | 'HR' | 'HU' | 'IE' | 'IT' | 'LT' | 'LU' | 'LV' | 'MT' | 'NL' | 'PL' | 'PT' | 'RO' | 'SE' | 'SI' | 'SK'
  - `buyerTaxId` string

## Response `200`

Success

- unknown

## Other responses

- `400`: Request validation failed or the router rejected the input
- `401`: Missing or invalid bearer session token
- `404`: Resource not found
- `426`: Reported X-GMH-App-Version is below the supported minimum — the app must update
- `500`: Unexpected server error (opaque; details stay in logs)

---

[API](https://skmtc.dev/getmyhotels/apis/getmyhotels-rest-api.md) · [All operations](https://skmtc.dev/getmyhotels/apis/getmyhotels-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/getmyhotels/apis/getmyhotels-rest-api/revisions/cba24a9c13f0?raw)
