---
updatedAt: 2026-05-29T13:25:42.000Z
agentTools:
  projectIndex: https://developer.eftcorp.com/llms.txt
---

# Update an existing tenant

Updates the tenant record and returns the updated tenant.

# OpenAPI definition

```json
{
  "servers": [
    {
      "url": "https://eclipse-java-sandbox.ukheshe.rocks",
      "description": "Eclipse sandbox environment"
    },
    {
      "url": "https://ukheshe.live",
      "description": "Eclipse production environment"
    },
    {
      "url": "https://eclipse-java-develop.ukheshe.rocks",
      "description": "Eclipse development environment"
    },
    {
      "url": "https://zw.ukheshe.live",
      "description": "Zim Eclipse production environment"
    }
  ],
  "openapi": "3.1.0",
  "components": {
    "schemas": {
      "BusinessType": {
        "type": "string",
        "enum": [
          "CLOSE_CORPORATION",
          "LIMITED_COMPANY",
          "PARTNERSHIP",
          "PERSONAL_LIABILITY_COMPANY",
          "PUBLIC_LISTED_COMPANY",
          "SOLE_PROPRIETOR",
          "STATE_OWNED_COMPANY",
          "TRUST",
          "UNREGISTERED"
        ]
      },
      "EclipseOrganisationStatus": {
        "description": "Status of the eclipse organisation. ACTIVE:Organisation is active, INACTIVE:Organisation is in active, BARRED:Organisation is in barred",
        "type": "string",
        "enum": [
          "ACTIVE",
          "BARRED",
          "INACTIVE"
        ]
      },
      "EclipseTenant": {
        "description": "A tenant of the Eclipse platform. Contains all core configuration, authentication and options set at the Tenant level",
        "type": "object",
        "properties": {
          "base64ExportedTenantConfiguration": {
            "type": "string",
            "description": "Optional. It is tenant detail like wallet type, wallet, admin users exported Tenant Configuration as JSON"
          },
          "businessType": {
            "$ref": "#/components/schemas/BusinessType",
            "description": "The type of the business. This will be supplementary to Tenant type when selected type of business.",
            "type": "string"
          },
          "categoryCode": {
            "type": "integer",
            "format": "int64",
            "description": "Four digit Category code for this tenant."
          },
          "companyNumber": {
            "type": "string",
            "description": "Legal company number of the tenant",
            "minLength": 5,
            "maxLength": 20
          },
          "created": {
            "type": "string",
            "format": "date-time",
            "examples": [
              "2022-03-10T12:15:50-04:00"
            ],
            "description": "ISO 8601 date/time of when the record was first created"
          },
          "email": {
            "type": "string",
            "description": "Primary email address of the tenant"
          },
          "industrialClassification": {
            "type": "string",
            "minLength": 3,
            "maxLength": 50
          },
          "industrialSector": {
            "type": "string",
            "minLength": 3,
            "maxLength": 50
          },
          "institution": {
            "type": "string",
            "description": "Optional. The accountable institution that the tenant falls under",
            "pattern": "^[A-Z]{3}$",
            "minLength": 3,
            "maxLength": 3
          },
          "lastModified": {
            "type": "string",
            "format": "date-time",
            "examples": [
              "2022-03-10T12:15:50-04:00"
            ],
            "description": "ISO 8601 date/time of when the record was last modified"
          },
          "merchantId": {
            "type": "string",
            "description": "Merchant Id used for some card payment types to the tenants wallet"
          },
          "name": {
            "type": "string",
            "description": "Name of the tenant - typically company name",
            "minLength": 3,
            "maxLength": 50
          },
          "phone1": {
            "type": "string",
            "description": "Tenants primary phone number",
            "pattern": "^[0-9]{8,16}$"
          },
          "poolAccountNumbers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PoolAccountData"
            },
            "description": "Pool accounts linked to wallet types on the tenant"
          },
          "primaryPoolAccountNumber": {
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/EclipseOrganisationStatus"
          },
          "taxNumber": {
            "type": "string",
            "description": "Tax number of the tenant",
            "minLength": 3,
            "maxLength": 20
          },
          "tenantId": {
            "type": "integer",
            "format": "int64",
            "description": "Unique identifier for a tenant. System generated upon creation of a new tenant. Should be passed as a path parameter for many of the API's which are specific to the tenant"
          },
          "tradingName": {
            "type": "string",
            "minLength": 3,
            "maxLength": 50
          },
          "vatNumber": {
            "type": "string",
            "description": "VAT number of Tenant"
          },
          "version": {
            "type": "integer",
            "format": "int32",
            "description": "A number indicating the version of the record. Updates will only be accepted if the passed in version is the same as the current version on record. This is in order to prevent concurrent modifications by multiple users.",
            "minimum": 0
          },
          "walletIdentifiers": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "phone1",
          "version"
        ]
      },
      "ExceptionData": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "environment": {
            "type": "string"
          },
          "info": {
            "type": "object",
            "additionalProperties": {}
          },
          "severity": {
            "$ref": "#/components/schemas/ExceptionSeverity"
          },
          "spanId": {
            "type": "string"
          },
          "stackTrace": {
            "type": "string"
          },
          "traceId": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/ExceptionType"
          }
        }
      },
      "ExceptionSeverity": {
        "type": "string",
        "enum": [
          "CRITICAL",
          "HIGH",
          "INFO",
          "LOW",
          "MEDIUM"
        ]
      },
      "ExceptionType": {
        "type": "string",
        "enum": [
          "BUSINESS",
          "SYSTEM"
        ]
      },
      "PoolAccountData": {
        "type": "object",
        "properties": {
          "accountNumber": {
            "type": "string"
          },
          "currency": {
            "type": "string"
          },
          "walletTypeId": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "UpdatedEclipseTenant": {
        "description": "Data to pass to update and existing tenant. Contains all core configuration, authentication and options set at the Tenant level",
        "type": "object",
        "properties": {
          "businessType": {
            "$ref": "#/components/schemas/BusinessType",
            "description": "The type of the business. This will be supplementary to Tenant type when selected type of business.",
            "type": "string"
          },
          "categoryCode": {
            "type": "integer",
            "format": "int64",
            "description": "Four digit Category code for this tenant."
          },
          "companyNumber": {
            "type": "string",
            "description": "Legal company number of the tenant",
            "minLength": 5,
            "maxLength": 20
          },
          "email": {
            "type": "string",
            "description": "Primary email address of the tenant"
          },
          "exportedTenantConfigurations": {
            "description": "Optional. It is tenant detail like wallet type, wallet, admin users exported Tenant Configuration as JSON"
          },
          "industrialClassification": {
            "type": "string",
            "minLength": 3,
            "maxLength": 50
          },
          "industrialSector": {
            "type": "string",
            "minLength": 3,
            "maxLength": 50
          },
          "institution": {
            "type": "string",
            "description": "Optional. The accountable institution that the tenant falls under",
            "pattern": "^[A-Z]{3}$",
            "minLength": 3,
            "maxLength": 3
          },
          "merchantId": {
            "type": "string",
            "description": "Merchant Id used for some card payment types to the tenants wallet"
          },
          "name": {
            "type": "string",
            "description": "Name of the tenant - typically company name",
            "minLength": 3,
            "maxLength": 50
          },
          "phone1": {
            "type": "string",
            "description": "Tenants primary phone number",
            "pattern": "^[0-9]{8,16}$"
          },
          "status": {
            "$ref": "#/components/schemas/EclipseOrganisationStatus"
          },
          "taxNumber": {
            "type": "string",
            "description": "Tax number of the tenant",
            "minLength": 3,
            "maxLength": 20
          },
          "tenantId": {
            "type": "integer",
            "format": "int64",
            "description": "Unique identifier for a tenant. System generated upon creation of a new tenant. Should be passed as a path parameter for many of the API's which are specific to the tenant",
            "exclusiveMinimum": 0
          },
          "tenantSetupTemplate": {
            "type": "string",
            "description": "Tenant setup config template. if value is passed then tenant will be updated based on the template"
          },
          "tradingName": {
            "type": "string",
            "minLength": 3,
            "maxLength": 50
          },
          "vatNumber": {
            "type": "string",
            "description": "VAT number of Tenant"
          },
          "version": {
            "type": "integer",
            "format": "int32",
            "description": "A number indicating the version of the record. Updates will only be accepted if the passed in version is the same as the current version on record. This is in order to prevent concurrent modifications by multiple users.",
            "minimum": 0
          }
        },
        "required": [
          "phone1",
          "version"
        ]
      }
    },
    "securitySchemes": {
      "JWTBearerAuthorisation": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    }
  },
  "info": {
    "description": "A RESTful API using JSON as the data transfer model, covering all tenant-facing functionality in the Eclipse payments platform.",
    "title": "Eclipse ReST API",
    "version": "3.0.0"
  },
  "tags": [
    {
      "name": "b) Tenant Configuration & Onboarding",
      "description": "Manages tenant lifecycle, configuration, wallets, billing, notifications, and related onboarding operations."
    }
  ],
  "paths": {
    "/eclipse-conductor/rest/v1/tenants/{tenantId}": {
      "put": {
        "summary": "Update an existing tenant",
        "description": "Updates the tenant record and returns the updated tenant.",
        "tags": [
          "b) Tenant Configuration & Onboarding"
        ],
        "parameters": [
          {
            "name": "tenantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatedEclipseTenant"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EclipseTenant"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "404": {
            "description": "Tenant not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ExceptionData"
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ExceptionData"
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "JWTBearerAuthorisation": []
          }
        ]
      }
    }
  }
}
```