{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "complaint.schema.json",
  "title": "Complaint",
  "description": "Рекламация",
  "type": "object",
  "properties": {
    "allOf": [
      {
        "title": "Document",
        "$ref": "document.schema.json"
      }
    ],
    "order": {
      "description": "Заявка, по которой создана рекламация",
      "$ref": "document-order.schema.json"
    },
    "createdBy": {
      "type": "string",
      "description": "id пользователя, создавшего рекламацию"
    },
    "type": {
      "enum": [
        "PAYMENT_SEARCH",
        "ADJUSTMENT",
        "COMPLIANCE_REQUEST",
        "REFUND_SEARCH",
        "REFUND_RECEIVED"
      ],
      "description": "Тип документа. PAYMENT_SEARCH - Розыск платежа,  ADJUSTMENT - Уточнение реквизитов,  COMPLIANCE_REQUEST - Комплаенс-запрос,  REFUND - Поиск возврата, REFUND_RECEIVED - Поступил возврат"
    },
    "closedAt": {
      "type": "string",
      "format": "date",
      "description": "Дата закрытия"
    },
    "closedBy": {
      "type": "string",
      "description": "id пользователя, закрывшего рекламацию"
    },
    "status": {
      "enum": [
        "ACTIVE",
        "CLOSED"
      ],
      "description": "Статус"
    },
    "comment": {
      "description": "Комментарий",
      "type": "string"
    },
    "isClaim": {
      "type": "boolean",
      "description": "Является претензией"
    },
    "isReminderRequired": {
      "type": "boolean",
      "description": "Требуется отправка напоминание"
    },
    "refundDate": {
      "type": "string",
      "format": "date",
      "description": "Дата возврата платежа"
    },
    "refundAmount": {
      "type": "number",
      "description": "Сумма возврата"
    },
    "refundReason": {
      "type": "string",
      "description": "Причина возврата"
    },
    "refundAction": {
      "enum": [
        "REEXECUTION",
        "REFUND"
      ],
      "description": "Действие при возврате платежа. REEXECUTION - переисполнение заявки, REFUND - возврат средств клиенту"
    },
    "reExecutionOrder": {
      "$ref": "document-order.schema.json",
      "description": "Заявка на переисполнение"
    }
  }
}