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

# Update a wallet type

Updates the configuration of an existing wallet type. Changes apply to all wallets created with this type.

# 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": {
      "Avp": {
        "description": "An attribute/value pair for providing weakly typed data on various messages",
        "type": "object",
        "required": [
          "att",
          "val"
        ],
        "properties": {
          "att": {
            "type": "string",
            "pattern": "\\S"
          },
          "val": {
            "type": "string"
          }
        }
      },
      "EclipseWalletType": {
        "description": "Holds the configuration of a type of wallet for a tenant. Changes to the walletType will result in changes in all wallets that are of that type. This is useful for managing the configuration of wallets. Every wallet has one and only one wallet type. A wallet type can have zero to many wallets of its type",
        "type": "object",
        "properties": {
          "configuration": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Avp"
            },
            "description": "Weakly typed list of configuration settings on the wallet. The available settings and their impact on wallet behaviour are provided independently of the swagger API document"
          },
          "mode": {
            "$ref": "#/components/schemas/WalletMode",
            "description": "The top level mode of this wallet",
            "type": "string"
          },
          "name": {
            "type": "string",
            "description": "A name for the wallet type"
          },
          "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
          },
          "walletTypeId": {
            "type": "integer",
            "format": "int32",
            "description": "Unique system generated identifier for the wallet type",
            "exclusiveMinimum": 0
          }
        },
        "required": [
          "name",
          "mode",
          "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"
        ]
      },
      "UpdatedEclipseWalletType": {
        "description": "Holds the configuration of a type of wallet for a tenant. Changes to the walletType will result in changes in all wallets that are of that type. This is useful for managing the configuration of wallets. Every wallet has one and only one wallet type. A wallet type can have zero to many wallets of its type",
        "type": "object",
        "required": [
          "name",
          "version"
        ],
        "properties": {
          "configuration": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Avp"
            },
            "description": "Weakly typed list of configuration settings on the wallet. The available settings and their impact on wallet behaviour are provided independently of the swagger API document"
          },
          "mode": {
            "$ref": "#/components/schemas/WalletMode",
            "description": "The top level mode of this wallet",
            "type": "string"
          },
          "name": {
            "type": "string",
            "description": "A name for the wallet type"
          },
          "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
          }
        }
      },
      "WalletMode": {
        "description": "The high level mode of the wallet type CLOSED_LOOP_DIGITAL:Digital wallet without ability to pay offnet, SYSTEM:System wallets where the balance is not owned by the tenant or the amount therein is not real money, CRYPTO:Crypto currency wallet backed by a crypto exchange",
        "type": "string",
        "enum": [
          "BANK_ACCOUNT",
          "BK_DEBIT_ACCOUNT",
          "CLOSED_LOOP_CREDIT_WALLET",
          "CLOSED_LOOP_DIGITAL",
          "CRYPTO",
          "CRYPTO_XION",
          "DEBIT_RECEIVEONLY_CARD",
          "DTB_EXTERNAL_SOV",
          "IPSL",
          "MOMENTUM",
          "PLUGGABLE",
          "PREPAID_RECEIVEONLY_CARD",
          "RCS_FORWARDING_WALLET",
          "SOM_BANK",
          "STP_VOUCHER",
          "STP_VOUCHER_BNPL",
          "SYSTEM",
          "VALR",
          "ZIM_POSTILION_CLOSED_LOOP"
        ]
      }
    },
    "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": "c) Wallet Types & Configuration",
      "description": "Retrieve, update, and delete individual wallet type configurations that govern wallet behaviour and constraints for a tenant."
    }
  ],
  "paths": {
    "/eclipse-conductor/rest/v1/tenants/{tenantId}/wallet-types/{walletTypeId}": {
      "put": {
        "summary": "Update a wallet type",
        "description": "Updates the configuration of an existing wallet type. Changes apply to all wallets created with this type.",
        "tags": [
          "c) Wallet Types & Configuration"
        ],
        "parameters": [
          {
            "name": "tenantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "walletTypeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatedEclipseWalletType"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EclipseWalletType"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "404": {
            "description": "Wallet type 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": []
          }
        ]
      }
    }
  }
}
```