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

# Update business

> Partial update of business fields



## OpenAPI

````yaml PATCH /v1/platform/businesses/{business_id}/
openapi: 3.0.3
info:
  title: Thredfi Accounting Platform API
  version: 1.0.0
  description: >-
    Comprehensive API for accounting, invoice management, open banking, and
    intelligence services.
servers: []
security: []
paths:
  /v1/platform/businesses/{business_id}/:
    patch:
      tags:
        - Business Management
      summary: Update business
      description: Partial update of business fields
      operationId: update_business
      parameters:
        - in: path
          name: business_id
          schema:
            type: string
            format: uuid
          description: A UUID string identifying this business.
          required: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedUpdateBusinessRequest'
            examples:
              UpdateEmailAndPhone:
                value:
                  email: newemail@acmecoffee.co.uk
                  phone_number: +44 20 9876 5432
                summary: Update Email and Phone
              UpdateVATNumber:
                value:
                  vat_number: GB987654321
                  company_number: '87654321'
                summary: Update VAT Number
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedUpdateBusinessRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedUpdateBusinessRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateBusiness'
          description: ''
      security:
        - PartnerJWT: []
        - BusinessScopedJWT: []
        - BasicAuth: []
        - BearerUnscoped: []
        - BearerBusinessScoped: []
components:
  schemas:
    PatchedUpdateBusinessRequest:
      type: object
      description: Serializer for updating existing businesses
      properties:
        legal_name:
          type: string
          minLength: 1
          description: Legal registered name of the business
          maxLength: 255
        entity_type:
          type: string
          description: Business entity type (e.g., 'limited', 'gmbh', 'bv')
        phone_number:
          type: string
          description: Business phone number
        tin:
          type: string
          description: Tax identification number (other than VAT)
        vat_number:
          type: string
          description: EU VAT registration number
          maxLength: 20
        company_number:
          type: string
          description: Company registration number (e.g., Companies House number for UK)
          maxLength: 20
        province:
          type: string
          description: Province or state within the country
          maxLength: 100
        eu_nace_industry_code:
          type: string
          description: European NACE industry classification code
          maxLength: 10
        email:
          type: string
          format: email
          minLength: 1
          description: Primary email address for the business
        accounting_method:
          enum:
            - cash
            - accrual
          type: string
          x-spec-enum-id: 6f6d0e718e73bb81
          description: |-
            Accounting method: 'cash' or 'accrual'

            * `cash` - Cash Basis
            * `accrual` - Accrual Basis
        fiscal_year_end:
          type: string
          format: date
          description: 'Fiscal year end date (format: YYYY-MM-DD)'
        metadata:
          description: Custom JSON metadata for partner-specific data
    UpdateBusiness:
      type: object
      description: Serializer for updating existing businesses
      properties:
        legal_name:
          type: string
          description: Legal registered name of the business
          maxLength: 255
        entity_type:
          type: string
          description: Business entity type (e.g., 'limited', 'gmbh', 'bv')
        phone_number:
          type: string
          description: Business phone number
        tin:
          type: string
          description: Tax identification number (other than VAT)
        vat_number:
          type: string
          description: EU VAT registration number
          maxLength: 20
        company_number:
          type: string
          description: Company registration number (e.g., Companies House number for UK)
          maxLength: 20
        province:
          type: string
          description: Province or state within the country
          maxLength: 100
        eu_nace_industry_code:
          type: string
          description: European NACE industry classification code
          maxLength: 10
        email:
          type: string
          format: email
          description: Primary email address for the business
        accounting_method:
          enum:
            - cash
            - accrual
          type: string
          x-spec-enum-id: 6f6d0e718e73bb81
          description: |-
            Accounting method: 'cash' or 'accrual'

            * `cash` - Cash Basis
            * `accrual` - Accrual Basis
        fiscal_year_end:
          type: string
          format: date
          description: 'Fiscal year end date (format: YYYY-MM-DD)'
        metadata:
          description: Custom JSON metadata for partner-specific data
  securitySchemes:
    PartnerJWT:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Partner-level JWT token (unscoped). Token payload includes `partner_id`.
        Business access is validated via partner ownership. Format: `Bearer
        <your-jwt-token>`


        **Use this for**: Multi-business operations where the business_id is
        specified in the URL and partner has access to multiple businesses.
    BusinessScopedJWT:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Business-scoped JWT token. Token payload includes `business_id` to
        automatically scope requests. Format: `Bearer <your-jwt-token>`


        **Use this for**: Business-specific operations where the business
        context is embedded in the token.
    BasicAuth:
      type: http
      scheme: basic
      description: >-
        Basic authentication for OAuth2 token endpoint. Use partner_uuid:api_key
        as username:password. Example: Authorization: Basic
        base64(partner_uuid:api_key)
    BearerUnscoped:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Partner (unscoped) JWT Bearer token. Obtain via POST
        /v1/platform/oauth2/token with Basic auth (partner_uuid:api_key). Use
        header: Authorization: Bearer {access_token}
    BearerBusinessScoped:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Business-scoped JWT Bearer token. Obtain via POST
        /v1/platform/{business_id}/oauth2/token/ using a partner Bearer token.
        Only valid for endpoints whose URL contains that business_id.

````