{
  "openapi": "3.1.0",
  "info": {
    "title": "Accrual Service",
    "version": "ae09a180156b",
    "summary": "DgCore platform API surface for the Accrual Service domain.",
    "description": "The Accrual Service domain: 70 operations across 9 resource groups.\n\nThis is the published contract, not a description of a running deployment: the environment\nyou were granted may carry operations this document does not, and may not carry every\noperation listed here."
  },
  "servers": [
    {
      "url": "https://{gateway}/accrual-service",
      "description": "The full route is `https://<gateway>/accrual-service/<path>`. The service segment is fixed; the gateway host is the one you were granted. Substitute it below.",
      "variables": {
        "gateway": {
          "default": "gateway.example"
        }
      }
    }
  ],
  "tags": [
    {
      "name": "batch-catalog",
      "description": "Operations addressed under `/batch-catalog` — 1 operation.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "calculations",
      "description": "Operations addressed under `/calculations` — 10 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "compensating-transactions",
      "description": "Operations addressed under `/compensating-transactions` — 2 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "data-migrations",
      "description": "Operations addressed under `/data-migrations` — 1 operation.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "execute",
      "description": "Operations addressed under `/execute` — 2 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "localizations",
      "description": "Operations addressed under `/localizations` — 10 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "parameters",
      "description": "Operations addressed under `/parameters` — 21 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "products",
      "description": "Operations addressed under `/products` — 13 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "transactions",
      "description": "Operations addressed under `/transactions` — 10 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    }
  ],
  "paths": {
    "/batch-catalog": {
      "post": {
        "operationId": "accrual-batch-catalog",
        "tags": [
          "batch-catalog"
        ],
        "summary": "accrual-batch-catalog",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "sequenceNumber": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "sequenceNumber"
                  },
                  "serviceCode": {
                    "type": "string",
                    "x-aura-field-code": "serviceCode"
                  },
                  "variables": {
                    "type": "object",
                    "x-aura-field-code": "variables"
                  }
                },
                "required": [
                  "sequenceNumber",
                  "serviceCode",
                  "variables"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-batch-catalog",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "batch-catalog",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "declared-non-dto",
          "note": "The route declares `IEnumerable<object>`. `object` is the C# base type, so the code states that a body is returned and declines to say what is in it — the shape is chosen at runtime, and the body is a JSON array whose elements need not share a shape. That is the declaration, not a failure to read it, and nothing here narrows it.",
          "declared_type": "IEnumerable<object>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "object"
        }
      }
    },
    "/calculations": {
      "get": {
        "operationId": "get-accrual-calculation-list",
        "tags": [
          "calculations"
        ],
        "summary": "get-accrual-calculation-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "accountingEntryId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "accountingEntryId"
                      },
                      "accountingEntryProcessType": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "accountingEntryProcessType"
                      },
                      "accrualCashFlowId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "accrualCashFlowId"
                      },
                      "accrualDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "accrualDate"
                      },
                      "accrualProductFormulaId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "accrualProductFormulaId"
                      },
                      "accrualTransactionId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "accrualTransactionId"
                      },
                      "dayCount": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "dayCount"
                      },
                      "periodAccruedAmount": {
                        "type": "number",
                        "format": "decimal",
                        "x-aura-field-code": "periodAccruedAmount"
                      },
                      "reversalAccountingEntryId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "reversalAccountingEntryId"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-accrual-calculation-list",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "calculations",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<AccrualCalculationDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "AccrualCalculationDto",
          "collection": true,
          "members": [
            {
              "name": "AccrualDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualTransactionId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualCashFlowId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "PeriodAccruedAmount",
              "declared_type": "decimal?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccountingEntryProcessType",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccountingEntryId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ReversalAccountingEntryId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "DayCount",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualProductFormulaId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "CalculationType",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      },
      "post": {
        "operationId": "calculate-accrual",
        "tags": [
          "calculations"
        ],
        "summary": "calculate-accrual",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accrualProductId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "accrualProductId"
                  },
                  "cashFlow": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "amount": {
                          "type": "number",
                          "format": "decimal",
                          "x-aura-field-code": "cashFlowAmount"
                        },
                        "currencyNumber": {
                          "type": "string",
                          "x-aura-field-code": "currencyNumber"
                        },
                        "direction": {
                          "type": "integer",
                          "format": "int32",
                          "x-aura-field-code": "cashFlowDirection"
                        },
                        "fields": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "fieldId": {
                                "type": "string",
                                "format": "uuid",
                                "x-aura-field-code": "cashFlowFieldId"
                              },
                              "fieldValue": {
                                "type": "string",
                                "x-aura-field-code": "cashFlowFieldValue"
                              }
                            },
                            "required": [
                              "fieldId",
                              "fieldValue"
                            ],
                            "x-aura-field-code": "cashFlowfields"
                          }
                        },
                        "flowDate": {
                          "type": "string",
                          "format": "date",
                          "x-aura-field-code": "flowDate"
                        },
                        "monthDayBasis": {
                          "type": "integer",
                          "format": "int32",
                          "x-aura-field-code": "monthDayBasis"
                        },
                        "ordinalPosition": {
                          "type": "integer",
                          "format": "int32",
                          "x-aura-field-code": "ordinalPosition"
                        },
                        "principalAmount": {
                          "type": "number",
                          "format": "decimal",
                          "x-aura-field-code": "principalAmount"
                        },
                        "profitAmount": {
                          "type": "number",
                          "format": "decimal",
                          "x-aura-field-code": "profitAmount"
                        },
                        "yearDayBasis": {
                          "type": "integer",
                          "format": "int32",
                          "x-aura-field-code": "yearDayBasis"
                        }
                      },
                      "required": [
                        "amount",
                        "currencyNumber",
                        "direction",
                        "fields",
                        "flowDate",
                        "monthDayBasis",
                        "ordinalPosition",
                        "principalAmount",
                        "profitAmount",
                        "yearDayBasis"
                      ],
                      "x-aura-field-code": "accrualCashFlows"
                    }
                  },
                  "earlyPaymentDiscountRate": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "earlyPaymentDiscountRate"
                  },
                  "effectiveProfitRate": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "effectiveProfitRate"
                  },
                  "maturityBeginDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "maturityBeginDate"
                  },
                  "maturityEndDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "maturityEndDate"
                  },
                  "transactionDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "transactionDate"
                  },
                  "xirr": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "xirr"
                  },
                  "yearlyProfitRate": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "yearlyProfitRate"
                  }
                },
                "required": [
                  "accrualProductId",
                  "cashFlow",
                  "earlyPaymentDiscountRate",
                  "effectiveProfitRate",
                  "maturityBeginDate",
                  "maturityEndDate",
                  "transactionDate",
                  "xirr",
                  "yearlyProfitRate"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 9,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "calculate-accrual",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "calculations",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "AccrualProductId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "TransactionDate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "MaturityBeginDate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "MaturityEndDate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "YearlyProfitRate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "Xirr",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "EffectiveProfitRate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "EarlyPaymentDiscountRate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "CalculateAccrualDto",
          "payload": "CalculateAccrualDto",
          "collection": false,
          "members": [
            {
              "name": "AccrualCalculationPeriod",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Periods",
              "declared_type": "List<PeriodItem>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_14",
              "status": 400,
              "message": {
                "ar": "نوع البيانات للقيمة المدخلة في الحقل: '{0}' غير مكتمل الصيغة. يجب أن تكون بالصيغة '{1}'.",
                "en": "Data type of the value given into field: {0} is not in correct format. It should be in {1} format.",
                "tr": "Alana verilen değerin veri türü: {0} doğru biçimde değil. {1} biçiminde olmalıdır."
              },
              "message_available": true,
              "constant_name": "FIELD_DATA_TYPE_NOT_VALID"
            },
            {
              "code": "ERR_ACCRL_2",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المنتج بالمعرّف المقدم: '{0}'.",
                "en": "Product is cannot be found with the given: {0}.",
                "tr": "Verilen ürün bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_IS_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_7",
              "status": 400,
              "message": {
                "ar": "الحقول غير مكتملة للمنتج المقدم.",
                "en": "Fields are not fully provided for the given product.",
                "tr": "Verilen ürün için alanlar tam olarak sağlanmamıştır."
              },
              "message_available": true,
              "constant_name": "ALL_ACCRUAL_PRODUCT_FIELDS_MUST_BE_PROVIDED"
            },
            {
              "code": "ERR_ACCRL_8",
              "status": 400,
              "message": {
                "ar": "الحقل غير نشط أو لا ينتمي إلى المنتج. معرف الحقل: {0}",
                "en": "Field is not active or not belong to the product. FieldId: {0}",
                "tr": "Alan aktif değil veya ürüne ait değil. Alan Kimliği: {0}"
              },
              "message_available": true,
              "constant_name": "PRODUCT_FIELD_IS_NOT_ACTIVE_OR_NOT_BELONG"
            }
          ]
        }
      }
    },
    "/calculations/accrued/by-product-id/{accrualProductId}": {
      "post": {
        "operationId": "calculate-accrued-amount-by-accrual-product-id",
        "tags": [
          "calculations"
        ],
        "summary": "calculate-accrued-amount-by-accrual-product-id",
        "parameters": [
          {
            "name": "accrualProductId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accrualDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "accrualDate"
                  }
                },
                "required": [
                  "accrualDate"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "calculatedTransactions": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "accrualCalculations": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "accrualProductFormulaCode": {
                                    "type": "string",
                                    "x-aura-field-code": "accrualProductFormulaCode"
                                  },
                                  "accrualProductFormulaId": {
                                    "type": "string",
                                    "format": "uuid",
                                    "x-aura-field-code": "accrualProductFormulaId"
                                  },
                                  "isDueCollectionFormula": {
                                    "type": "boolean",
                                    "x-aura-field-code": "isDueCollectionFormula"
                                  },
                                  "periodAccrualAmount": {
                                    "type": "number",
                                    "format": "decimal",
                                    "x-aura-field-code": "periodAccrualAmount"
                                  },
                                  "principalAmount": {
                                    "type": "number",
                                    "format": "decimal",
                                    "x-aura-field-code": "principalAmount"
                                  },
                                  "profitAmount": {
                                    "type": "number",
                                    "format": "decimal",
                                    "x-aura-field-code": "profitAmount"
                                  }
                                },
                                "x-aura-field-code": "accrualCalculations"
                              }
                            },
                            "accrualCashFlowId": {
                              "type": "string",
                              "format": "uuid",
                              "x-aura-field-code": "accrualCashFlowId"
                            },
                            "accrualStatus": {
                              "type": "integer",
                              "format": "int32",
                              "x-aura-field-code": "accrualStatus"
                            },
                            "accrualTransactionId": {
                              "type": "string",
                              "format": "uuid",
                              "x-aura-field-code": "accrualTransactionId"
                            },
                            "customerAccountId": {
                              "type": "string",
                              "format": "uuid",
                              "x-aura-field-code": "customerAccountId"
                            },
                            "productTransactionId": {
                              "type": "string",
                              "format": "uuid",
                              "x-aura-field-code": "productTransactionId"
                            },
                            "transactionOrganizationCode": {
                              "type": "string",
                              "x-aura-field-code": "transactionOrganizationCode"
                            },
                            "transactionProductLedgerCode": {
                              "type": "string",
                              "x-aura-field-code": "transactionProductLedgerCode"
                            }
                          },
                          "x-aura-field-code": "calculatedTransactions"
                        }
                      },
                      "previousAccountingEntryId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "previousAccountingEntryId"
                      },
                      "previousAccrualDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "previousAccrualDate"
                      },
                      "reversePreviousAccountingEntry": {
                        "x-aura-type": "unresolved"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "calculate-accrued-amount-by-accrual-product-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "calculations/accrued/by-product-id/{accrualProductId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "AccrualDate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualProductId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<CalculateAccruedAmountByAccrualProductIdDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "CalculateAccruedAmountByAccrualProductIdDto",
          "collection": true,
          "members": [
            {
              "name": "PreviousAccountingEntryId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "PreviousAccrualDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ReversePreviousAccountingEntry",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CalculatedTransactions",
              "declared_type": "List<CalculatedTransactionItem>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_2",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المنتج بالمعرّف المقدم: '{0}'.",
                "en": "Product is cannot be found with the given: {0}.",
                "tr": "Verilen ürün bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_IS_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_6",
              "status": 400,
              "message": {
                "ar": "غير مسموح بحساب المخصص للمنتجات التي يكون نوع عملية قيدها المحاسبي هو \" فردي\" باستخدام طريقة الحساب الجماعي. معرف المنتج المعتمد: '{0}'.",
                "en": "It is not allowed to calculate accrual for products whose accounting entry process type is Single with mass calculation method. accrual Product: {0}.",
                "tr": "Muhasebe giriş işlem türü Tek olan ürünlerin tahakkuklarının kütle hesaplama yöntemi ile hesaplanmasına izin verilmez. Tahakkuk eden Ürün Kodu: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_ENTRY_TYPE_MUST_BE_MASS"
            }
          ]
        }
      }
    },
    "/calculations/accrued/by-transaction-id/{accrualTransactionId}": {
      "post": {
        "operationId": "calculate-accrued-amount-by-accrual-transaction-id",
        "tags": [
          "calculations"
        ],
        "summary": "calculate-accrued-amount-by-accrual-transaction-id",
        "parameters": [
          {
            "name": "accrualTransactionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualTransactionId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accrualDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "accrualDate"
                  },
                  "isAccruedCalculation": {
                    "type": "boolean",
                    "x-aura-field-code": "isAccruedCalculation"
                  },
                  "isEarlyClosure": {
                    "type": "boolean",
                    "x-aura-field-code": "isEarlyClosure"
                  },
                  "isEarlyPayment": {
                    "type": "boolean",
                    "x-aura-field-code": "isEarlyPayment"
                  },
                  "isForceRecalculate": {
                    "type": "boolean",
                    "x-aura-field-code": "isForceRecalculate"
                  }
                },
                "required": [
                  "accrualDate",
                  "isEarlyClosure",
                  "isEarlyPayment",
                  "isForceRecalculate"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 5,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "calculate-accrued-amount-by-accrual-transaction-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "calculations/accrued/by-transaction-id/{accrualTransactionId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "AccrualDate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualTransactionId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsEarlyClosure",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsEarlyPayment",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsForceRecalculate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsTriggeredFromMassCalculation",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsAccruedCalculation",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "CalculateAccrualByAccrualTransactionIdDto",
          "payload": "CalculateAccrualByAccrualTransactionIdDto",
          "collection": false,
          "members": [
            {
              "name": "AccrualDate",
              "declared_type": "DateOnly",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualTransactionId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualCashFlowId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualProductType",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualType",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccountingEntryProcessType",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsLastDay",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "TransactionProductLedgerCode",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "TransactionOrganizationCode",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualStatus",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerAccountId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsEarlyClosure",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsEarlyPayment",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsForceRecalculate",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "PrincipalAmount",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProfitAmount",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualCalculations",
              "declared_type": "List<AccrualCalculationByTransactionDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "AccountingEntriesToBeReversed",
              "declared_type": "List<AccountingEntryToBeReversed>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_11",
              "status": 400,
              "message": {
                "ar": "لا يُسمح بحساب الاستحقاق للمنتجات التي نوع عملية قيدها المحاسبي هو جماعي مع طريقة حساب المعاملة الواحدة.",
                "en": "It is not allowed to calculate accrual for products whose accounting entry process type is mass with single transaction calculation method.",
                "tr": "Tek işlem hesaplama yöntemi ile muhasebe giriş işlem türü toplu olan ürünler için tahakkuk hesaplamasına izin verilmez."
              },
              "message_available": true,
              "constant_name": "MASS_ENTRY_TYPE_CANNOT_BE_SINGLE_TRANSACTION"
            },
            {
              "code": "ERR_ACCRL_16",
              "status": 400,
              "message": {
                "ar": "تدفق النقد '{0}' الذي يغطي تاريخ الاستحقاق المحدد في الحالة '{1}'. لا يمكن حساب الاستحقاق.",
                "en": "Cash flow {0} which covers the given accrual date is at {1} status. Accrual cannot be calculated.",
                "tr": "Verilen tahakkuk tarihini kapsayan {0} nakit akışı {1} durumundadır. Tahakkuk hesaplanamaz."
              },
              "message_available": true,
              "constant_name": "CASH_FLOW_STATUS_NOT_VALID_FOR_CALCULATION"
            },
            {
              "code": "ERR_ACCRL_26",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "TRANSACTION_ISEARLYPAYMENT_AND_ISEARLYCLOSURE_TRUE"
            },
            {
              "code": "ERR_ACCRL_29",
              "status": 400,
              "message": {
                "ar": "تعذر إجراء الحساب. «{0}» ليست تاريخ استحقاق التدفقات النقدية.",
                "en": "Calculation could not made. {0} is not due date of the cash flow.",
                "tr": "Hesaplama yapılamadı. {0} nakit akışının vadesi değildir."
              },
              "message_available": true,
              "constant_name": "ACCRUED_AMOUNT_BYACCRUAL_TRANSACTION_CALCULATION_COULDNOT_MADE"
            }
          ]
        }
      }
    },
    "/calculations/by-product-id/{accrualProductId}": {
      "post": {
        "operationId": "calculate-accrual-by-accrual-product-id",
        "tags": [
          "calculations"
        ],
        "summary": "calculate-accrual-by-accrual-product-id",
        "parameters": [
          {
            "name": "accrualProductId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accrualDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "accrualDate"
                  }
                },
                "required": [
                  "accrualDate"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "calculate-accrual-by-accrual-product-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "calculations/by-product-id/{accrualProductId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "AccrualDate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualProductId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "CalculateAccrualByAccrualProductIdDto",
          "payload": "CalculateAccrualByAccrualProductIdDto",
          "collection": false,
          "members": [
            {
              "name": "AccrualDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualProductType",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualType",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Organizations",
              "declared_type": "List<OrganizationItem>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_2",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المنتج بالمعرّف المقدم: '{0}'.",
                "en": "Product is cannot be found with the given: {0}.",
                "tr": "Verilen ürün bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_IS_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_6",
              "status": 400,
              "message": {
                "ar": "غير مسموح بحساب المخصص للمنتجات التي يكون نوع عملية قيدها المحاسبي هو \" فردي\" باستخدام طريقة الحساب الجماعي. معرف المنتج المعتمد: '{0}'.",
                "en": "It is not allowed to calculate accrual for products whose accounting entry process type is Single with mass calculation method. accrual Product: {0}.",
                "tr": "Muhasebe giriş işlem türü Tek olan ürünlerin tahakkuklarının kütle hesaplama yöntemi ile hesaplanmasına izin verilmez. Tahakkuk eden Ürün Kodu: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_ENTRY_TYPE_MUST_BE_MASS"
            }
          ]
        }
      }
    },
    "/calculations/by-product-transaction-id/{productTransactionId}": {
      "get": {
        "operationId": "get-accrual-calculation-by-product-transaction-id",
        "tags": [
          "calculations"
        ],
        "summary": "get-accrual-calculation-by-product-transaction-id",
        "parameters": [
          {
            "name": "productTransactionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "productTransactionId"
            }
          },
          {
            "name": "flowDate",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date",
              "x-aura-field-code": "flowDate"
            }
          },
          {
            "name": "isDueCollection",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "isDueCollection"
            }
          },
          {
            "name": "isEarlyClosure",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "isEarlyClosure"
            }
          },
          {
            "name": "isEarlyPayment",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "isEarlyPayment"
            }
          },
          {
            "name": "queryDate",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date",
              "x-aura-field-code": "accrualQueryDate"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares this returns a single record. Of 25 operations in this state with a probeable route, 8 answered and 6 returned a single record — the other two returned a collection and a bare boolean.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "acccrualStatus": {
                      "type": "integer",
                      "format": "int32",
                      "x-aura-field-code": "accrualStatus"
                    },
                    "accruedAmount": {
                      "type": "number",
                      "format": "decimal",
                      "x-aura-field-code": "accruedAmount"
                    },
                    "cashFlowId": {
                      "type": "string",
                      "format": "uuid",
                      "x-aura-field-code": "accrualCashFlowId"
                    },
                    "flowDate": {
                      "type": "string",
                      "format": "date",
                      "x-aura-field-code": "flowDate"
                    },
                    "ordinalPosition": {
                      "type": "integer",
                      "format": "int32",
                      "x-aura-field-code": "ordinalPosition"
                    },
                    "productTransactionId": {
                      "type": "string",
                      "format": "uuid",
                      "x-aura-field-code": "productTransactionId"
                    },
                    "queryDate": {
                      "type": "string",
                      "format": "date",
                      "x-aura-field-code": "accrualQueryDate"
                    }
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-accrual-calculation-by-product-transaction-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "calculations/by-product-transaction-id/{productTransactionId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "ProductTransactionId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FlowDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsEarlyPayment",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsEarlyClosure",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsDueCollection",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "QueryDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AccrualCalculationByProductTransactionIdDto",
          "payload": "AccrualCalculationByProductTransactionIdDto",
          "collection": false,
          "members": [
            {
              "name": "QueryDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ProductTransactionId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrdinalPosition",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "FlowDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccruedAmount",
              "declared_type": "decimal?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AcccrualStatus",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "CashFlowId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_28",
              "status": 400,
              "message": {
                "ar": "يمكن أن تكون قيمة واحدة فقط من القيم التالية صحيحة في نفس الوقت: الدفع المبكر، الإغلاق المبكر، التحصيل المستحق.",
                "en": "Only one of the following values can be true at the same time: Early Payment, Early Closure, Due Collection.",
                "tr": "Aşağıdaki değerlerden yalnızca biri aynı anda doğru olabilir: erken ödeme, erken kapatma, erken tahsilat."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_CALCULATION_QUERY_FIELD_BOOL_CONTROL"
            }
          ]
        }
      }
    },
    "/calculations/by-transaction-id/{accrualTransactionId}": {
      "get": {
        "operationId": "get-accrual-calculation-by-transaction-id",
        "tags": [
          "calculations"
        ],
        "summary": "get-accrual-calculation-by-transaction-id",
        "parameters": [
          {
            "name": "accrualTransactionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualTransactionId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-accrual-calculation-by-transaction-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "calculations/by-transaction-id/{accrualTransactionId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "AccrualTransactionId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AccrualCalculationByTransactionIdDto",
          "payload": "AccrualCalculationByTransactionIdDto",
          "collection": false,
          "members": [
            {
              "name": "AccrualProductType",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualType",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccountingEntryProcessType",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "LastDayAccountingType",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "CashFlows",
              "declared_type": "List<CashFlowItem>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        }
      },
      "post": {
        "operationId": "calculate-accrual-by-accrual-transaction-id",
        "tags": [
          "calculations"
        ],
        "summary": "calculate-accrual-by-accrual-transaction-id",
        "parameters": [
          {
            "name": "accrualTransactionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualTransactionId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accrualDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "accrualDate"
                  },
                  "isForceRecalculate": {
                    "type": "boolean",
                    "x-aura-field-code": "isForceRecalculate"
                  }
                },
                "required": [
                  "accrualDate",
                  "isForceRecalculate"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "calculate-accrual-by-accrual-transaction-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "calculations/by-transaction-id/{accrualTransactionId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "AccrualDate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualTransactionId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsForceRecalculate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsTriggeredFromMassCalculation",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "CalculateAccrualByAccrualTransactionIdDto",
          "payload": "CalculateAccrualByAccrualTransactionIdDto",
          "collection": false,
          "members": [
            {
              "name": "AccrualDate",
              "declared_type": "DateOnly",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualTransactionId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualCashFlowId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualProductType",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualType",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccountingEntryProcessType",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsLastDay",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "TransactionProductLedgerCode",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "TransactionOrganizationCode",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualStatus",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerAccountId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsEarlyClosure",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsEarlyPayment",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsForceRecalculate",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "PrincipalAmount",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProfitAmount",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualCalculations",
              "declared_type": "List<AccrualCalculationByTransactionDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "AccountingEntriesToBeReversed",
              "declared_type": "List<AccountingEntryToBeReversed>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_11",
              "status": 400,
              "message": {
                "ar": "لا يُسمح بحساب الاستحقاق للمنتجات التي نوع عملية قيدها المحاسبي هو جماعي مع طريقة حساب المعاملة الواحدة.",
                "en": "It is not allowed to calculate accrual for products whose accounting entry process type is mass with single transaction calculation method.",
                "tr": "Tek işlem hesaplama yöntemi ile muhasebe giriş işlem türü toplu olan ürünler için tahakkuk hesaplamasına izin verilmez."
              },
              "message_available": true,
              "constant_name": "MASS_ENTRY_TYPE_CANNOT_BE_SINGLE_TRANSACTION"
            },
            {
              "code": "ERR_ACCRL_16",
              "status": 400,
              "message": {
                "ar": "تدفق النقد '{0}' الذي يغطي تاريخ الاستحقاق المحدد في الحالة '{1}'. لا يمكن حساب الاستحقاق.",
                "en": "Cash flow {0} which covers the given accrual date is at {1} status. Accrual cannot be calculated.",
                "tr": "Verilen tahakkuk tarihini kapsayan {0} nakit akışı {1} durumundadır. Tahakkuk hesaplanamaz."
              },
              "message_available": true,
              "constant_name": "CASH_FLOW_STATUS_NOT_VALID_FOR_CALCULATION"
            }
          ]
        }
      },
      "put": {
        "operationId": "update-accrual-calculation-by-transaction-id",
        "tags": [
          "calculations"
        ],
        "summary": "update-accrual-calculation-by-transaction-id",
        "parameters": [
          {
            "name": "accrualTransactionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualTransactionId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accountingEntryId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "accountingEntryId"
                  },
                  "accrualCashFlowId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "accrualCashFlowId"
                  },
                  "accrualDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "accrualDate"
                  },
                  "accrualProductFormulaId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "accrualProductFormulaId"
                  },
                  "reversalAccountingEntryId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "reversalAccountingEntryId"
                  }
                },
                "required": [
                  "accrualDate"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 5,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-accrual-calculation-by-transaction-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "calculations/by-transaction-id/{accrualTransactionId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "AccrualTransactionId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccountingEntryId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "ReversalAccountingEntryId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualProductFormulaId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualCashFlowId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_18",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على الفترة بالمعرف المُعطى: '{0}' والتاريخ '{1}'.",
                "en": "Period is cannot be found with given:{0} and date {1}.",
                "tr": "Verilen periyot bulunamadı: {0} ve {1} tarihi."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_CALCULATION_NOT_FOUND_BY_TRANSACTION_ID_AND_ACCRUAL_DATE"
            }
          ]
        }
      }
    },
    "/calculations/by-transaction-id/{accrualTransactionId}/accounting-entry": {
      "get": {
        "operationId": "get-accrual-last-accounting-entry-by-transaction-id",
        "tags": [
          "calculations"
        ],
        "summary": "get-accrual-last-accounting-entry-by-transaction-id",
        "parameters": [
          {
            "name": "accrualTransactionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualTransactionId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "lastAccountingEntryId": {
                        "x-aura-type": "unresolved"
                      },
                      "otherTransactions": {
                        "type": "object",
                        "properties": {
                          "accountingEntryId": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "accountingEntryId"
                          },
                          "accountingEntryProcessType": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "accountingEntryProcessType"
                          },
                          "accrualCashFlowId": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "accrualCashFlowId"
                          },
                          "accrualDate": {
                            "type": "string",
                            "format": "date",
                            "x-aura-field-code": "accrualDate"
                          },
                          "accrualProductFormulaId": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "accrualProductFormulaId"
                          },
                          "accrualTransactionId": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "accrualTransactionId"
                          },
                          "dayCount": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "dayCount"
                          },
                          "periodAccruedAmount": {
                            "type": "number",
                            "format": "decimal",
                            "x-aura-field-code": "periodAccruedAmount"
                          },
                          "reversalAccountingEntryId": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "reversalAccountingEntryId"
                          }
                        },
                        "x-aura-type": "unresolved"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-accrual-last-accounting-entry-by-transaction-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "calculations/by-transaction-id/{accrualTransactionId}/accounting-entry",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "AccrualTransactionId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "List<AccrualLastAccountingEntryDto>",
          "envelopes": [
            "List"
          ],
          "payload": "AccrualLastAccountingEntryDto",
          "collection": true,
          "members": [
            {
              "name": "LastAccountingEntryId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "OtherTransactions",
              "declared_type": "List<AccrualCalculationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      }
    },
    "/compensating-transactions/commit": {
      "post": {
        "operationId": "accrual-commit-compensating-transaction",
        "tags": [
          "compensating-transactions"
        ],
        "summary": "accrual-commit-compensating-transaction",
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-commit-compensating-transaction",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "compensating-transactions/commit",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        }
      }
    },
    "/compensating-transactions/rollback": {
      "post": {
        "operationId": "accrual-rollback-compensating-transaction",
        "tags": [
          "compensating-transactions"
        ],
        "summary": "accrual-rollback-compensating-transaction",
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-rollback-compensating-transaction",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "compensating-transactions/rollback",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        }
      }
    },
    "/data-migrations": {
      "get": {
        "operationId": "accrual-get-data-migration-list",
        "tags": [
          "data-migrations"
        ],
        "x-aura-documentation": {
          "language": "en",
          "status": "structural-fallback",
          "source": "catalog-structure"
        },
        "summary": "Returns data migration records",
        "description": "Invokes the `accrual-get-data-migration-list` service definition through `GET /data-migrations`.\n\nTurkish display name: Data migration listesini döner",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-get-data-migration-list",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "data-migrations",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "List<DataMigrationDto>",
          "envelopes": [
            "List"
          ],
          "payload": "DataMigrationDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "BranchName",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "TableName",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "LastCommittedId",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "LastCommittedDate",
              "declared_type": "DateTime",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Script",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Parameters",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "HasError",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ErrorMessage",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "DatabaseName",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CreatedDate",
              "declared_type": "DateTime",
              "nullable": false,
              "collection": false
            },
            {
              "name": "TransactionStatus",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      }
    },
    "/execute/accrual-rediscount": {
      "post": {
        "operationId": "execute-accrual-rediscount-and-complete-accounting-process",
        "tags": [
          "execute"
        ],
        "summary": "execute-accrual-rediscount-and-complete-accounting-process",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accountingEntryProcessType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accountingEntryProcessType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "acc_entry_process_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "Mass"
                        },
                        {
                          "value": 2,
                          "name": "Single"
                        }
                      ]
                    }
                  },
                  "accrualDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "accrualDate"
                  }
                },
                "required": [
                  "accountingEntryProcessType",
                  "accrualDate"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "execute-accrual-rediscount-and-complete-accounting-process",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "execute/accrual-rediscount",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "AccountingEntryProcessType",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualDate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        }
      }
    },
    "/execute/accrued-calculation": {
      "post": {
        "operationId": "execute-accrued-calculation-and-complete-accounting-process",
        "tags": [
          "execute"
        ],
        "summary": "execute-accrued-calculation-and-complete-accounting-process",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accountingEntryProcessType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accountingEntryProcessType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "acc_entry_process_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "Mass"
                        },
                        {
                          "value": 2,
                          "name": "Single"
                        }
                      ]
                    }
                  },
                  "accrualDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "accrualDate"
                  }
                },
                "required": [
                  "accountingEntryProcessType",
                  "accrualDate"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "execute-accrued-calculation-and-complete-accounting-process",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "execute/accrued-calculation",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "AccountingEntryProcessType",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualDate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        }
      }
    },
    "/localizations": {
      "get": {
        "operationId": "accrual-get-localization-list",
        "tags": [
          "localizations"
        ],
        "summary": "accrual-get-localization-list",
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-get-localization-list",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "localizations",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<LocalizationDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "LocalizationDto",
          "collection": true,
          "members": [
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Type",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<LocalizationTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      },
      "post": {
        "operationId": "accrual-create-localization",
        "tags": [
          "localizations"
        ],
        "summary": "accrual-create-localization",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "x-aura-field-code": "localizationCode"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  },
                  "type": {
                    "type": "string",
                    "x-aura-field-code": "localizationType"
                  }
                },
                "required": [
                  "code",
                  "translations",
                  "type"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-create-localization",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "localizations",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_1",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/localizations/by-code/{code}": {
      "get": {
        "operationId": "accrual-get-localization-by-code",
        "tags": [
          "localizations"
        ],
        "summary": "accrual-get-localization-by-code",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "x-aura-field-code": "localizationCode"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-get-localization-by-code",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "localizations/by-code/{code}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "LocalizationDto",
          "payload": "LocalizationDto",
          "collection": false,
          "members": [
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Type",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<LocalizationTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/localizations/{id}": {
      "delete": {
        "operationId": "accrual-delete-localization",
        "tags": [
          "localizations"
        ],
        "summary": "accrual-delete-localization",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "localizationId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-delete-localization",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "localizations/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      },
      "get": {
        "operationId": "accrual-get-localization-by-id",
        "tags": [
          "localizations"
        ],
        "summary": "accrual-get-localization-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "localizationId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-get-localization-by-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "localizations/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "LocalizationDto",
          "payload": "LocalizationDto",
          "collection": false,
          "members": [
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Type",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<LocalizationTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      },
      "put": {
        "operationId": "accrual-update-localization",
        "tags": [
          "localizations"
        ],
        "summary": "accrual-update-localization",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "localizationId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  },
                  "type": {
                    "type": "string",
                    "x-aura-field-code": "localizationType"
                  }
                },
                "required": [
                  "translations",
                  "type"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-update-localization",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "localizations/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/localizations/{id}/translations": {
      "get": {
        "operationId": "accrual-get-localization-translation-by-localization-id",
        "tags": [
          "localizations"
        ],
        "summary": "accrual-get-localization-translation-by-localization-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "localizationId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-get-localization-translation-by-localization-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "localizations/{id}/translations",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<LocalizationTranslationDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "LocalizationTranslationDto",
          "collection": true,
          "members": [
            {
              "name": "TranslationId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "LanguageCode",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      },
      "post": {
        "operationId": "accrual-create-localization-translation",
        "tags": [
          "localizations"
        ],
        "summary": "accrual-create-localization-translation",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "localizationId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-create-localization-translation",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "localizations/{id}/translations",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            },
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/localizations/{id}/translations/{translationId}": {
      "delete": {
        "operationId": "accrual-delete-localization-translation",
        "tags": [
          "localizations"
        ],
        "summary": "accrual-delete-localization-translation",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "localizationId"
            }
          },
          {
            "name": "translationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "translationId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-delete-localization-translation",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "localizations/{id}/translations/{translationId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            },
            {
              "code": "ERR_LCLZ_4",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      },
      "put": {
        "operationId": "accrual-update-localization-translation",
        "tags": [
          "localizations"
        ],
        "summary": "accrual-update-localization-translation",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "localizationId"
            }
          },
          {
            "name": "translationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "translationId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "context": {
                    "type": "string",
                    "x-aura-field-code": "context"
                  }
                },
                "required": [
                  "context"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-update-localization-translation",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "localizations/{id}/translations/{translationId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            },
            {
              "code": "ERR_LCLZ_4",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/parameters": {
      "get": {
        "operationId": "accrual-get-parameter-list",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-get-parameter-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "x-aura-field-code": "formulaDefinitionCode"
                },
                "expression": {
                  "type": "string",
                  "x-aura-field-code": "expression"
                },
                "parameters": {
                  "type": "object",
                  "x-aura-field-code": "filterParameters"
                }
              },
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "code": {
                        "x-aura-type": "unresolved"
                      },
                      "id": {
                        "x-aura-type": "unresolved"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActive"
                      },
                      "name": {
                        "type": "string",
                        "x-aura-field-code": "name",
                        "x-aura-maskable": true
                      },
                      "parameterFields": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "code": {
                              "x-aura-type": "unresolved"
                            },
                            "id": {
                              "x-aura-type": "unresolved"
                            },
                            "isActive": {
                              "type": "boolean",
                              "x-aura-field-code": "isActive"
                            },
                            "translations": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "languageCode": {
                                    "type": "string",
                                    "x-aura-field-code": "languageCode"
                                  },
                                  "name": {
                                    "x-aura-type": "unresolved"
                                  }
                                },
                                "x-aura-field-code": "translations"
                              }
                            }
                          },
                          "x-aura-field-code": "parameterFields"
                        }
                      },
                      "translations": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "languageCode": {
                              "type": "string",
                              "x-aura-field-code": "languageCode"
                            },
                            "name": {
                              "x-aura-type": "unresolved"
                            }
                          },
                          "x-aura-field-code": "translations"
                        }
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-get-parameter-list",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ParameterDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ParameterDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterTranslationDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "ParameterFields",
              "declared_type": "IEnumerable<ParameterFieldDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      },
      "post": {
        "operationId": "accrual-create-parameter",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-create-parameter",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "x-aura-field-code": "parameterCode"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        },
                        "name": {
                          "type": "string",
                          "x-aura-field-code": "parameterName"
                        }
                      },
                      "required": [
                        "languageCode",
                        "name"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "code",
                  "isActive",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-create-parameter",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_1",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_CODE_ALREADY_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/by-code/{code}": {
      "get": {
        "operationId": "accrual-get-parameter-by-code",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-get-parameter-by-code",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares this returns a single record. Of 25 operations in this state with a probeable route, 8 answered and 6 returned a single record — the other two returned a collection and a bare boolean.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "code": {
                      "x-aura-type": "unresolved"
                    },
                    "id": {
                      "x-aura-type": "unresolved"
                    },
                    "isActive": {
                      "type": "boolean",
                      "x-aura-field-code": "isActive"
                    },
                    "name": {
                      "type": "string",
                      "x-aura-field-code": "name",
                      "x-aura-maskable": true
                    },
                    "parameterFields": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "code": {
                            "x-aura-type": "unresolved"
                          },
                          "id": {
                            "x-aura-type": "unresolved"
                          },
                          "isActive": {
                            "type": "boolean",
                            "x-aura-field-code": "isActive"
                          },
                          "translations": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "languageCode": {
                                  "type": "string",
                                  "x-aura-field-code": "languageCode"
                                },
                                "name": {
                                  "x-aura-type": "unresolved"
                                }
                              },
                              "x-aura-field-code": "translations"
                            }
                          }
                        },
                        "x-aura-field-code": "parameterFields"
                      }
                    },
                    "translations": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "languageCode": {
                            "type": "string",
                            "x-aura-field-code": "languageCode"
                          },
                          "name": {
                            "x-aura-type": "unresolved"
                          }
                        },
                        "x-aura-field-code": "translations"
                      }
                    }
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-get-parameter-by-code",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/by-code/{code}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "ParameterDto",
          "payload": "ParameterDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterTranslationDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "ParameterFields",
              "declared_type": "IEnumerable<ParameterFieldDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_12",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_CODE_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/parameters/by-code/{code}/default-value": {
      "get": {
        "operationId": "accrual-get-parameter-default-value-by-parameter-code",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-get-parameter-default-value-by-parameter-code",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-get-parameter-default-value-by-parameter-code",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/by-code/{code}/default-value",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "declared-non-dto",
          "note": "The route returns `string`, a scalar rather than an object. There is no field tree below because there are no fields: the body is a JSON string. This is a complete answer read from the declaration, not a gap.",
          "declared_type": "string",
          "payload": "string"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_12",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_CODE_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_14",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_DEFAULT_VALUE_BY_CODE_NOT_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/by-code/{code}/values": {
      "get": {
        "operationId": "accrual-get-parameter-value-list-by-parameter-code",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-get-parameter-value-list-by-parameter-code",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "x-aura-field-code": "parameterCode"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "context": {
                        "type": "string",
                        "x-aura-field-code": "context"
                      },
                      "id": {
                        "x-aura-type": "unresolved"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActive"
                      },
                      "paramKey": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "paramKey"
                      },
                      "sortOrder": {
                        "type": "number",
                        "x-aura-field-code": "sortOrder"
                      },
                      "translations": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "x-aura-field-code": "translations"
                        }
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-get-parameter-value-list-by-parameter-code",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/by-code/{code}/values",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ParameterValueDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ParameterValueDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ParamKey",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "SortOrder",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterValueTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_12",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_CODE_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/parameters/{id}": {
      "delete": {
        "operationId": "accrual-delete-parameter",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-delete-parameter",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-delete-parameter",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "get": {
        "operationId": "accrual-get-parameter-by-id",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-get-parameter-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares this returns a single record. Of 25 operations in this state with a probeable route, 8 answered and 6 returned a single record — the other two returned a collection and a bare boolean.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "code": {
                      "x-aura-type": "unresolved"
                    },
                    "id": {
                      "x-aura-type": "unresolved"
                    },
                    "isActive": {
                      "type": "boolean",
                      "x-aura-field-code": "isActive"
                    },
                    "name": {
                      "type": "string",
                      "x-aura-field-code": "name",
                      "x-aura-maskable": true
                    },
                    "parameterFields": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "code": {
                            "x-aura-type": "unresolved"
                          },
                          "id": {
                            "x-aura-type": "unresolved"
                          },
                          "isActive": {
                            "type": "boolean",
                            "x-aura-field-code": "isActive"
                          },
                          "translations": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "languageCode": {
                                  "type": "string",
                                  "x-aura-field-code": "languageCode"
                                },
                                "name": {
                                  "x-aura-type": "unresolved"
                                }
                              },
                              "x-aura-field-code": "translations"
                            }
                          }
                        },
                        "x-aura-field-code": "parameterFields"
                      }
                    },
                    "translations": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "languageCode": {
                            "type": "string",
                            "x-aura-field-code": "languageCode"
                          },
                          "name": {
                            "x-aura-type": "unresolved"
                          }
                        },
                        "x-aura-field-code": "translations"
                      }
                    }
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-get-parameter-by-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "ParameterDto",
          "payload": "ParameterDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterTranslationDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "ParameterFields",
              "declared_type": "IEnumerable<ParameterFieldDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "put": {
        "operationId": "accrual-update-parameter",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-update-parameter",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        },
                        "name": {
                          "type": "string",
                          "x-aura-field-code": "parameterName"
                        }
                      },
                      "required": [
                        "languageCode",
                        "name"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "isActive",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-update-parameter",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/parameters/{id}/": {
      "get": {
        "operationId": "accrual-get-parameter-value-list",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-get-parameter-value-list",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "parameterId"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-get-parameter-value-list",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}/",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "ParameterDto",
          "payload": "ParameterDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterTranslationDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "ParameterFields",
              "declared_type": "IEnumerable<ParameterFieldDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "accrual-create-parameter-value",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-create-parameter-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "context": {
                    "type": "string",
                    "x-aura-field-code": "context"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "paramKey": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "paramKey"
                  },
                  "sortOrder": {
                    "type": "number",
                    "x-aura-field-code": "sortOrder"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "context",
                  "isActive",
                  "paramKey",
                  "sortOrder",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 5,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-create-parameter-value",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}/",
        "x-aura-code-response": {
          "state": "no-code-endpoint",
          "note": "No endpoint registration was found at this address."
        }
      }
    },
    "/parameters/{id}/default-value": {
      "get": {
        "operationId": "accrual-get-parameter-default-value",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-get-parameter-default-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "parameterId"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-get-parameter-default-value",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}/default-value",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "declared-non-dto",
          "note": "The route returns `string`, a scalar rather than an object. There is no field tree below because there are no fields: the body is a JSON string. This is a complete answer read from the declaration, not a gap.",
          "declared_type": "string",
          "payload": "string"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_13",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_DEFAULT_VALUE_BY_ID_NOT_EXISTS"
            },
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/parameters/{id}/field-/{fieldValueId}": {
      "delete": {
        "operationId": "accrual-delete-parameter-field-value",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-delete-parameter-field-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "parameterId"
            }
          },
          {
            "name": "fieldValueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "fieldValueId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-delete-parameter-field-value",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}/field-/{fieldValueId}",
        "x-aura-code-response": {
          "state": "no-code-endpoint",
          "note": "No endpoint registration was found at this address."
        }
      },
      "put": {
        "operationId": "accrual-update-parameter-field-value",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-update-parameter-field-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "parameterId"
            }
          },
          {
            "name": "fieldValueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "fieldValueId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "fieldValue": {
                    "type": "string",
                    "x-aura-field-code": "fieldValue"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  }
                },
                "required": [
                  "fieldValue",
                  "isActive"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-update-parameter-field-value",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}/field-/{fieldValueId}",
        "x-aura-code-response": {
          "state": "no-code-endpoint",
          "note": "No endpoint registration was found at this address."
        }
      }
    },
    "/parameters/{id}/fields": {
      "get": {
        "operationId": "accrual-get-parameter-field-list",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-get-parameter-field-list",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "parameterId"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-get-parameter-field-list",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}/fields",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ParameterFieldDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ParameterFieldDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterFieldTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "accrual-create-parameter-field",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-create-parameter-field",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "parameterId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "x-aura-field-code": "parameterCode"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        },
                        "name": {
                          "type": "string",
                          "x-aura-field-code": "parameterName"
                        }
                      },
                      "required": [
                        "languageCode",
                        "name"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "code",
                  "isActive",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-create-parameter-field",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}/fields",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_FIELD_CODE_ALREADY_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/{id}/fields/{fieldId}": {
      "delete": {
        "operationId": "accrual-delete-parameter-field",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-delete-parameter-field",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "parameterId"
            }
          },
          {
            "name": "fieldId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "fieldId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-delete-parameter-field",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}/fields/{fieldId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_5",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_FIELD_NOT_EXISTS"
            }
          ]
        }
      },
      "put": {
        "operationId": "accrual-update-parameter-field",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-update-parameter-field",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "parameterId"
            }
          },
          {
            "name": "fieldId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "fieldId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        },
                        "name": {
                          "type": "string",
                          "x-aura-field-code": "parameterName"
                        }
                      },
                      "required": [
                        "languageCode",
                        "name"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "isActive",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-update-parameter-field",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}/fields/{fieldId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_5",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_FIELD_NOT_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/{id}/{valueId}": {
      "delete": {
        "operationId": "accrual-delete-parameter-value",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-delete-parameter-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "valueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "valueId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-delete-parameter-value",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}//{valueId}",
        "x-aura-code-response": {
          "state": "no-code-endpoint",
          "note": "No endpoint registration was found at this address."
        }
      },
      "put": {
        "operationId": "accrual-update-parameter-value",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-update-parameter-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "valueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "valueId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "context": {
                    "type": "string",
                    "x-aura-field-code": "context"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "sortOrder": {
                    "type": "number",
                    "x-aura-field-code": "sortOrder"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "context",
                  "isActive",
                  "sortOrder",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 4,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-update-parameter-value",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}//{valueId}",
        "x-aura-code-response": {
          "state": "no-code-endpoint",
          "note": "No endpoint registration was found at this address."
        }
      }
    },
    "/parameters/{id}/{valueId}/field-": {
      "get": {
        "operationId": "accrual-get-parameter-field-value-list",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-get-parameter-field-value-list",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "parameterId"
            }
          },
          {
            "name": "valueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "valueId"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-get-parameter-field-value-list",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}//{valueId}/field-",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-code-response": {
          "state": "no-code-endpoint",
          "note": "No endpoint registration was found at this address."
        }
      },
      "post": {
        "operationId": "accrual-create-parameter-field-value",
        "tags": [
          "parameters"
        ],
        "summary": "accrual-create-parameter-field-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "parameterId"
            }
          },
          {
            "name": "valueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "valueId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "fieldValues": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "fieldValue": {
                          "type": "string",
                          "x-aura-field-code": "fieldValue"
                        },
                        "isActive": {
                          "type": "boolean",
                          "x-aura-field-code": "isActive"
                        },
                        "parameterFieldId": {
                          "type": "string",
                          "format": "uuid",
                          "x-aura-field-code": "parameterFieldId"
                        }
                      },
                      "required": [
                        "fieldValue",
                        "isActive",
                        "parameterFieldId"
                      ],
                      "x-aura-field-code": "fieldValues"
                    }
                  }
                },
                "required": [
                  "fieldValues"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "accrual-create-parameter-field-value",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "parameters/{id}//{valueId}/field-",
        "x-aura-code-response": {
          "state": "no-code-endpoint",
          "note": "No endpoint registration was found at this address."
        }
      }
    },
    "/products": {
      "get": {
        "operationId": "get-accrual-product-list",
        "tags": [
          "products"
        ],
        "summary": "get-accrual-product-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "accountProductId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "accountProductId"
                      },
                      "accountingEntryProcessType": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "accountingEntryProcessType"
                      },
                      "accrualCalculationPeriod": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "accrualCalculationPeriod"
                      },
                      "accrualProductFields": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "dataType": {
                              "type": "integer",
                              "format": "int32",
                              "x-aura-field-code": "dataType"
                            },
                            "fieldId": {
                              "type": "string",
                              "format": "uuid",
                              "x-aura-field-code": "accrualProductFieldId"
                            },
                            "isActive": {
                              "type": "boolean",
                              "x-aura-field-code": "isActiveAccrualProductField"
                            },
                            "name": {
                              "type": "string",
                              "x-aura-field-code": "accrualProductName"
                            }
                          },
                          "x-aura-field-code": "accrualProductFields"
                        }
                      },
                      "accrualProductFormulas": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "accrualProductFormulaId": {
                              "type": "string",
                              "format": "uuid",
                              "x-aura-field-code": "accrualProductFormulaId"
                            },
                            "code": {
                              "type": "string",
                              "x-aura-field-code": "accrualProductFormulaCode"
                            },
                            "description": {
                              "type": "string",
                              "x-aura-field-code": "accrualProductFormulaDescription"
                            },
                            "formulaDefinitionId": {
                              "type": "string",
                              "format": "uuid",
                              "x-aura-field-code": "formulaDefinitionId"
                            },
                            "hasEarlyOperations": {
                              "type": "boolean",
                              "x-aura-field-code": "hasEarlyOperations"
                            },
                            "isActive": {
                              "type": "boolean",
                              "x-aura-field-code": "isActiveAccrualProductFormula"
                            },
                            "isDueCollectionFormula": {
                              "type": "boolean",
                              "x-aura-field-code": "isDueCollectionFormula"
                            },
                            "isEarlyClosureFormula": {
                              "type": "boolean",
                              "x-aura-field-code": "isEarlyClosureFormula"
                            },
                            "isEarlyPaymentFormula": {
                              "type": "boolean",
                              "x-aura-field-code": "isEarlyPaymentFormula"
                            },
                            "isPeriodicalCalculationFormula": {
                              "type": "boolean",
                              "x-aura-field-code": "isPeriodicalCalculationFormula"
                            }
                          },
                          "x-aura-field-code": "accrualProductFormulas"
                        }
                      },
                      "dateBasis": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "dateBasis"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "accrualProductId"
                      },
                      "isCalculationPeriodical": {
                        "type": "boolean",
                        "x-aura-field-code": "isCalculationPeriodical"
                      },
                      "name": {
                        "type": "string",
                        "x-aura-field-code": "accrualProductName"
                      },
                      "type": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "accrualProductType"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-accrual-product-list",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "products",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<AccrualProductAndFieldsDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "AccrualProductAndFieldsDto",
          "collection": true,
          "members": [
            {
              "name": "AccrualProductFields",
              "declared_type": "List<AccrualProductFieldDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "AccrualProductFormulas",
              "declared_type": "List<AccrualProductFormulaDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      },
      "post": {
        "operationId": "create-accrual-product",
        "tags": [
          "products"
        ],
        "summary": "create-accrual-product",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accountProductId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "accountProductId"
                  },
                  "accountingEntryProcessType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accountingEntryProcessType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "acc_entry_process_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "Mass"
                        },
                        {
                          "value": 2,
                          "name": "Single"
                        }
                      ]
                    }
                  },
                  "accrualCalculationPeriod": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accrualCalculationPeriod",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "calculation_period",
                      "values": [
                        {
                          "value": 1,
                          "name": "Daily"
                        },
                        {
                          "value": 2,
                          "name": "Weekly"
                        },
                        {
                          "value": 3,
                          "name": "Monthly"
                        },
                        {
                          "value": 4,
                          "name": "Querterly"
                        },
                        {
                          "value": 5,
                          "name": "Semiannually"
                        },
                        {
                          "value": 6,
                          "name": "Annually"
                        }
                      ]
                    }
                  },
                  "dateBasis": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "dateBasis",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "date_difference",
                      "values": [
                        {
                          "value": 1,
                          "name": "30/360"
                        },
                        {
                          "value": 2,
                          "name": "30/365"
                        },
                        {
                          "value": 3,
                          "name": "Actual/360"
                        },
                        {
                          "value": 4,
                          "name": "Actual/365"
                        },
                        {
                          "value": 5,
                          "name": "Actual/Actual"
                        }
                      ]
                    }
                  },
                  "fields": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "dataType": {
                          "type": "integer",
                          "format": "int32",
                          "x-aura-field-code": "dataType"
                        },
                        "name": {
                          "type": "string",
                          "x-aura-field-code": "accrualProductFieldName"
                        }
                      },
                      "x-aura-field-code": "accrualProductFields"
                    }
                  },
                  "isCalculationPeriodical": {
                    "type": "boolean",
                    "x-aura-field-code": "isCalculationPeriodical"
                  },
                  "name": {
                    "type": "string",
                    "x-aura-field-code": "accrualProductName"
                  },
                  "productFormulas": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "x-aura-field-code": "code"
                        },
                        "description": {
                          "type": "string",
                          "x-aura-field-code": "description"
                        },
                        "formulaDefinitionId": {
                          "type": "string",
                          "format": "uuid",
                          "x-aura-field-code": "formulaDefinitionId"
                        },
                        "hasEarlyOperations": {
                          "type": "boolean",
                          "x-aura-field-code": "hasEarlyOperations"
                        },
                        "isDueCollectionFormula": {
                          "type": "boolean",
                          "x-aura-field-code": "isDueCollectionFormula"
                        },
                        "isEarlyClosureFormula": {
                          "type": "boolean",
                          "x-aura-field-code": "isEarlyClosureFormula"
                        },
                        "isEarlyPaymentFormula": {
                          "type": "boolean",
                          "x-aura-field-code": "isEarlyPaymentFormula"
                        },
                        "isPeriodicalCalculationFormula": {
                          "type": "boolean",
                          "x-aura-field-code": "isPeriodicalCalculationFormula"
                        }
                      },
                      "required": [
                        "code",
                        "formulaDefinitionId",
                        "hasEarlyOperations",
                        "isEarlyClosureFormula",
                        "isEarlyPaymentFormula",
                        "isPeriodicalCalculationFormula"
                      ],
                      "x-aura-field-code": "accrualProductFormulas"
                    }
                  },
                  "type": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accrualProductType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "accrual_product_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "Loan"
                        },
                        {
                          "value": 2,
                          "name": "Bond"
                        },
                        {
                          "value": 3,
                          "name": "Bill"
                        },
                        {
                          "value": 4,
                          "name": "Expense"
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "accountProductId",
                  "accountingEntryProcessType",
                  "dateBasis",
                  "isCalculationPeriodical",
                  "name",
                  "type"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 9,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "create-accrual-product",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "products",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "AccountProductId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Type",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "DateBasis",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccountingEntryProcessType",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualCalculationPeriod",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsCalculationPeriodical",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_1",
              "status": 400,
              "message": {
                "ar": "غير مسموح بإنشاء أكثر من منتج بنفس معرف المنتج النطاقي: '{0}'.",
                "en": "It is not allowed to create more than one product with the same Domain, Product: {0}.",
                "tr": "Aynı Etki Alanına sahip birden fazla ürün oluşturulmasına izin verilmez, Ürün: {0}."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_MUST_BE_NULL"
            },
            {
              "code": "ERR_ACCRL_21",
              "status": 400,
              "message": {
                "ar": "يجب أن يحتوي المنتج على صيغة للحساب الدوري، حساب الدفع المبكر، حساب الإغلاق المبكر، وحساب التحصيل المستحق.",
                "en": "Product has to have a formula for periodical calculation, early payment calculation, early closure calculation and due collection calculation.",
                "tr": "Ürünün periyodik hesaplama, erken ödeme hesaplama, erken kapatma hesaplama ve vadesi gelmiş tahsilat hesaplama formülüne sahip olması gerekmektedir."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FORMULA_DEFINITION"
            },
            {
              "code": "ERR_ACCRL_22",
              "status": 400,
              "message": {
                "ar": "لا يُسمح باستخدام أكثر من صيغة واحدة لحساب الدفع المبكر، وحساب الإغلاق المبكر، وحساب التحصيل المستحق.",
                "en": "It is not allowed to have more than formula for early payment calculation, early closure calculation and due collection calculation.",
                "tr": "Erken ödeme hesaplaması, erken kapatma hesaplaması ve vadesi geçmiş tahsilat hesaplaması için formülden fazlasına sahip olunmasına izin verilmez."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FORMULA_DEFINITION_EARLYPAYMENT_AND_EARLY_CALCULATION"
            },
            {
              "code": "ERR_ACCRL_3",
              "status": 400,
              "message": {
                "ar": "لا يُسمح بإنشاء أكثر من حقل بنفس الاسم لمنتج ما.",
                "en": "It is not allowed to create more than one field with same name for a product.",
                "tr": "Bir ürün için aynı ada sahip birden fazla alan oluşturulmasına izin verilmez."
              },
              "message_available": true,
              "constant_name": "FIELD_NAME_MUST_BE_UNIQUE_FOR_EACH_PRODUCT"
            }
          ]
        }
      }
    },
    "/products/{id}": {
      "get": {
        "operationId": "get-accrual-product-by-id",
        "tags": [
          "products"
        ],
        "summary": "get-accrual-product-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares this returns a single record. Of 25 operations in this state with a probeable route, 8 answered and 6 returned a single record — the other two returned a collection and a bare boolean.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "accountProductId": {
                      "type": "string",
                      "format": "uuid",
                      "x-aura-field-code": "accountProductId"
                    },
                    "accountingEntryProcessType": {
                      "type": "integer",
                      "format": "int32",
                      "x-aura-field-code": "accountingEntryProcessType"
                    },
                    "accrualCalculationPeriod": {
                      "type": "integer",
                      "format": "int32",
                      "x-aura-field-code": "accrualCalculationPeriod"
                    },
                    "accrualProductFields": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "dataType": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "dataType"
                          },
                          "fieldId": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "accrualProductFieldId"
                          },
                          "isActive": {
                            "type": "boolean",
                            "x-aura-field-code": "isActiveAccrualProductField"
                          },
                          "name": {
                            "type": "string",
                            "x-aura-field-code": "name",
                            "x-aura-maskable": true
                          }
                        },
                        "x-aura-field-code": "accrualProductFields"
                      }
                    },
                    "accrualProductFormulas": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "accrualProductFormulaId": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "accrualProductFormulaId"
                          },
                          "code": {
                            "type": "string",
                            "x-aura-field-code": "accrualProductFormulaCode"
                          },
                          "description": {
                            "type": "string",
                            "x-aura-field-code": "accrualProductFormulaDescription"
                          },
                          "formulaDefinitionId": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "formulaDefinitionId"
                          },
                          "hasEarlyOperations": {
                            "type": "boolean",
                            "x-aura-field-code": "hasEarlyOperations"
                          },
                          "isActive": {
                            "type": "boolean",
                            "x-aura-field-code": "isActiveAccrualProductFormula"
                          },
                          "isDueCollectionFormula": {
                            "type": "boolean",
                            "x-aura-field-code": "isDueCollectionFormula"
                          },
                          "isEarlyClosureFormula": {
                            "type": "boolean",
                            "x-aura-field-code": "isEarlyClosureFormula"
                          },
                          "isEarlyPaymentFormula": {
                            "type": "boolean",
                            "x-aura-field-code": "isEarlyPaymentFormula"
                          },
                          "isPeriodicalCalculationFormula": {
                            "type": "boolean",
                            "x-aura-field-code": "isPeriodicalCalculationFormula"
                          }
                        },
                        "x-aura-field-code": "accrualProductFormulas"
                      }
                    },
                    "dateBasis": {
                      "type": "integer",
                      "format": "int32",
                      "x-aura-field-code": "dateBasis"
                    },
                    "id": {
                      "type": "string",
                      "format": "uuid",
                      "x-aura-field-code": "id"
                    },
                    "isCalculationPeriodical": {
                      "type": "boolean",
                      "x-aura-field-code": "isCalculationPeriodical"
                    },
                    "name": {
                      "type": "string",
                      "x-aura-field-code": "name",
                      "x-aura-maskable": true
                    },
                    "type": {
                      "type": "string",
                      "x-aura-field-code": "type"
                    }
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-accrual-product-by-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "products/{id}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AccrualProductAndFieldsDto",
          "payload": "AccrualProductAndFieldsDto",
          "collection": false,
          "members": [
            {
              "name": "AccrualProductFields",
              "declared_type": "List<AccrualProductFieldDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "AccrualProductFormulas",
              "declared_type": "List<AccrualProductFormulaDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_2",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المنتج بالمعرّف المقدم: '{0}'.",
                "en": "Product is cannot be found with the given: {0}.",
                "tr": "Verilen ürün bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_IS_NOT_FOUND"
            }
          ]
        }
      },
      "put": {
        "operationId": "update-accrual-product",
        "tags": [
          "products"
        ],
        "summary": "update-accrual-product",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accountProductId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "accountProductId"
                  },
                  "accountingEntryProcessType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accountingEntryProcessType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "acc_entry_process_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "Mass"
                        },
                        {
                          "value": 2,
                          "name": "Single"
                        }
                      ]
                    }
                  },
                  "accrualCalculationPeriod": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accrualCalculationPeriod",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "calculation_period",
                      "values": [
                        {
                          "value": 1,
                          "name": "Daily"
                        },
                        {
                          "value": 2,
                          "name": "Weekly"
                        },
                        {
                          "value": 3,
                          "name": "Monthly"
                        },
                        {
                          "value": 4,
                          "name": "Querterly"
                        },
                        {
                          "value": 5,
                          "name": "Semiannually"
                        },
                        {
                          "value": 6,
                          "name": "Annually"
                        }
                      ]
                    }
                  },
                  "dateBasis": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "dateBasis",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "date_difference",
                      "values": [
                        {
                          "value": 1,
                          "name": "30/360"
                        },
                        {
                          "value": 2,
                          "name": "30/365"
                        },
                        {
                          "value": 3,
                          "name": "Actual/360"
                        },
                        {
                          "value": 4,
                          "name": "Actual/365"
                        },
                        {
                          "value": 5,
                          "name": "Actual/Actual"
                        }
                      ]
                    }
                  },
                  "isCalculationPeriodical": {
                    "type": "boolean",
                    "x-aura-field-code": "isCalculationPeriodical"
                  },
                  "name": {
                    "type": "string",
                    "x-aura-field-code": "accrualProductName"
                  },
                  "type": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accrualProductType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "accrual_product_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "Loan"
                        },
                        {
                          "value": 2,
                          "name": "Bond"
                        },
                        {
                          "value": 3,
                          "name": "Bill"
                        },
                        {
                          "value": 4,
                          "name": "Expense"
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "accountProductId",
                  "accountingEntryProcessType",
                  "accrualCalculationPeriod",
                  "dateBasis",
                  "isCalculationPeriodical",
                  "name",
                  "type"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 7,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-accrual-product",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "products/{id}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccountProductId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Type",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "DateBasis",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccountingEntryProcessType",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualCalculationPeriod",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsCalculationPeriodical",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_1",
              "status": 400,
              "message": {
                "ar": "غير مسموح بإنشاء أكثر من منتج بنفس معرف المنتج النطاقي: '{0}'.",
                "en": "It is not allowed to create more than one product with the same Domain, Product: {0}.",
                "tr": "Aynı Etki Alanına sahip birden fazla ürün oluşturulmasına izin verilmez, Ürün: {0}."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_MUST_BE_NULL"
            },
            {
              "code": "ERR_ACCRL_2",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المنتج بالمعرّف المقدم: '{0}'.",
                "en": "Product is cannot be found with the given: {0}.",
                "tr": "Verilen ürün bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_IS_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/products/{id}/fields": {
      "get": {
        "operationId": "get-accrual-product-field-by-id",
        "tags": [
          "products"
        ],
        "summary": "get-accrual-product-field-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "dataType": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "dataType"
                      },
                      "fieldId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "accrualProductFieldId"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActiveAccrualProductField"
                      },
                      "name": {
                        "type": "string",
                        "x-aura-field-code": "accrualProductFieldName"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-accrual-product-field-by-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "products/{id}/fields",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<AccrualProductFieldDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "AccrualProductFieldDto",
          "collection": true,
          "members": [
            {
              "name": "FieldId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "DataType",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_2",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المنتج بالمعرّف المقدم: '{0}'.",
                "en": "Product is cannot be found with the given: {0}.",
                "tr": "Verilen ürün bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_IS_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "create-accrual-product-field",
        "tags": [
          "products"
        ],
        "x-aura-documentation": {
          "language": "en",
          "status": "structural-fallback",
          "source": "catalog-structure"
        },
        "summary": "create accrual product field",
        "description": "Invokes the `create-accrual-product-field` service definition through `POST /products/{id}/fields`.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "dataType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "dataType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "field_data_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "System.Int32"
                        },
                        {
                          "value": 2,
                          "name": "System.String"
                        },
                        {
                          "value": 3,
                          "name": "System.Decimal"
                        },
                        {
                          "value": 4,
                          "name": "System.DateTime"
                        },
                        {
                          "value": 5,
                          "name": "System.DateOnly"
                        }
                      ]
                    }
                  },
                  "name": {
                    "type": "string",
                    "x-aura-field-code": "accrualProductFieldName"
                  }
                },
                "required": [
                  "dataType",
                  "name"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "create-accrual-product-field",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "products/{id}/fields",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "DataType",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_2",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المنتج بالمعرّف المقدم: '{0}'.",
                "en": "Product is cannot be found with the given: {0}.",
                "tr": "Verilen ürün bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_IS_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/products/{id}/fields/{fieldId}": {
      "delete": {
        "operationId": "delete-accrual-product-field",
        "tags": [
          "products"
        ],
        "x-aura-documentation": {
          "language": "en",
          "status": "structural-fallback",
          "source": "catalog-structure"
        },
        "summary": "Delete Accrual Product Field",
        "description": "Invokes the `delete-accrual-product-field` service definition through `DELETE /products/{id}/fields/{fieldId}`.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductId"
            }
          },
          {
            "name": "fieldId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductFieldId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "delete-accrual-product-field",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "products/{id}/fields/{fieldId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FieldId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_2",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المنتج بالمعرّف المقدم: '{0}'.",
                "en": "Product is cannot be found with the given: {0}.",
                "tr": "Verilen ürün bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_IS_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_20",
              "status": 400,
              "message": {
                "ar": "الحقل يُستخدم أثناء حفظ المعاملة. لا يمكن حذفه.",
                "en": "Field is used while saving a transaction. It cannot be deleted.",
                "tr": "Bir işlem kaydedilirken alan kullanılır. Silinemez."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FIELD_IS_USED_CALCULATIONS"
            },
            {
              "code": "ERR_ACCRL_4",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على الحقل باستخدام معرف الحقل المعطى: {0}",
                "en": "Fields is cannot be found with given field: {0}",
                "tr": "Verilen alana sahip alanlar bulunamadı: {0}"
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FIELDS_IS_NOT_FOUND"
            }
          ]
        }
      },
      "put": {
        "operationId": "update-accrual-product-field",
        "tags": [
          "products"
        ],
        "summary": "update-accrual-product-field",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductId"
            }
          },
          {
            "name": "fieldId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductFieldId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActiveAccrualProductField"
                  }
                },
                "required": [
                  "isActive"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-accrual-product-field",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "products/{id}/fields/{fieldId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FieldId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_2",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المنتج بالمعرّف المقدم: '{0}'.",
                "en": "Product is cannot be found with the given: {0}.",
                "tr": "Verilen ürün bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_IS_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_4",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على الحقل باستخدام معرف الحقل المعطى: {0}",
                "en": "Fields is cannot be found with given field: {0}",
                "tr": "Verilen alana sahip alanlar bulunamadı: {0}"
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FIELDS_IS_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/products/{id}/formulas": {
      "get": {
        "operationId": "get-accrual-product-formula-by-id",
        "tags": [
          "products"
        ],
        "summary": "get-accrual-product-formula-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "accrualProductFormulaId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "accrualProductFormulaId"
                      },
                      "code": {
                        "type": "string",
                        "x-aura-field-code": "accrualProductFormulaCode"
                      },
                      "description": {
                        "type": "string",
                        "x-aura-field-code": "accrualProductFormulaDescription"
                      },
                      "formulaDefinitionId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "formulaDefinitionId"
                      },
                      "hasEarlyOperations": {
                        "type": "boolean",
                        "x-aura-field-code": "hasEarlyOperations"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActiveAccrualProductFormula"
                      },
                      "isDueCollectionFormula": {
                        "type": "boolean",
                        "x-aura-field-code": "isDueCollectionFormula"
                      },
                      "isEarlyClosureFormula": {
                        "type": "boolean",
                        "x-aura-field-code": "isEarlyClosureFormula"
                      },
                      "isEarlyPaymentFormula": {
                        "type": "boolean",
                        "x-aura-field-code": "isEarlyPaymentFormula"
                      },
                      "isPeriodicalCalculationFormula": {
                        "type": "boolean",
                        "x-aura-field-code": "isPeriodicalCalculationFormula"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-accrual-product-formula-by-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "products/{id}/formulas",
        "x-aura-capabilities": {
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<AccrualProductFormulaDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "AccrualProductFormulaDto",
          "collection": true,
          "members": [
            {
              "name": "AccrualProductFormulaId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "FormulaDefinitionId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsEarlyPaymentFormula",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsEarlyClosureFormula",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsPeriodicalCalculationFormula",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsDueCollectionFormula",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "HasEarlyOperations",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_2",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المنتج بالمعرّف المقدم: '{0}'.",
                "en": "Product is cannot be found with the given: {0}.",
                "tr": "Verilen ürün bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_IS_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "create-accrual-product-formula",
        "tags": [
          "products"
        ],
        "summary": "create-accrual-product-formula",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "x-aura-field-code": "code"
                  },
                  "description": {
                    "type": "string",
                    "x-aura-field-code": "description"
                  },
                  "formulaDefinitionId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "formulaDefinitionId"
                  },
                  "hasEarlyOperations": {
                    "type": "boolean",
                    "x-aura-field-code": "hasEarlyOperations"
                  },
                  "isDueCollectionFormula": {
                    "type": "boolean",
                    "x-aura-field-code": "isDueCollectionFormula"
                  },
                  "isEarlyClosureFormula": {
                    "type": "boolean",
                    "x-aura-field-code": "isEarlyClosureFormula"
                  },
                  "isEarlyPaymentFormula": {
                    "type": "boolean",
                    "x-aura-field-code": "isEarlyPaymentFormula"
                  },
                  "isPeriodicalCalculationFormula": {
                    "type": "boolean",
                    "x-aura-field-code": "isPeriodicalCalculationFormula"
                  }
                },
                "required": [
                  "code",
                  "description",
                  "formulaDefinitionId",
                  "hasEarlyOperations",
                  "isDueCollectionFormula",
                  "isEarlyClosureFormula",
                  "isEarlyPaymentFormula",
                  "isPeriodicalCalculationFormula"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 8,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. An exact, uniquely bound route registration classifies this response as a single-record.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "create-accrual-product-formula",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "products/{id}/formulas",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FormulaDefinitionId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsEarlyPaymentFormula",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsEarlyClosureFormula",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsPeriodicalCalculationFormula",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "HasEarlyOperations",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsDueCollectionFormula",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-response-contract-disagreement": {
          "state": "catalog-union-withheld-for-exact-code-contract",
          "note": "An exact, uniquely bound route registration classifies this response as a single-record.",
          "code_response_state": "structure",
          "code_cardinality": "single-record",
          "catalog_cardinality": "undeclared",
          "catalog_success_status": 200
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_2",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المنتج بالمعرّف المقدم: '{0}'.",
                "en": "Product is cannot be found with the given: {0}.",
                "tr": "Verilen ürün bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_IS_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_22",
              "status": 400,
              "message": {
                "ar": "لا يُسمح باستخدام أكثر من صيغة واحدة لحساب الدفع المبكر، وحساب الإغلاق المبكر، وحساب التحصيل المستحق.",
                "en": "It is not allowed to have more than formula for early payment calculation, early closure calculation and due collection calculation.",
                "tr": "Erken ödeme hesaplaması, erken kapatma hesaplaması ve vadesi geçmiş tahsilat hesaplaması için formülden fazlasına sahip olunmasına izin verilmez."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FORMULA_DEFINITION_EARLYPAYMENT_AND_EARLY_CALCULATION"
            },
            {
              "code": "ERR_ACCRL_27",
              "status": 400,
              "message": {
                "ar": "لا يُسمح بأن يكون لدى نفس المنتج قيمة كود واحدة.",
                "en": "It is not allowed to have same code value under one product.",
                "tr": "Tek bir ürün altında aynı kod değerine sahip olmasına izin verilmez."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FORMULA_CODE_MUST_BE_UNIQUE_FOR_EACH_PRODUCT"
            }
          ]
        }
      }
    },
    "/products/{id}/formulas/save": {
      "put": {
        "operationId": "save-accrual-product-formula",
        "tags": [
          "products"
        ],
        "x-aura-documentation": {
          "language": "en",
          "status": "structural-fallback",
          "source": "catalog-structure"
        },
        "summary": "Save Accrual Product Formula",
        "description": "Invokes the `save-accrual-product-formula` service definition through `PUT /products/{id}/formulas/save`.\n\nTurkish display name: Reeskont Ürün Formüüleri Kaydetme",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "formulas": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "accrualProductFormulaId": {
                          "type": "string",
                          "format": "uuid",
                          "x-aura-field-code": "accrualProductFormulaId"
                        },
                        "code": {
                          "type": "string",
                          "x-aura-field-code": "accrualProductFormulaCode"
                        },
                        "description": {
                          "type": "string",
                          "x-aura-field-code": "accrualProductFormulaDescription"
                        },
                        "formulaDefinitionId": {
                          "type": "string",
                          "format": "uuid",
                          "x-aura-field-code": "formulaDefinitionId"
                        },
                        "hasEarlyOperations": {
                          "type": "boolean",
                          "x-aura-field-code": "hasEarlyOperations"
                        },
                        "isActive": {
                          "type": "boolean",
                          "x-aura-field-code": "isActiveAccrualProductFormula"
                        },
                        "isDueCollectionFormula": {
                          "type": "boolean",
                          "x-aura-field-code": "isDueCollectionFormula"
                        },
                        "isEarlyClosureFormula": {
                          "type": "boolean",
                          "x-aura-field-code": "isEarlyClosureFormula"
                        },
                        "isEarlyPaymentFormula": {
                          "type": "boolean",
                          "x-aura-field-code": "isEarlyPaymentFormula"
                        },
                        "isPeriodicalCalculationFormula": {
                          "type": "boolean",
                          "x-aura-field-code": "isPeriodicalCalculationFormula"
                        },
                        "rowStatus": {
                          "type": "integer",
                          "format": "int32",
                          "x-aura-field-code": "rowStatus"
                        }
                      },
                      "x-aura-field-code": "accrualProductFormulas"
                    }
                  }
                }
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "save-accrual-product-formula",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "products/{id}/formulas/save",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_2",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المنتج بالمعرّف المقدم: '{0}'.",
                "en": "Product is cannot be found with the given: {0}.",
                "tr": "Verilen ürün bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_IS_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_22",
              "status": 400,
              "message": {
                "ar": "لا يُسمح باستخدام أكثر من صيغة واحدة لحساب الدفع المبكر، وحساب الإغلاق المبكر، وحساب التحصيل المستحق.",
                "en": "It is not allowed to have more than formula for early payment calculation, early closure calculation and due collection calculation.",
                "tr": "Erken ödeme hesaplaması, erken kapatma hesaplaması ve vadesi geçmiş tahsilat hesaplaması için formülden fazlasına sahip olunmasına izin verilmez."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FORMULA_DEFINITION_EARLYPAYMENT_AND_EARLY_CALCULATION"
            },
            {
              "code": "ERR_ACCRL_27",
              "status": 400,
              "message": {
                "ar": "لا يُسمح بأن يكون لدى نفس المنتج قيمة كود واحدة.",
                "en": "It is not allowed to have same code value under one product.",
                "tr": "Tek bir ürün altında aynı kod değerine sahip olmasına izin verilmez."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FORMULA_CODE_MUST_BE_UNIQUE_FOR_EACH_PRODUCT"
            }
          ]
        }
      }
    },
    "/products/{id}/formulas/{accrualProductFormulaId}": {
      "delete": {
        "operationId": "delete-accrual-product-formula",
        "tags": [
          "products"
        ],
        "x-aura-documentation": {
          "language": "en",
          "status": "structural-fallback",
          "source": "catalog-structure"
        },
        "summary": "Delete Accrual Product Formula",
        "description": "Invokes the `delete-accrual-product-formula` service definition through `DELETE /products/{id}/formulas/{accrualProductFormulaId}`.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductId"
            }
          },
          {
            "name": "accrualProductFormulaId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductFormulaId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "delete-accrual-product-formula",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "products/{id}/formulas/{accrualProductFormulaId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualProductFormulaId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_2",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المنتج بالمعرّف المقدم: '{0}'.",
                "en": "Product is cannot be found with the given: {0}.",
                "tr": "Verilen ürün bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_IS_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_21",
              "status": 400,
              "message": {
                "ar": "يجب أن يحتوي المنتج على صيغة للحساب الدوري، حساب الدفع المبكر، حساب الإغلاق المبكر، وحساب التحصيل المستحق.",
                "en": "Product has to have a formula for periodical calculation, early payment calculation, early closure calculation and due collection calculation.",
                "tr": "Ürünün periyodik hesaplama, erken ödeme hesaplama, erken kapatma hesaplama ve vadesi gelmiş tahsilat hesaplama formülüne sahip olması gerekmektedir."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FORMULA_DEFINITION"
            },
            {
              "code": "ERR_ACCRL_23",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على صيغة المنتج بالمعرّف التالي: '{0}'.",
                "en": "There is no product formula: {0}.",
                "tr": "Ürün formülü bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FORMULA_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_24",
              "status": 400,
              "message": {
                "ar": "صيغة المنتج تُستخدم في العمليات الحسابية. لا يمكن حذفها.",
                "en": "Product formula is used to in calculations. It cannot be deleted.",
                "tr": "Hesaplamalarda ürün formülü kullanılır. Silinemez."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FORMULA_IS_USED_CALCULATIONS"
            }
          ]
        }
      },
      "put": {
        "operationId": "update-accrual-product-formula",
        "tags": [
          "products"
        ],
        "x-aura-documentation": {
          "language": "en",
          "status": "structural-fallback",
          "source": "catalog-structure"
        },
        "summary": "Update Accrual Product Formula",
        "description": "Invokes the `update-accrual-product-formula` service definition through `PUT /products/{id}/formulas/{accrualProductFormulaId}`.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductId"
            }
          },
          {
            "name": "accrualProductFormulaId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualProductFormulaId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "x-aura-field-code": "code"
                  },
                  "description": {
                    "type": "string",
                    "x-aura-field-code": "description"
                  },
                  "formulaDefinitionId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "formulaDefinitionId"
                  },
                  "hasEarlyOperations": {
                    "type": "boolean",
                    "x-aura-field-code": "hasEarlyOperations"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "isDueCollectionFormula": {
                    "type": "boolean",
                    "x-aura-field-code": "isDueCollectionFormula"
                  },
                  "isEarlyClosureFormula": {
                    "type": "boolean",
                    "x-aura-field-code": "isEarlyClosureFormula"
                  },
                  "isEarlyPaymentFormula": {
                    "type": "boolean",
                    "x-aura-field-code": "isEarlyPaymentFormula"
                  },
                  "isPeriodicalCalculationFormula": {
                    "type": "boolean",
                    "x-aura-field-code": "isPeriodicalCalculationFormula"
                  }
                },
                "required": [
                  "code",
                  "description",
                  "formulaDefinitionId",
                  "hasEarlyOperations",
                  "isActive",
                  "isDueCollectionFormula",
                  "isEarlyClosureFormula",
                  "isEarlyPaymentFormula",
                  "isPeriodicalCalculationFormula"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 9,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-accrual-product-formula",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "products/{id}/formulas/{accrualProductFormulaId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualProductFormulaId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FormulaDefinitionId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsEarlyPaymentFormula",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsEarlyClosureFormula",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsPeriodicalCalculationFormula",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "HasEarlyOperations",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsDueCollectionFormula",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_2",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المنتج بالمعرّف المقدم: '{0}'.",
                "en": "Product is cannot be found with the given: {0}.",
                "tr": "Verilen ürün bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "PRODUCT_IS_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_21",
              "status": 400,
              "message": {
                "ar": "يجب أن يحتوي المنتج على صيغة للحساب الدوري، حساب الدفع المبكر، حساب الإغلاق المبكر، وحساب التحصيل المستحق.",
                "en": "Product has to have a formula for periodical calculation, early payment calculation, early closure calculation and due collection calculation.",
                "tr": "Ürünün periyodik hesaplama, erken ödeme hesaplama, erken kapatma hesaplama ve vadesi gelmiş tahsilat hesaplama formülüne sahip olması gerekmektedir."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FORMULA_DEFINITION"
            },
            {
              "code": "ERR_ACCRL_22",
              "status": 400,
              "message": {
                "ar": "لا يُسمح باستخدام أكثر من صيغة واحدة لحساب الدفع المبكر، وحساب الإغلاق المبكر، وحساب التحصيل المستحق.",
                "en": "It is not allowed to have more than formula for early payment calculation, early closure calculation and due collection calculation.",
                "tr": "Erken ödeme hesaplaması, erken kapatma hesaplaması ve vadesi geçmiş tahsilat hesaplaması için formülden fazlasına sahip olunmasına izin verilmez."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FORMULA_DEFINITION_EARLYPAYMENT_AND_EARLY_CALCULATION"
            },
            {
              "code": "ERR_ACCRL_23",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على صيغة المنتج بالمعرّف التالي: '{0}'.",
                "en": "There is no product formula: {0}.",
                "tr": "Ürün formülü bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FORMULA_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_27",
              "status": 400,
              "message": {
                "ar": "لا يُسمح بأن يكون لدى نفس المنتج قيمة كود واحدة.",
                "en": "It is not allowed to have same code value under one product.",
                "tr": "Tek bir ürün altında aynı kod değerine sahip olmasına izin verilmez."
              },
              "message_available": true,
              "constant_name": "ACCRUAL_PRODUCT_FORMULA_CODE_MUST_BE_UNIQUE_FOR_EACH_PRODUCT"
            }
          ]
        }
      }
    },
    "/transactions": {
      "get": {
        "operationId": "get-accrual-transaction-list",
        "tags": [
          "transactions"
        ],
        "x-aura-documentation": {
          "language": "en",
          "status": "structural-fallback",
          "source": "catalog-structure"
        },
        "summary": "get accrual transaction list",
        "description": "Invokes the `get-accrual-transaction-list` service definition through `GET /transactions`.",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "accrualProductId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "accrualProductId"
                      },
                      "accrualType": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "accrualType"
                      },
                      "cashFlows": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "accrualAccountingEntryId": {
                              "type": "string",
                              "format": "uuid",
                              "x-aura-field-code": "accountingEntryId"
                            },
                            "accrualStatus": {
                              "type": "integer",
                              "format": "int32",
                              "x-aura-field-code": "accrualStatus"
                            },
                            "amount": {
                              "type": "number",
                              "format": "decimal",
                              "x-aura-field-code": "cashFlowAmount"
                            },
                            "cashFlowId": {
                              "type": "string",
                              "format": "uuid",
                              "x-aura-field-code": "accrualCashFlowId"
                            },
                            "currencyNumber": {
                              "type": "string",
                              "x-aura-field-code": "currencyNumber"
                            },
                            "direction": {
                              "type": "integer",
                              "format": "int32",
                              "x-aura-field-code": "cashFlowDirection"
                            },
                            "fields": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "fieldId": {
                                    "type": "string",
                                    "format": "uuid",
                                    "x-aura-field-code": "cashFlowFieldId"
                                  },
                                  "fieldValue": {
                                    "type": "string",
                                    "x-aura-field-code": "cashFlowFieldValue"
                                  }
                                },
                                "x-aura-field-code": "cashFlowfields"
                              }
                            },
                            "flowDate": {
                              "type": "string",
                              "format": "date",
                              "x-aura-field-code": "flowDate"
                            },
                            "monthDayBasis": {
                              "type": "integer",
                              "format": "int32",
                              "x-aura-field-code": "monthDayBasis"
                            },
                            "ordinalPosition": {
                              "type": "integer",
                              "format": "int32",
                              "x-aura-field-code": "ordinalPosition"
                            },
                            "paymentType": {
                              "type": "integer",
                              "format": "int32",
                              "x-aura-field-code": "paymentType"
                            },
                            "principalAmount": {
                              "type": "number",
                              "format": "decimal",
                              "x-aura-field-code": "principalAmount"
                            },
                            "profitAmount": {
                              "type": "number",
                              "format": "decimal",
                              "x-aura-field-code": "profitAmount"
                            },
                            "totalDayCount": {
                              "type": "integer",
                              "format": "int32",
                              "x-aura-field-code": "totalDayCount"
                            },
                            "yearDayBasis": {
                              "type": "integer",
                              "format": "int32",
                              "x-aura-field-code": "yearDayBasis"
                            }
                          },
                          "x-aura-field-code": "accrualCashFlows"
                        }
                      },
                      "customerAccountId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "customerAccountId"
                      },
                      "earlyPaymentDiscountRate": {
                        "type": "number",
                        "format": "decimal",
                        "x-aura-field-code": "earlyPaymentDiscountRate"
                      },
                      "effectiveProfitRate": {
                        "type": "number",
                        "format": "decimal",
                        "x-aura-field-code": "effectiveProfitRate"
                      },
                      "id": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "accrualTransactionId"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActiveAccrualTransaction"
                      },
                      "maturityBeginDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "maturityBeginDate"
                      },
                      "maturityEndDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "maturityEndDate"
                      },
                      "productTransactionId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "productTransactionId"
                      },
                      "transactionDate": {
                        "type": "string",
                        "format": "date",
                        "x-aura-field-code": "transactionDate"
                      },
                      "transactionOrganizationCode": {
                        "type": "string",
                        "x-aura-field-code": "transactionOrganizationCode"
                      },
                      "transactionProductLedgerCode": {
                        "type": "string",
                        "x-aura-field-code": "transactionProductLedgerCode"
                      },
                      "xirr": {
                        "type": "number",
                        "format": "decimal",
                        "x-aura-field-code": "xirr"
                      },
                      "yearlyProfitRate": {
                        "type": "number",
                        "format": "decimal",
                        "x-aura-field-code": "yearlyProfitRate"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-accrual-transaction-list",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "transactions",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "PageIndex",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PageSize",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "OrderBy",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "OrderSort",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "Filter",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<AccrualTransactionDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "AccrualTransactionDto",
          "collection": true,
          "members": [
            {
              "name": "AccrualType",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualProductId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ProductTransactionId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "TransactionOrganizationCode",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "TransactionDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "MaturityBeginDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "MaturityEndDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "YearlyProfitRate",
              "declared_type": "decimal?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "TransactionProductLedgerCode",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerAccountId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Xirr",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "EffectiveProfitRate",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "EarlyPaymentDiscountRate",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CashFlows",
              "declared_type": "List<AccrualCashFlowDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      },
      "post": {
        "operationId": "create-accrual-transaction",
        "tags": [
          "transactions"
        ],
        "x-aura-documentation": {
          "language": "en",
          "status": "structural-fallback",
          "source": "catalog-structure"
        },
        "summary": "Save Transaction",
        "description": "Invokes the `create-accrual-transaction` service definition through `POST /transactions`.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accrualProductId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "accrualProductId"
                  },
                  "accrualType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accrualType",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "accrual_type",
                      "values": [
                        {
                          "value": 1,
                          "name": "Income"
                        },
                        {
                          "value": 2,
                          "name": "Expense"
                        }
                      ]
                    }
                  },
                  "cashFlow": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "amount": {
                          "type": "number",
                          "format": "decimal",
                          "x-aura-field-code": "cashFlowAmount"
                        },
                        "currencyNumber": {
                          "type": "string",
                          "x-aura-field-code": "currencyNumber"
                        },
                        "direction": {
                          "type": "integer",
                          "format": "int32",
                          "x-aura-field-code": "cashFlowDirection"
                        },
                        "fields": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "fieldId": {
                                "type": "string",
                                "format": "uuid",
                                "x-aura-field-code": "cashFlowFieldId"
                              },
                              "fieldValue": {
                                "type": "string",
                                "x-aura-field-code": "cashFlowFieldValue"
                              }
                            },
                            "x-aura-field-code": "cashFlowfields"
                          }
                        },
                        "flowDate": {
                          "type": "string",
                          "format": "date",
                          "x-aura-field-code": "flowDate"
                        },
                        "monthDayBasis": {
                          "type": "integer",
                          "format": "int32",
                          "x-aura-field-code": "monthDayBasis"
                        },
                        "ordinalPosition": {
                          "type": "integer",
                          "format": "int32",
                          "x-aura-field-code": "ordinalPosition"
                        },
                        "principalAmount": {
                          "type": "number",
                          "format": "decimal",
                          "x-aura-field-code": "principalAmount"
                        },
                        "profitAmount": {
                          "type": "number",
                          "format": "decimal",
                          "x-aura-field-code": "profitAmount"
                        },
                        "yearDayBasis": {
                          "type": "integer",
                          "format": "int32",
                          "x-aura-field-code": "yearDayBasis"
                        }
                      },
                      "required": [
                        "amount",
                        "currencyNumber",
                        "direction",
                        "flowDate",
                        "monthDayBasis",
                        "ordinalPosition",
                        "principalAmount",
                        "profitAmount",
                        "yearDayBasis"
                      ],
                      "x-aura-field-code": "accrualCashFlows"
                    }
                  },
                  "customerAccountId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "customerAccountId"
                  },
                  "earlyPaymentDiscountRate": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "earlyPaymentDiscountRate"
                  },
                  "effectiveProfitRate": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "effectiveProfitRate"
                  },
                  "maturityBeginDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "maturityBeginDate"
                  },
                  "maturityEndDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "maturityEndDate"
                  },
                  "productTransactionId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "productTransactionId"
                  },
                  "transactionDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "transactionDate"
                  },
                  "transactionOrganizationCode": {
                    "type": "string",
                    "x-aura-field-code": "transactionOrganizationCode"
                  },
                  "transactionProductLedgerCode": {
                    "type": "string",
                    "x-aura-field-code": "transactionProductLedgerCode"
                  },
                  "xirr": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "xirr"
                  },
                  "yearlyProfitRate": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "yearlyProfitRate"
                  }
                },
                "required": [
                  "accrualProductId",
                  "accrualType",
                  "cashFlow",
                  "earlyPaymentDiscountRate",
                  "effectiveProfitRate",
                  "maturityBeginDate",
                  "maturityEndDate",
                  "productTransactionId",
                  "transactionDate",
                  "transactionOrganizationCode",
                  "transactionProductLedgerCode",
                  "xirr",
                  "yearlyProfitRate"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 14,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "create-accrual-transaction",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "transactions",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "AccrualType",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualProductId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProductTransactionId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "TransactionOrganizationCode",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "TransactionDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "MaturityBeginDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "MaturityEndDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "YearlyProfitRate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "TransactionProductLedgerCode",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerAccountId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "Xirr",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "EffectiveProfitRate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "EarlyPaymentDiscountRate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_14",
              "status": 400,
              "message": {
                "ar": "نوع البيانات للقيمة المدخلة في الحقل: '{0}' غير مكتمل الصيغة. يجب أن تكون بالصيغة '{1}'.",
                "en": "Data type of the value given into field: {0} is not in correct format. It should be in {1} format.",
                "tr": "Alana verilen değerin veri türü: {0} doğru biçimde değil. {1} biçiminde olmalıdır."
              },
              "message_available": true,
              "constant_name": "FIELD_DATA_TYPE_NOT_VALID"
            },
            {
              "code": "ERR_ACCRL_25",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "ACCRUAL_PRODUCT_FORMULA_DEFINITION_EARLYPAYMENT_AND_EARLY_CALCULATION_AND_PERIODICAL"
            },
            {
              "code": "ERR_ACCRL_5",
              "status": 400,
              "message": {
                "ar": "غير مسموح حفظ المعاملة بنفس معرف معاملة المنتج:{0}.",
                "en": "It is not allowed to save transaction with the same Product Transaction:{0}.",
                "tr": "Aynı Ürün için işleme sahip başka bir işlemin kaydedilmesine izin verilmez: {0}."
              },
              "message_available": true,
              "constant_name": "IT_IS_NOT_ALLOWED_TO_SAVE_TRANSACTION_WITH_THE_SAME_PRODUCT_TRANSACTION_ID"
            },
            {
              "code": "ERR_ACCRL_7",
              "status": 400,
              "message": {
                "ar": "الحقول غير مكتملة للمنتج المقدم.",
                "en": "Fields are not fully provided for the given product.",
                "tr": "Verilen ürün için alanlar tam olarak sağlanmamıştır."
              },
              "message_available": true,
              "constant_name": "ALL_ACCRUAL_PRODUCT_FIELDS_MUST_BE_PROVIDED"
            },
            {
              "code": "ERR_ACCRL_8",
              "status": 400,
              "message": {
                "ar": "الحقل غير نشط أو لا ينتمي إلى المنتج. معرف الحقل: {0}",
                "en": "Field is not active or not belong to the product. FieldId: {0}",
                "tr": "Alan aktif değil veya ürüne ait değil. Alan Kimliği: {0}"
              },
              "message_available": true,
              "constant_name": "PRODUCT_FIELD_IS_NOT_ACTIVE_OR_NOT_BELONG"
            }
          ]
        }
      }
    },
    "/transactions/{id}": {
      "get": {
        "operationId": "get-accrual-transaction-by-id",
        "tags": [
          "transactions"
        ],
        "summary": "get-accrual-transaction-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualTransactionId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares this returns a single record. Of 25 operations in this state with a probeable route, 8 answered and 6 returned a single record — the other two returned a collection and a bare boolean.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "accrualProductId": {
                      "type": "string",
                      "format": "uuid",
                      "x-aura-field-code": "accrualProductId"
                    },
                    "accrualType": {
                      "type": "integer",
                      "format": "int32",
                      "x-aura-field-code": "accrualType"
                    },
                    "cashFlows": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "accrualStatus": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "accrualStatus"
                          },
                          "amount": {
                            "type": "number",
                            "format": "decimal",
                            "x-aura-field-code": "cashFlowAmount"
                          },
                          "cashFlowId": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "accrualCashFlowId"
                          },
                          "currencyNumber": {
                            "type": "string",
                            "x-aura-field-code": "currencyNumber"
                          },
                          "direction": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "cashFlowDirection"
                          },
                          "fields": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "fieldId": {
                                  "type": "string",
                                  "format": "uuid",
                                  "x-aura-field-code": "cashFlowFieldId"
                                },
                                "fieldValue": {
                                  "type": "string",
                                  "x-aura-field-code": "cashFlowFieldValue"
                                }
                              },
                              "x-aura-field-code": "cashFlowfields"
                            }
                          },
                          "flowDate": {
                            "type": "string",
                            "format": "date",
                            "x-aura-field-code": "flowDate"
                          },
                          "monthDayBasis": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "monthDayBasis"
                          },
                          "ordinalPosition": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "ordinalPosition"
                          },
                          "principalAmount": {
                            "type": "number",
                            "format": "decimal",
                            "x-aura-field-code": "principalAmount"
                          },
                          "profitAmount": {
                            "type": "number",
                            "format": "decimal",
                            "x-aura-field-code": "profitAmount"
                          },
                          "totalDayCount": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "totalDayCount"
                          },
                          "yearDayBasis": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "yearDayBasis"
                          }
                        },
                        "x-aura-field-code": "accrualCashFlows"
                      }
                    },
                    "customerAccountId": {
                      "type": "string",
                      "format": "uuid",
                      "x-aura-field-code": "customerAccountId"
                    },
                    "earlyPaymentDiscountRate": {
                      "type": "number",
                      "format": "decimal",
                      "x-aura-field-code": "earlyPaymentDiscountRate"
                    },
                    "effectiveProfitRate": {
                      "type": "number",
                      "format": "decimal",
                      "x-aura-field-code": "effectiveProfitRate"
                    },
                    "id": {
                      "type": "string",
                      "format": "uuid",
                      "x-aura-field-code": "accrualTransactionId"
                    },
                    "isActive": {
                      "type": "boolean",
                      "x-aura-field-code": "isActiveAccrualTransaction"
                    },
                    "maturityBeginDate": {
                      "type": "string",
                      "format": "date",
                      "x-aura-field-code": "maturityBeginDate"
                    },
                    "maturityEndDate": {
                      "type": "string",
                      "format": "date",
                      "x-aura-field-code": "maturityEndDate"
                    },
                    "productTransactionId": {
                      "type": "string",
                      "format": "uuid",
                      "x-aura-field-code": "productTransactionId"
                    },
                    "transactionDate": {
                      "type": "string",
                      "format": "date",
                      "x-aura-field-code": "transactionDate"
                    },
                    "transactionOrganizationCode": {
                      "type": "string",
                      "x-aura-field-code": "transactionOrganizationCode"
                    },
                    "transactionProductLedgerCode": {
                      "type": "string",
                      "x-aura-field-code": "transactionProductLedgerCode"
                    },
                    "xirr": {
                      "type": "number",
                      "format": "decimal",
                      "x-aura-field-code": "xirr"
                    },
                    "yearlyProfitRate": {
                      "type": "number",
                      "format": "decimal",
                      "x-aura-field-code": "yearlyProfitRate"
                    }
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-accrual-transaction-by-id",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "transactions/{id}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AccrualTransactionDto",
          "payload": "AccrualTransactionDto",
          "collection": false,
          "members": [
            {
              "name": "AccrualType",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualProductId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "ProductTransactionId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "TransactionOrganizationCode",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "TransactionDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "MaturityBeginDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "MaturityEndDate",
              "declared_type": "DateOnly?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "YearlyProfitRate",
              "declared_type": "decimal?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "TransactionProductLedgerCode",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerAccountId",
              "declared_type": "Guid?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Xirr",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "EffectiveProfitRate",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "EarlyPaymentDiscountRate",
              "declared_type": "decimal",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CashFlows",
              "declared_type": "List<AccrualCashFlowDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_9",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المعاملة بالمعرف المُعطى: '{0}'.",
                "en": "Transaction is cannot be found with given transaction: {0}.",
                "tr": "Verilen işlem bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "TRANSACTION_IS_NOT_FOUND"
            }
          ]
        }
      },
      "put": {
        "operationId": "update-accrual-transaction",
        "tags": [
          "transactions"
        ],
        "summary": "update-accrual-transaction",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualTransactionId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accrualType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accrualType"
                  },
                  "customerAccountId": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "customerAccountId"
                  },
                  "earlyPaymentDiscountRate": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "earlyPaymentDiscountRate"
                  },
                  "effectiveProfitRate": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "effectiveProfitRate"
                  },
                  "maturityBeginDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "maturityBeginDate"
                  },
                  "maturityEndDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "maturityEndDate"
                  },
                  "transactionDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "transactionDate"
                  },
                  "transactionProductLedgerCode": {
                    "type": "string",
                    "x-aura-field-code": "transactionProductLedgerCode"
                  },
                  "xirr": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "xirr"
                  },
                  "yearlyProfitRate": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "yearlyProfitRate"
                  }
                },
                "required": [
                  "accrualType",
                  "customerAccountId",
                  "earlyPaymentDiscountRate",
                  "effectiveProfitRate",
                  "maturityBeginDate",
                  "maturityEndDate",
                  "transactionDate",
                  "transactionProductLedgerCode",
                  "xirr",
                  "yearlyProfitRate"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 10,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-accrual-transaction",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "transactions/{id}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualType",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "TransactionDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "MaturityBeginDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "MaturityEndDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "YearlyProfitRate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "TransactionProductLedgerCode",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CustomerAccountId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "Xirr",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "EffectiveProfitRate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "EarlyPaymentDiscountRate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_9",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المعاملة بالمعرف المُعطى: '{0}'.",
                "en": "Transaction is cannot be found with given transaction: {0}.",
                "tr": "Verilen işlem bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "TRANSACTION_IS_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/transactions/{id}/cash-flows": {
      "get": {
        "operationId": "get-accrual-transaction-cash-flow",
        "tags": [
          "transactions"
        ],
        "summary": "get-accrual-transaction-cash-flow",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualTransactionId"
            }
          },
          {
            "name": "flowDate",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date",
              "x-aura-field-code": "flowDate"
            }
          },
          {
            "name": "minOrdinalPosition",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "minOrdinalPosition"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 2
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares this returns a single record. Of 25 operations in this state with a probeable route, 8 answered and 6 returned a single record — the other two returned a collection and a bare boolean.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "cashFlows": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "accrualAccountingEntryId": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "accrualAccountingEntry"
                          },
                          "accrualStatus": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "accrualStatus"
                          },
                          "amount": {
                            "type": "number",
                            "format": "decimal",
                            "x-aura-field-code": "cashFlowAmount"
                          },
                          "cashFlowId": {
                            "type": "string",
                            "format": "uuid",
                            "x-aura-field-code": "accrualCashFlowId"
                          },
                          "currencyNumber": {
                            "type": "string",
                            "x-aura-field-code": "currencyNumber"
                          },
                          "direction": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "cashFlowDirection"
                          },
                          "fields": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "fieldId": {
                                  "type": "string",
                                  "format": "uuid",
                                  "x-aura-field-code": "cashFlowFieldId"
                                },
                                "fieldValue": {
                                  "type": "string",
                                  "x-aura-field-code": "cashFlowFieldValue"
                                }
                              },
                              "x-aura-field-code": "cashFlowfields"
                            }
                          },
                          "flowDate": {
                            "type": "string",
                            "format": "date",
                            "x-aura-field-code": "flowDate"
                          },
                          "monthDayBasis": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "monthDayBasis"
                          },
                          "ordinalPosition": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "ordinalPosition"
                          },
                          "principalAmount": {
                            "type": "number",
                            "format": "decimal",
                            "x-aura-field-code": "principalAmount"
                          },
                          "profitAmount": {
                            "type": "number",
                            "format": "decimal",
                            "x-aura-field-code": "profitAmount"
                          },
                          "totalDayCount": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "totalDayCount"
                          },
                          "yearDayBasis": {
                            "type": "integer",
                            "format": "int32",
                            "x-aura-field-code": "yearDayBasis"
                          }
                        },
                        "x-aura-field-code": "accrualCashFlows"
                      }
                    }
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-accrual-transaction-cash-flow",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "transactions/{id}/cash-flows",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "FlowDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "MinOrdinalPosition",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AccrualTransactionCashFlowDto",
          "payload": "AccrualTransactionCashFlowDto",
          "collection": false,
          "members": [
            {
              "name": "CashFlows",
              "declared_type": "IEnumerable<AccrualCashFlowDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_9",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المعاملة بالمعرف المُعطى: '{0}'.",
                "en": "Transaction is cannot be found with given transaction: {0}.",
                "tr": "Verilen işlem bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "TRANSACTION_IS_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/transactions/{id}/cash-flows/{cashFlowId}": {
      "put": {
        "operationId": "update-accrual-cash-flow",
        "tags": [
          "transactions"
        ],
        "summary": "update-accrual-cash-flow",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualTransactionId"
            }
          },
          {
            "name": "cashFlowId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualCashFlowId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accrualStatus": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accrualStatus",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "accrual_status",
                      "values": [
                        {
                          "value": 1,
                          "name": "Accrual"
                        },
                        {
                          "value": 2,
                          "name": "NonAccrual"
                        },
                        {
                          "value": 3,
                          "name": "Accrued"
                        },
                        {
                          "value": 4,
                          "name": "Cancelled"
                        },
                        {
                          "value": 5,
                          "name": "Calculated",
                          "labels": {
                            "ar": "محسوب"
                          }
                        }
                      ]
                    }
                  },
                  "amount": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "cashFlowAmount"
                  },
                  "currencyNumber": {
                    "type": "string",
                    "x-aura-field-code": "currencyNumber"
                  },
                  "direction": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "cashFlowDirection",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "flow_direction",
                      "values": [
                        {
                          "value": 1,
                          "name": "Incoming"
                        },
                        {
                          "value": 2,
                          "name": "Outgoing"
                        }
                      ]
                    }
                  },
                  "fields": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "fieldId": {
                          "type": "string",
                          "format": "uuid",
                          "x-aura-field-code": "cashFlowFieldId"
                        },
                        "fieldValue": {
                          "type": "string",
                          "x-aura-field-code": "cashFlowFieldValue"
                        }
                      },
                      "required": [
                        "fieldId",
                        "fieldValue"
                      ],
                      "x-aura-field-code": "cashFlowfields"
                    }
                  },
                  "monthDayBasis": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "monthDayBasis"
                  },
                  "principalAmount": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "principalAmount"
                  },
                  "profitAmount": {
                    "type": "number",
                    "format": "decimal",
                    "x-aura-field-code": "profitAmount"
                  },
                  "yearDayBasis": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "yearDayBasis"
                  }
                },
                "required": [
                  "accrualStatus",
                  "amount",
                  "currencyNumber",
                  "direction",
                  "monthDayBasis",
                  "principalAmount",
                  "profitAmount",
                  "yearDayBasis"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 9,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-accrual-cash-flow",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "transactions/{id}/cash-flows/{cashFlowId}",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CashFlowId",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "AccrualStatus",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "Direction",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "Amount",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "CurrencyNumber",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PrincipalAmount",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProfitAmount",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "MonthDayBasis",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "YearDayBasis",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_10",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على التدفق النقدي بمعرف التدفق النقدي المُعطَى: '{0}'",
                "en": "Cash flow is cannot be found with given Cash Flow: {0}",
                "tr": "Verilen Nakit Akışı ile nakit akışı bulunamadı: {0}"
              },
              "message_available": true,
              "constant_name": "CASH_FLOW_IS_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_14",
              "status": 400,
              "message": {
                "ar": "نوع البيانات للقيمة المدخلة في الحقل: '{0}' غير مكتمل الصيغة. يجب أن تكون بالصيغة '{1}'.",
                "en": "Data type of the value given into field: {0} is not in correct format. It should be in {1} format.",
                "tr": "Alana verilen değerin veri türü: {0} doğru biçimde değil. {1} biçiminde olmalıdır."
              },
              "message_available": true,
              "constant_name": "FIELD_DATA_TYPE_NOT_VALID"
            },
            {
              "code": "ERR_ACCRL_8",
              "status": 400,
              "message": {
                "ar": "الحقل غير نشط أو لا ينتمي إلى المنتج. معرف الحقل: {0}",
                "en": "Field is not active or not belong to the product. FieldId: {0}",
                "tr": "Alan aktif değil veya ürüne ait değil. Alan Kimliği: {0}"
              },
              "message_available": true,
              "constant_name": "PRODUCT_FIELD_IS_NOT_ACTIVE_OR_NOT_BELONG"
            },
            {
              "code": "ERR_ACCRL_9",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المعاملة بالمعرف المُعطى: '{0}'.",
                "en": "Transaction is cannot be found with given transaction: {0}.",
                "tr": "Verilen işlem bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "TRANSACTION_IS_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/transactions/{id}/cash-flows/{cashFlowId}/entry": {
      "put": {
        "operationId": "update-accrual-cash-flow-entry",
        "tags": [
          "transactions"
        ],
        "summary": "update-accrual-cash-flow-entry",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualTransactionId"
            }
          },
          {
            "name": "cashFlowId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "cashFlowId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accrualAccountingEntry": {
                    "type": "string",
                    "format": "uuid",
                    "x-aura-field-code": "accrualAccountingEntry"
                  },
                  "paymentDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "accrualPaymentDate"
                  },
                  "paymentType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accrualPaymentType"
                  }
                },
                "required": [
                  "paymentDate",
                  "paymentType"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-accrual-cash-flow-entry",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "transactions/{id}/cash-flows/{cashFlowId}/entry",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CashFlowId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualAccountingEntry",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "PaymentDate",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "PaymentType",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_10",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على التدفق النقدي بمعرف التدفق النقدي المُعطَى: '{0}'",
                "en": "Cash flow is cannot be found with given Cash Flow: {0}",
                "tr": "Verilen Nakit Akışı ile nakit akışı bulunamadı: {0}"
              },
              "message_available": true,
              "constant_name": "CASH_FLOW_IS_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_9",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المعاملة بالمعرف المُعطى: '{0}'.",
                "en": "Transaction is cannot be found with given transaction: {0}.",
                "tr": "Verilen işlem bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "TRANSACTION_IS_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/transactions/{id}/cash-flows/{cashFlowId}/status": {
      "put": {
        "operationId": "update-accrual-cash-flow-status",
        "tags": [
          "transactions"
        ],
        "summary": "update-accrual-cash-flow-status",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualTransactionId"
            }
          },
          {
            "name": "cashFlowId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualCashFlowId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accrualStatus": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accrualStatus",
                    "x-aura-parameter-enumeration": {
                      "state": "resolved",
                      "parameter": "accrual_status",
                      "values": [
                        {
                          "value": 1,
                          "name": "Accrual"
                        },
                        {
                          "value": 2,
                          "name": "NonAccrual"
                        },
                        {
                          "value": 3,
                          "name": "Accrued"
                        },
                        {
                          "value": 4,
                          "name": "Cancelled"
                        },
                        {
                          "value": 5,
                          "name": "Calculated",
                          "labels": {
                            "ar": "محسوب"
                          }
                        }
                      ]
                    }
                  },
                  "paymentDate": {
                    "type": "string",
                    "format": "date",
                    "x-aura-field-code": "accrualPaymentDate"
                  },
                  "paymentType": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "accrualPaymentType"
                  }
                },
                "required": [
                  "accrualStatus"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-accrual-cash-flow-status",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "transactions/{id}/cash-flows/{cashFlowId}/status",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CashFlowId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualStatus",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "PaymentType",
              "declared_type": null,
              "nullable": true,
              "collection": false
            },
            {
              "name": "PaymentDate",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_10",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على التدفق النقدي بمعرف التدفق النقدي المُعطَى: '{0}'",
                "en": "Cash flow is cannot be found with given Cash Flow: {0}",
                "tr": "Verilen Nakit Akışı ile nakit akışı bulunamadı: {0}"
              },
              "message_available": true,
              "constant_name": "CASH_FLOW_IS_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_9",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المعاملة بالمعرف المُعطى: '{0}'.",
                "en": "Transaction is cannot be found with given transaction: {0}.",
                "tr": "Verilen işlem bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "TRANSACTION_IS_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/transactions/{id}/cash-flows/{cashFlowId}/status-multiple": {
      "put": {
        "operationId": "update-accrual-cash-flow-status-multiple",
        "tags": [
          "transactions"
        ],
        "summary": "update-accrual-cash-flow-status-multiple",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Present in the route template but not declared as a Route-bound field in the catalog.",
            "x-aura-source": "route-template-only"
          },
          {
            "name": "cashFlowId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Present in the route template but not declared as a Route-bound field in the catalog.",
            "x-aura-source": "route-template-only"
          }
        ],
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-accrual-cash-flow-status-multiple",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "transactions/{id}/cash-flows/{cashFlowId}/status-multiple",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "CashFlowId",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "AccrualStatus",
              "declared_type": null,
              "nullable": true,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_10",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على التدفق النقدي بمعرف التدفق النقدي المُعطَى: '{0}'",
                "en": "Cash flow is cannot be found with given Cash Flow: {0}",
                "tr": "Verilen Nakit Akışı ile nakit akışı bulunamadı: {0}"
              },
              "message_available": true,
              "constant_name": "CASH_FLOW_IS_NOT_FOUND"
            },
            {
              "code": "ERR_ACCRL_9",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المعاملة بالمعرف المُعطى: '{0}'.",
                "en": "Transaction is cannot be found with given transaction: {0}.",
                "tr": "Verilen işlem bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "TRANSACTION_IS_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/transactions/{id}/status": {
      "put": {
        "operationId": "update-accrual-transaction-status",
        "tags": [
          "transactions"
        ],
        "summary": "update-accrual-transaction-status",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "accrualTransactionId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActiveAccrualTransaction"
                  }
                },
                "required": [
                  "isActive"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "update-accrual-transaction-status",
        "x-aura-domain": "accrual",
        "x-aura-raw-url-path": "transactions/{id}/status",
        "x-aura-request-contract": {
          "state": "structure",
          "note": "The fields a caller sends.",
          "members": [
            {
              "name": "Id",
              "declared_type": null,
              "nullable": false,
              "collection": false
            },
            {
              "name": "isActive",
              "declared_type": null,
              "nullable": false,
              "collection": false
            }
          ]
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_ACCRL_9",
              "status": 400,
              "message": {
                "ar": "لم يتم العثور على المعاملة بالمعرف المُعطى: '{0}'.",
                "en": "Transaction is cannot be found with given transaction: {0}.",
                "tr": "Verilen işlem bulunamadı: {0}."
              },
              "message_available": true,
              "constant_name": "TRANSACTION_IS_NOT_FOUND"
            }
          ]
        }
      }
    }
  },
  "components": {
    "schemas": {
      "PlatformError": {
        "type": "object",
        "title": "PlatformError",
        "description": "The body a mapped failure returns. One `error` object; `error.code` is the only place the code appears. Not every failure carries it — see the individual statuses.",
        "required": [
          "error"
        ],
        "properties": {
          "error": {
            "type": "object",
            "required": [
              "code",
              "message"
            ],
            "properties": {
              "code": {
                "type": "string",
                "description": "The platform error code. It is the identifier on the wire; a human-readable message for it is NOT guaranteed. The error catalog carries the codes seeded for this snapshot, with whichever of the published languages each one has text for, and many codes raised by services have no seeded entry at all. Where this portal knows which operations raise a code, they list it under `x-aura-error-codes`, each entry saying whether a message exists for it."
              },
              "message": {
                "type": "string",
                "description": "The resolved message for the code, in the language the request asked for."
              },
              "validationErrors": {
                "type": "array",
                "description": "Present on a validation failure only: one entry per rule that failed, each carrying its own code.",
                "items": {
                  "type": "object",
                  "additionalProperties": true
                }
              },
              "businessErrors": {
                "type": "array",
                "description": "Present on a bulk failure only: one code/message pair per failed item.",
                "items": {
                  "type": "object",
                  "properties": {
                    "code": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "responses": {
      "Error400": {
        "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      },
      "Error408": {
        "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      },
      "Error409": {
        "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      },
      "Error500": {
        "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      },
      "Error502": {
        "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      }
    }
  }
}
