{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/adyen/main/json-schema/adyen-balance-transfer-response-schema.json",
  "title": "BalanceTransferResponse",
  "x-generated": "2026-10-12",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/adyen-balance-api-openapi.yml#/components/schemas/BalanceTransferResponse",
  "properties": {
    "amount": {
      "description": "The amount of the transfer in [minor units](https://docs.adyen.com/development-resources/currency-codes).",
      "$ref": "#/$defs/Amount"
    },
    "createdAt": {
      "description": "The date when the balance transfer was requested.",
      "format": "date-time",
      "type": "string"
    },
    "description": {
      "description": "A human-readable description for the transfer. You can use alphanumeric characters and hyphens. We recommend sending a maximum of 140 characters, otherwise the description may be truncated.",
      "maxLength": 140,
      "type": "string"
    },
    "fromMerchant": {
      "description": "The unique identifier of the source merchant account from which funds are deducted.",
      "type": "string"
    },
    "pspReference": {
      "description": "Adyen's 16-character string reference associated with the balance transfer.",
      "type": "string"
    },
    "reference": {
      "description": "A reference for the balance transfer. If you don't provide this in the request, Adyen generates a unique reference.\nMaximum length: 80 characters.",
      "maxLength": 80,
      "type": "string"
    },
    "status": {
      "description": "The status of the balance transfer. Possible values: **transferred**, **failed**, **error**, and **notEnoughBalance**.",
      "enum": [
        "error",
        "failed",
        "notEnoughBalance",
        "transferred"
      ],
      "type": "string"
    },
    "toMerchant": {
      "description": "The unique identifier of the destination merchant account from which funds are transferred.",
      "type": "string"
    },
    "type": {
      "description": "The type of balance transfer. Possible values: **tax**, **fee**, **terminalSale**, **credit**, **debit**, and **adjustment**.",
      "enum": [
        "tax",
        "fee",
        "terminalSale",
        "credit",
        "debit",
        "adjustment"
      ],
      "type": "string"
    }
  },
  "required": [
    "amount",
    "fromMerchant",
    "toMerchant",
    "type",
    "pspReference",
    "status",
    "createdAt"
  ],
  "type": "object",
  "$defs": {
    "Amount": {
      "properties": {
        "currency": {
          "description": "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).",
          "maxLength": 3,
          "minLength": 3,
          "type": "string"
        },
        "value": {
          "description": "The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).",
          "format": "int64",
          "type": "integer"
        }
      },
      "required": [
        "value",
        "currency"
      ],
      "type": "object"
    }
  }
}