# Upload fund Tbar history

Loads fund Tbar history.

Endpoint: POST /f/{businessCode}/{fundCode}/business-data/upload-fund-tbar-history
Version: 1.0
Security: Class_oAuth

## Security:

  - `Class_oAuth` (unknown)
    oauth2 scopes: business.fund.create

## Path parameters:

  - `businessCode` (string, required)
    The unique identifier code for the Class business.

  - `fundCode` (string, required)
    The unique identifier code for the Class entity.

## Request fields (application/json):

  - `FundDetails` (object, required)

  - `FundDetails.Code` (string, required)
    The unique identifier code pointing to the specific fund.

  - `FundTbarDetails` (array, required)
    A collection of distinct Transfer Balance Account Report events.

  - `FundTbarDetails.MemberCode` (string, required)
    The system code representing the member associated with the TBAR event.

  - `FundTbarDetails.PensionAccountName` (string, required)
    The designated internal name representing the affected pension account.

  - `FundTbarDetails.EventDate` (string, required)
    The date when the specific transfer balance event occurred.

  - `FundTbarDetails.EventType` (string, required)
    SIS = Superannuation Income Stream, LRB = Limited Resource Borrowing Arrangement, IRS = Reversionary Income Stream, ICR = Reversionary Child Death Benefit Income Stream, MCO = Member Commutation, CC1 = Commutation Authority - Commuted in full, CC2 = Commutation Authority - Commuted in part, CC3 = Commutation Authority - Deceased, CC4 = Commutation Authority - Defined benefit, SSP = Personal Injury structured settlement, STO = Income stream stops being retirement phase, APV = Accumulation phase value, RPV = Retirement phase value, NTC = Notational taxed contributions
    Enum: "SIS", "LRB", "IRS", "ICR", "MCO", "CC1", "CC2", "CC3", "CC4", "SSP", "STO", "APV", "RPV", "NTC"

  - `FundTbarDetails.Description` (string, required)
    A human-readable description describing the exact nature of the TBAR event.

  - `FundTbarDetails.Amount` (number, required)
    The financial value that credits or debits the transfer balance account.

  - `FundTbarDetails.LodgmentStatus` (string, required)
    The current status indicating if the event has been lodged with the ATO.

## Response 200:

  - `200` (unknown)
    Success (Ok)

## Response 200 fields (application/json):

  - `ErrorCodes` (array, required)
    A collection of error code strings returned by the API operation.

  - `Errors` (array, required)
    A collection of detailed error response objects.

  - `Errors.Code` (string, required)
    The unique error code identifier.

  - `Errors.Message` (string, required)
    A detailed human-readable message explaining the error.

  - `CreatedUri` (string, required)
    The URI pointing to the newly created resource, if applicable.

  - `IsCreatedResponse` (boolean, required)
    Indicates whether the API call successfully created a new resource.

## Response 400:

  - `400` (unknown)
    Error Message

## Response 400 fields (application/json):

  - `Errors` (array)
    A list of validation or request errors.

  - `Errors.code` (string)
    A specific alphanumeric code mapped to the validation failure.

  - `Errors.message` (string)
    A detailed explanation isolating the root cause of the validation failure.

## Response 401:

  - `401` (unknown)
    Unauthorized

## Response 401 fields (application/json):

  - `Errors` (array)
    A list of authorization errors.

  - `Errors.Code` (string)
    The error code isolating authentication token absence or invalidity.
    Example: API_NOT_AUTHORISED

  - `Errors.Message` (string)
    A prompt message stating the client session must successfully authenticate first.
    Example: Not authorised

## Response 403:

  - `403` (unknown)
    Forbidden

## Response 403 fields (application/json):

  - `Errors` (array)
    A list of forbidden access errors.

  - `Errors.Code` (string)
    The standard error code emitted when a user lacks required system privileges.
    Example: FORBIDDEN

  - `Errors.Message` (string)
    A clear message detailing the denial of access based on permission models.
    Example: You do not have permission to access this resource.

## Response 404:

  - `404` (unknown)
    Resource not available or user does not have access to the fund

## Response 404 fields (application/json):

  - `Errors` (array)
    A list of resource not found errors.

  - `Errors.Code` (string)
    The standard error code mapped to missing resources or denied visibility rights.
    Example: API_NOT_FOUND

  - `Errors.Message` (string)
    Information clarifying that the target resource cannot be found or viewed.
    Example: Resource not available or user does not have access to the fund.

## Response 500:

  - `500` (unknown)
    Internal Server Error

## Response 500 fields (application/json):

  - `Errors` (array)
    A list of internal server errors.

  - `Errors.Code` (string)
    The internal system error code signaling an unexpected failure.
    Example: API_INTERNAL_ERROR

  - `Errors.Message` (string)
    The generic public message advising of an unanticipated backend error.
    Example: An unexpected error occurred on the server. Please try again later.

## Response default:

  - `default` (unknown)
    Unexpected error

## Response default fields (application/json):

  - `Errors` (array)
    A list of unexpected errors.

  - `Errors.Code` (string)
    The internal system error code signaling an unexpected failure.
    Example: API_INTERNAL_ERROR

  - `Errors.Message` (string)
    The generic public message advising of an unanticipated backend error.
    Example: An unexpected error occurred on the server. Please try again later.

