{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/orion-advisor-solutions/json-schema/orion-advisor-solutions-oas-web-api-dto-billing-referral-payout-dto-schema.json",
  "title": "OAS.WebApi.DTO.Billing.ReferralPayoutDto",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/orion-advisor-solutions-billing-referralpayouts-api-openapi.yml#/components/schemas/OAS.WebApi.DTO.Billing.ReferralPayoutDto",
  "properties": {
    "id": {
      "type": "integer",
      "format": "int32"
    },
    "payoutName": {
      "type": "string"
    },
    "payoutType": {
      "type": "string",
      "enum": [
        "Perpetual",
        "Tiers",
        "OneTime"
      ]
    },
    "amountType": {
      "type": "string",
      "enum": [
        "Percent",
        "Dollars",
        "Shares"
      ]
    },
    "payoutFrequency": {
      "type": "string",
      "enum": [
        "Quarterly",
        "Annually"
      ]
    },
    "amounts": {
      "type": "string"
    },
    "accountReferralCount": {
      "type": "integer",
      "format": "int32"
    },
    "accountReferrals": {
      "items": {
        "$ref": "#/$defs/OAS.WebApi.DTO.Billing.AccountReferralDto"
      },
      "type": "array"
    },
    "createdBy": {
      "type": "string"
    },
    "createdDate": {
      "type": "string",
      "format": "date-time"
    },
    "editedBy": {
      "type": "string"
    },
    "editedDate": {
      "type": "string",
      "format": "date-time"
    }
  },
  "type": "object",
  "$defs": {
    "OAS.WebApi.DTO.Billing.AccountReferralDto": {
      "properties": {
        "id": {
          "type": "integer",
          "format": "int32"
        },
        "billEntityId": {
          "type": "integer",
          "format": "int32"
        },
        "payee": {
          "type": "integer",
          "format": "int32"
        },
        "startDate": {
          "type": "string",
          "format": "date-time"
        },
        "completeDate": {
          "type": "string",
          "format": "date-time"
        },
        "accountName": {
          "type": "string"
        },
        "accountId": {
          "type": "integer",
          "format": "int32"
        },
        "createdBy": {
          "type": "string"
        },
        "createdDate": {
          "type": "string",
          "format": "date-time"
        },
        "editedBy": {
          "type": "string"
        },
        "editedDate": {
          "type": "string",
          "format": "date-time"
        },
        "referralPayoutId": {
          "type": "integer",
          "format": "int32"
        }
      },
      "type": "object"
    }
  }
}