Benefit Plan Rollover API | Administrative - SOAP

The BenefitPlanRollover service allows you to add, update, delete, and retrieve rollover configuration for your plans and employers.

Service web methods

The following is a list of methods that is provided by the BenefitPlanRollover service.
  • AddBenefitPlanRolloverSetting - This method is used to add rollover configuration for a plan.
  • UpdateBenefitPlanRolloverSetting - This method is used to update rollover configuration for a plan.
  • DeleteBenefitPlanRolloverSetting - This method is used to delete rollover configuration for a plan.
  • GetBenefitPlanRolloverSetting - This method is used to retrieve rollover configuration for a specific plan.
  • GetBenefitPlanRolloverSettings - This method is used to retrieve rollover configuration for all plans under a specific employer.

Service assumptions and business rules

The BenefitPlanRollover service makes the following assumptions as well as enforces the following business rules:
  • Clients shall conform to the WS-I specifications unless otherwise agreed upon by Alegeus and the administrator.
  • Clients shall format SOAP messages in a document/literal format over HTTPS.
  • Clients shall have already created a valid user ID and password.
  • Clients shall have a valid session ID after being authenticated by the system. The session ID needs to be passed in the proper manner as described in the account manager service guide.
  • If the administrator uses the same user ID and password for all of their clients, the administrator is responsible for managing the security of the data.
  • Clients should validate data before submitting a request to this service. This facilitates better performance and accurate processing on both systems.
  • Clients shall not attempt to use this Service for batch processing of large amounts of data. The service is designed for synchronous calls that send or retrieve small chunks of data. If batch processing is required, then the EDI process should be used.
  • If any method fails, the service returns a SOAP fault describing the problem.

AddBenefitPlanRolloverSetting

This method is used to add rollover configuration for a plan.

History

The AddBenefitPlanRolloverSetting methods are listed below:

Request Message
  • AddBenefitPlanRolloverSettingRequest
  • AddBenefitPlanRolloverSettingRequest_2014_06
Response Message
  • AddBenefitPlanRolloverSettingResult

AddBenefitPlanRolloverSetting request/response message

  • The AddBenefitPlanRolloverSetting method requires the following request and response messages (input and output data.)
  • TpaIdStringrequired
    A unique identifier used to identify your admin instance. This value was system generated with the admin instance was created.
    First Available Version:AddBenefitPlanRolloverSettingRequest
  • EmprIdStringrequired
    Unique identifier for the employer. Note: When the employer was created, WealthCare Admin assigned the 3-character prefix; you assigned the remaining characters.
    First Available Version:AddBenefitPlanRolloverSettingRequest
    Max Length:18
  • PlanIdStringrequired
    Unique Identifier to distinguish this plan from others within the administrator. This value is the source Plan ID.

    Note: The Source Plan is the benefit plan where fund rollover dollars are drawn
    First Available Version:AddBenefitPlanRolloverSettingRequest
    Max Length:18
  • PlanYrStartDteStringrequired
    Date that funds are available for services. This value is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn. Format is YYYYMMDD.
    First Available Version:AddBenefitPlanRolloverSettingRequest
  • PlanYrEndDteStringrequired
    Date after which services are not eligible for payment, unless there is an extension. This value is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn. Format is YYYYMMDD.
    First Available Version:AddBenefitPlanRolloverSettingRequest
    Max Length:9
  • AcctTypeCdeStringrequired
    Three character abbreviation that indicates the type of account (FSA, DCA, TRN, HRA, etc.). This is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn
    First Available Version:AddBenefitPlanRolloverSettingRequest
  • TargetAcctTypeCdeStringrequired
    Plan Account Type Code (FSA, DCA, etc.) for the benefit plan to which fund rollover dollars are deposited when fund rollover occurs.
    First Available Version:AddBenefitPlanRolloverSettingRequest
  • TargetPlanIdStringrequired
    Plan ID of target plan where funds will be deposited with fund rollover. The Target Plan is the benefit plan where fund rollover dollars are deposited.
    First Available Version:AddBenefitPlanRolloverSettingRequest
  • TargetPlanYrStartDteStringrequired
    Plan Year Start Date for Target plan where funds are moving. The Target Plan is the benefit plan where fund rollover dollars are deposited. Format is YYYYMMDD.
    First Available Version:AddBenefitPlanRolloverSettingRequest
  • TargetPlanYrEndDteStringrequired
    Plan Year END Date for Target plan where funds are moving. The Target Plan is the benefit plan where fund rollover dollars are deposited. Format is YYYYMMDD.
    First Available Version:AddBenefitPlanRolloverSettingRequest
  • FundRolloverTypeCdeInteger
    Determines whether rules being created are for primary or secondary fund rollover. If using Secondary Fund Rollover, Primary Fund Rollover rules must be specified first. Attempting to setup Secondary Fund Rollover rules without first specifying Primary Fund Rollover rules will result in an error during processing.
    Primary = 1
    Secondary = 2
    First Available Version:AddBenefitPlanRolloverSettingRequest
    Default Values:Primary
  • RolloverDteDateTime
    The date upon which funds will roll from one year to the next. Must be on or after the source plan's end date. Format is mm/dd/yyyy.
    First Available Version:AddBenefitPlanRolloverSettingRequest
    Default Values:1
  • PlanRolloverOptionsInteger
    Use this field to enable various options for your rollover. Refer to the Fund Rollover Guide in Online Resources for more information on these settings. To use multiple options, sum the numeric indicators (e.g., to use override target plan balance max and exclude zero or negative balance source accounts, enter 40; 8+32). See the bitwise guide for more information.

    1 = Auto-link dependent to target account (option 16 must be included when this option is included)
    2 = Manage balance max at account level
    4 = Fund rollover amount set at account level
    8 = Override Target Plan Balance Max
    16 = WCA creates target fund account (Use this option to tell WealthCare Admin to create Participant Target Accounts during fund rollover process)
    32 = Exclude zero or negative balance source accounts (option 16 must be included when this option is included)
    64 = Include target account balance
    128 = Include Terminated Accounts
    256 = Copy Deductible Flag from source plan (only valid if WCA is creating the target fund account)
    512 = Copy Subgroups from source plan (only valid if WCA is creating the target fund account)
    1024 = Copy Account Segment from source plan (only valid if WCA is creating the target fund account)
    First Available Version:AddBenefitPlanRolloverSettingRequest
  • RolloverEligDteTypeInteger
    This setting determines the effective date of the participant and dependent accounts when WCA creates the employee and dependent accounts.
    NotSet = 0,
    FundRolloverDate = 1,
    TargetPlanStartDate = 2,
    SourcePlanEndDatePlusOne = 4,
    SourcePlanAccountEligDate = 8
    First Available Version:AddBenefitPlanRolloverSettingRequest
    Default Values:NotSet
  • AutoDepositStartDteTypeInteger
    This date is the auto-deposit start date and applies to both employee and employer payroll contributions, whether they are amounts set at
    the employee level or for fixed employer funding.
    None = 0,
    FundRolloverDate = 1,
    TargetPlanStartDate = 2,
    SourcePlanEndDatePlusOne = 4,
    SourcePlanStartDate = 8,
    SourcePlanAccountEligDate = 16
    First Available Version:AddBenefitPlanRolloverSettingRequest
    Default Values:TargetPlanStartDate
  • RolloverAmtDecimal
    Maximum amount of Funds to be rolled over. Leave blank to set an unlimited amount.

    Can be used in conjunction with Rollover rate (%). For example, you can set a rule of 50% up to $500 by populating both fields.

    For Individual/Family HRX plans, this is the family amount.
    First Available Version:AddBenefitPlanRolloverSettingRequest
    Default Values:NULL
  • RolloverRateDecimal
    Indicates % of remaining Family funds to be rolled over on rollover date.

    Can be used in conjunction with Rollover amount. For example, you can set a rule of 50% up to $500 by populating both fields.

    Leave blank to have it default to 100%.
    First Available Version:AddBenefitPlanRolloverSettingRequest
    Default Values:100
  • IndividualRolloverAmtDecimal
    Only used for Individual/Family HRA (HRX) plans.

    Maximum amount of Individual Funds to be rolled over. Can be used in conjunction with Individual Rollover rate (%). For example, you can set a rule of 50% up to $500 by populating both fields.

    Defaults to no maximum if not sent.
    First Available Version:AddBenefitPlanRolloverSettingRequest
    Default Values:NULL
  • IndividualRolloverRateDecimal
    Only used for Individual/Family HRA plans.

    Indicates % of remaining individual funds to be rolled over on rollover date. Can be used in conjunction with Individual Rollover amount. For example, you can set a rule of 50% up to $500 by populating both fields.

    Defaults to 100% if not sent.
    First Available Version:AddBenefitPlanRolloverSettingRequest
    Default Values:100
  • TrackingNumberString
    The tracking number is not used by WealthCare Admin but may be used for you to identify individual requests and their corresponding responses. If this field is sent on the request, WealthCare Admin will return this value on the response.
    First Available Version:AddBenefitPlanRolloverSettingRequest
    Default Values:""
  • MinimumRolloverAmountofFundDecimal
    Minimum rollover amount. If an amount is specified, then the source account must have a disbursable balance greater than or equal to the minimum rollover amount for rollover to occur.

    If the source account has a disbursable balance less than the minimum rollover amount, then the account will be EXCLUDED from fund rollover ($0 transaction appears on the account, with a reason indicating the fund rollover amount available was less than the minimum).

    Only positive dollar amounts are accepted. The amount must be greater than 0.00.

    The default value is NULL, which indicates there is no minimum rollover amount and no accounts will be excluded.
    First Available Version:AddBenefitPlanRolloverSettingRequest_2014_06
    Default Values:-1

Response message:

  • TrackingNumberString
    This field is not used by WealthCare Admin, but can be used to match requests to responses. This will be the same value as sent for TrackingNumber on the request.
    First Available Version:AddBenefitPlanRolloverSettingResponse
  • ErrorCodeInteger
    A numeric code indicating the processing result of the request. 000000 indicates a success.
    Note: Ask Alegeus Healthcare Payment Solutions for a copy of Error Codes for Alegeus Benefits Payment System
    First Available Version:AddBenefitPlanRolloverSettingResponse
  • ErrorDescriptionString 
    Human friendly description corresponding to ErrorCode to indicate either a success or why the request was not successfully processed.
    First Available Version:AddBenefitPlanRolloverSettingResponse

Example of AddBenefitPlanRolloverSetting SOAP request message:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:mbi="http://schemas.datacontract.org/2004/07/MBI.WebServices.Wcf.Headers" xmlns:v1="http://bensoft.metavante.com/WebServices/Contracts/BenefitPlanRollover/2011/04/V1" xmlns:ns="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Request/2011/04/"> 
      <soapenv:Header> 
            <mbiSessionHeader>
                  <mbi:MBISessionID>oiqki3ah52czdxov3a1wn055</mbi:MBISessionID> 
            </>mbiSessionHeader> 
      </soapenv:Header> 
      <soapenv:Body> 
            <v1:AddBenefitPlanRolloverSetting> 
                  <v1:request xsi:type="ns513:AddBenefitPlanRolloverSettingRequest_2016_04" xmlns:ns513="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Request/2016/04/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
                        <ns:AcctTypeCde>FB2</ns:AcctTypeCde> 
                        <ns:EmprId>DJA675756564</ns:EmprId> 
                        <ns:FundRolloverTypeCde>Primary</ns:FundRolloverTypeCde><ns:PlanId>FB2SRC</ns:PlanId> 
                        <ns:PlanRolloverOptions xsi:nil="true"/> 
                        <ns:PlanYrEndDte>20230912</ns:PlanYrEndDte> 
                        <ns:PlanYrStartDte>20230101</ns:PlanYrStartDte> 
                        <ns:RolloverDte>2023-09-15</ns:RolloverDte> 
                        <ns:TargetAcctTypeCde>FB2</ns:TargetAcctTypeCde> 
                        <ns:TargetPlanId>FB2TAR</ns:TargetPlanId> 
                        <ns:TargetPlanYrEndDte>20240913</ns:TargetPlanYrEndDte> 
                        <ns:TargetPlanYrStartDte>20230913</ns:TargetPlanYrStartDte> 
                        <ns:TpaId>T02497</ns:TpaId> 
                        <ns:TrackingNumber xsi:nil="true"/> 
                        <ns1:MinimumRolloverAmountofFund xsi:nil="true" xmlns:ns1="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Request/2014/06/"/><ns513:MaxRolloverAmtofFunds>AllFunds</ns513:MaxRolloverAmtofFunds> 
                  </v1:request> 
            </v1:AddBenefitPlanRolloverSetting> 
      </soapenv:Body> 
</soapenv:Envelope> 

Example of AddBenefitPlanRolloverSetting SOAP response message

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
     <s:Header>
          <ActivityId CorrelationId="ed929667-813c-4439-818e-c0af5b8f5047" xmlns="http://schemas.microsoft.com/2004/09/ServiceModel/Diagnostics">00000000-0000-0000-0000-000000000000</ActivityId>
          <MBIMessageIdHeader xmlns="http://bensoft.metavante.com/WebServices/SoapHeader/">
               <MessageId>urn:uuid:ae4ca028-b00a-4c93-8113-a837f032a895</MessageId>
          </MBIMessageIdHeader>
     </s:Header>
     <s:Body>
          <GetBenefitPlanRolloverSettingResponse xmlns="http://bensoft.metavante.com/WebServices/Contracts/BenefitPlanRollover/2011/04/V1">
               <GetBenefitPlanRolloverSettingResult i:type="b:GetBenefitPlanRolloverSettingResponse_2014_06" xmlns:a="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Response/2011/04/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns:b="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Response/2014/06/">
                      <a:AcctTypeCde>FSL</a:AcctTypeCde>
                      <a:EmprId>9HR2345</a:EmprId>
                      <a:FundRolloverTypeCde>Primary</a:FundRolloverTypeCde>
                      <a:IndividualBalanceMax>-1</a:IndividualBalanceMax>
                      <a:IndividualRolloverAmt>-1.0000</a:IndividualRolloverAmt>
                      <a:IndividualRolloverRate>-1.00</a:IndividualRolloverRate>
                      <a:PlanId>CAPSOURCE</a:PlanId>
                      <a:PlanYrEndDte>20220707</a:PlanYrEndDte>
                      <a:PlanYrStartDte>20220701</a:PlanYrStartDte>
                      <a:RolloverAmt>-1.0000</a:RolloverAmt>
                      <a:RolloverBalanceMax>-1</a:RolloverBalanceMax>
                      <a:RolloverDte>7/8/2022 12:00:00 AM</a:RolloverDte>
                      <a:RolloverEligibilityDateType>TargetPlanStartDate</a:RolloverEligibilityDateType>
                      <a:RolloverLastAutoDepositDateType>TargetPlanStartDate</a:RolloverLastAutoDepositDateType>
                      <a:RolloverRate>-1.00</a:RolloverRate>
                      <a:TargetAcctTypeCde>FSL</a:TargetAcctTypeCde>
                      <a:TargetPlanId>CAPTRAGET</a:TargetPlanId>
                      <a:TargetPlanKey>324</a:TargetPlanKey>
                      <a:TargetPlanYrEndDte>20220731</a:TargetPlanYrEndDte>
                      <a:TargetPlanYrStartDte>20220708</a:TargetPlanYrStartDte>
                      <a:TpaId>T02888</a:TpaId>
                      <b:MinimumRolloverAmountofFund>-1.0000</b:MinimumRolloverAmountofFund>
              </<GetBenefitPlanRolloverSettingResult>
      </<GetBenefitPlanRolloverSettingResponse>
   </s:Body>
</<s:Envelope>

Example client code

The following is an example of the client code (using a .NET proxy class for accessing the service) used when calling the AddBenefitPlanRolloverSetting web method.

try
{
     // Create the session SOAP header in order to pass the Service
     // the client’s current session id.
     mbiSessionHeader = new BenefitPlanRolloverServiceNameSpace.MBISessionHeader();
     // Create proxy object for the service
     proxy = new BenefitPlanRolloverServiceNameSpace.BenefitPlanRolloverService();
     // Create request message for method call (input parameters)
     request = new BenefitPlanRolloverServiceNameSpace.AddBenefitPlanRolloverSettingRequest_2016_04();
     // Set the input parameters
     request.AccountTypeCode = _AccountTypeCode.Text;
     request.EmprId = _EmprId.Text;
     request.PlanId = _PlanId.Text;

     if(_PlanYrStartDte.Text.Length > 0)
     {
          request.PlanYrStartDte = Convert.ToDateTime(_PlanYrStartDte.Text);
     }

     if(_PlanYrEndDte.Text.Length > 0)
     {
          request.PlanYrEndDte = Convert.ToDateTime(_PlanYrEndDte.Text);
     }

     request.TpaId = _TpaId.Text;
     request.TargetAcctTypeCde = _TargetAcctTypeCde.Text;
     request.TargetPlanId = _TargetPlanId.Text;

     if(_TargetPlanYrStartDte.Text.Length > 0)
     {
          request.TargetPlanYrStartDte = _TargetPlanYrStartDte.Text;
     }

     if(_TargetPlanYrEndDte.Text.Length > 0)
     {
          request.TargetPlanYrEndDte = _TargetPlanYrEndDte.Text;
     }

     request.FundRolloverTypeCde = (FundRolloverMethods)_FundRolloverTypeCde.Text;

     if(_RolloverDte.Text.Length > 0)
     {
          request.RolloverDte = Convert.ToDateTime(_RolloverDte.Text);
     }

     request.PlanRolloverOptions = Convert.ToInt32(_PlanRolloverOptions.Text);
     request.RolloverEligDteType = (RolloverEligibilityDateType)_RolloverEligDteType.Text;
     request.AutoDepositStartDteType = (RolloverLastAutoDepositDateType)_AutoDepositStartDteType.Text;
     request.RolloverAmt = Convert.ToDecimal(_RolloverAmt.Text);
     request.RolloverRate = Convert.ToDecimal(_RolloverRate.Text);
     request.IndividualRolloverAmt = Convert.ToDecimal(_IndividualRolloverAmt.Text);
     request.IndividualRolloverRate = Convert.ToDecimal(_IndividualRolloverRate.Text);
     request.TrackingNumber = _TrackingNumber.Text;
     request.MinimumRolloverAmountofFund = Convert.ToDecimal(_MinimumRolloverAmountofFund.Text);
     request.MaxRolloverAmtofFunds = (MaxRolloverAmtofFunds)_MaxRolloverAmtofFunds.Text;
     // session ID returned from login method
     mbiSessionHeader.MBISessionID = _sessionId.Text;
     proxy.MBISessionHeaderValue = mbiSessionHeader;
     // Call the method
     response = proxy.AddBenefitPlanRolloverSetting(request);
     MessageBox.Show("Finished.");
}
catch(SoapException se)
     MessageBox.Show(Formatter.FormatSoapException(se));
}
catch(Exception ex)
{
     MessageBox.Show("EXCEPTION:" + ex.Message);
}

UpdateBenefitPlanRolloverSetting

This method is used to update rollover configuration for a plan.

History

The UpdateBenefitPlanRolloverSetting methods are listed below:

Request Message
  • UpdateBenefitPlanRolloverSettingRequest
  • UpdateBenefitPlanRolloverSettingRequest_2014_06
Response Message
  • UpdateBenefitPlanRolloverSettingResponse

UpdateBenefitPlanRolloverSetting request/response message

The UpdateBenefitPlanRolloverSetting method requires the following request and response messages (input and output data.)

  • TpaIdStringrequired
    A unique identifier used to identify your admin instance. This value was system generated with the admin instance was created.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • EmprIdStringrequired
    Unique identifier for the employer. Note: When the employer was created, WealthCare Admin assigned the 3-character prefix; you assigned the remaining characters.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
    Max Length:18
  • PlanIdStringrequired
    Unique Identifier to distinguish this plan from others within the administrator. This value is the source Plan ID.

    Note: The Source Plan is the benefit plan where fund rollover dollars are drawn
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
    Max Length:18
  • PlanYrStartDteStringrequired
    Date that funds are available for services. This value is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn. Format is YYYYMMDD.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • PlanYrEndDteStringrequired
    Date after which services are not eligible for payment, unless there is an extension. This value is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn. Format is YYYYMMDD.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
    Max Length:9
  • AcctTypeCdeStringrequired
    Three character abbreviation that indicates the type of account (FSA, DCA, TRN, HRA, etc.). This is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • TargetAcctTypeCdeStringrequired
    Plan Account Type Code (FSA, DCA, etc.) for the benefit plan to which fund rollover dollars are deposited when fund rollover occurs.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • TargetPlanIdStringrequired
    Plan ID of target plan where funds will be deposited with fund rollover. The Target Plan is the benefit plan where fund rollover dollars are deposited.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
    Max Length:18
  • TargetPlanYrStartDteStringrequired
    Plan Year Start Date for Target plan where funds are moving. The Target Plan is the benefit plan where fund rollover dollars are deposited. Format is YYYYMMDD.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • TargetPlanYrEndDteStringrequired
    Plan Year END Date for Target plan where funds are moving. The Target Plan is the benefit plan where fund rollover dollars are deposited. Format is YYYYMMDD.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • FundRolloverTypeCdeInteger
    Determines whether rules being created are for primary or secondary fund rollover. If using Secondary Fund Rollover, Primary Fund Rollover rules must be specified first. Attempting to setup Secondary Fund Rollover rules without first specifying Primary Fund Rollover rules will result in an error during processing.
    Primary = 1
    Secondary = 2
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • RolloverDteDateTime
    The date upon which funds will roll from one year to the next. Must be on or after the source plan's end date. Format is mm/dd/yyyy.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • PlanRolloverOptionsInteger
    Use this field to enable various options for your rollover. Refer to the Fund Rollover Guide in Online Resources for more information on these settings. To use multiple options, sum the numeric indicators (e.g., to use override target plan balance max and exclude zero or negative balance source accounts, enter 40; 8+32). See the bitwise guide for more information.

    1 = Auto-link dependent to target account (option 16 must be included when this option is included)
    2 = Manage balance max at account level
    4 = Fund rollover amount set at account level
    8 = Override Target Plan Balance Max
    16 = WCA creates target fund account (Use this option to tell WealthCare Admin to create Participant Target Accounts during fund rollover process)
    32 = Exclude zero or negative balance source accounts (option 16 must be included when this option is included)
    64 = Include target account balance
    128 = Include Terminated Accounts
    256 = Copy Deductible Flag from source plan (only valid if WCA is creating the target fund account)
    512 = Copy Subgroups from source plan (only valid if WCA is creating the target fund account)
    1024 = Copy Account Segment from source plan (only valid if WCA is creating the target fund account)
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • RolloverEligDteTypeInteger
    This setting determines the effective date of the participant and dependent accounts when WCA creates the employee and dependent accounts.
    NotSet = 0,
    FundRolloverDate = 1,
    TargetPlanStartDate = 2,
    SourcePlanEndDatePlusOne = 4,
    SourcePlanAccountEligDate = 8
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • AutoDepositStartDteTypeInteger
    This date is the auto-deposit start date and applies to both employee and employer payroll contributions, whether they are amounts set at
    the employee level or for fixed employer funding.
    None = 0,
    FundRolloverDate = 1,
    TargetPlanStartDate = 2,
    SourcePlanEndDatePlusOne = 4,
    SourcePlanStartDate = 8,
    SourcePlanAccountEligDate = 16
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • RolloverAmtDecimal
    Maximum amount of Funds to be rolled over. Leave blank to set an unlimited amount.

    Can be used in conjunction with Rollover rate (%). For example, you can set a rule of 50% up to $500 by populating both fields.

    For Individual/Family HRX plans, this is the family amount.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • RolloverRateDecimal
    Indicates % of remaining Family funds to be rolled over on rollover date.

    Can be used in conjunction with Rollover amount. For example, you can set a rule of 50% up to $500 by populating both fields.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • IndividualRolloverAmtDecimal
    Only used for Individual/Family HRA (HRX) plans.

    Maximum amount of Individual Funds to be rolled over. Can be used in conjunction with Individual Rollover rate (%). For example, you can set a rule of 50% up to $500 by populating both fields.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • IndividualRolloverRateDecimal
    Only used for Individual/Family HRA plans.

    Indicates % of remaining individual funds to be rolled over on rollover date. Can be used in conjunction with Individual Rollover amount. For example, you can set a rule of 50% up to $500 by populating both fields.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
  • TrackingNumberString
    The tracking number is not used by WealthCare Admin but may be used for you to identify individual requests and their corresponding responses. If this field is sent on the request, WealthCare Admin will return this value on the response.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest
    Default Values:""
  • MinimumRolloverAmountofFundDecimal
    Minimum rollover amount. If an amount is specified, then the source account must have a disbursable balance greater than or equal to the minimum rollover amount for rollover to occur.

    If the source account has a disbursable balance less than the minimum rollover amount, then the account will be EXCLUDED from fund rollover ($0 transaction appears on the account, with a reason indicating the fund rollover amount available was less than the minimum).

    Only positive dollar amounts are accepted. The amount must be greater than 0.00.
    First Available Version:UpdateBenefitPlanRolloverSettingRequest_2014_06
    Default Values:-1

Response message:

  • TrackingNumberString
    This field is not used by WealthCare Admin, but can be used to match requests to responses. This will be the same value as sent for TrackingNumber on the request.
    First Available Version:UpdateBenefitPlanRolloverSettingResponse
  • ErrorCodeInteger
    A numeric code indicating the processing result of the request. 000000 indicates a success.
    Note: Ask Alegeus Healthcare Payment Solutions for a copy of Error Codes for Alegeus Benefits Payment System
    First Available Version:UpdateBenefitPlanRolloverSettingResponse
  • ErrorDescriptionString 
    Human friendly description corresponding to ErrorCode to indicate either a success or why the request was not successfully processed.
    First Available Version:UpdateBenefitPlanRolloverSettingResponse

Example of UpdateBenefitPlanRolloverSetting SOAP request message:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:mbi="http://schemas.datacontract.org/2004/07/MBI.WebServices.Wcf.Headers" xmlns:v1="http://bensoft.metavante.com/WebServices/Contracts/BenefitPlanRollover/2011/04/V1" xmlns:ns="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Request/2011/04/">
   <soapenv:Header>
      <mbiSessionHeader>
         <!--Optional:-->
         <mbi:MBISessionID>r3adzpndwjsqeqnuaqkmnkpn</mbi:MBISessionID>
      </mbiSessionHeader>
   </soapenv:Header>
   <soapenv:Body>
      <v1:UpdateBenefitPlanRolloverSetting>
         <!--Optional:-->
         <v1:request xsi:type="ns40:UpdateBenefitPlanRolloverSettingRequest_2016_04" xmlns:ns40="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Request/2016/04/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <ns:AcctTypeCde>FB2</ns:AcctTypeCde>
            <!--Optional:-->
            <ns:EmprId>SHAEMPGP</ns:EmprId>
            <!--Optional:-->
            <ns:FundRolloverTypeCde>Primary</ns:FundRolloverTypeCde>
            <!--Optional:-->
            <!--Optional:-->
            <ns:PlanId>SRCPL01</ns:PlanId>
            <!--Optional:-->
            <ns:PlanYrEndDte>20230930</ns:PlanYrEndDte>
            <ns:PlanYrStartDte>20230901</ns:PlanYrStartDte>
            <!--Optional:-->
            <!--Optional:-->
            <ns:RolloverDte>2023-10-06</ns:RolloverDte>
            <!--Optional:-->
            <!--Optional:-->
            <ns:TargetAcctTypeCde>FB2</ns:TargetAcctTypeCde>
            <ns:TargetPlanId>TRG01PL</ns:TargetPlanId>
            <ns:TargetPlanYrEndDte>20231031</ns:TargetPlanYrEndDte>
            <ns:TargetPlanYrStartDte>20231001</ns:TargetPlanYrStartDte>
            <ns:TpaId>T02198</ns:TpaId>
            <!--Optional:-->
            <ns:TrackingNumber xsi:nil="true"/>
            <!--Optional:-->
            <ns1:MinimumRolloverAmountofFund xmlns:ns1="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Request/2014/06/">1</ns1:MinimumRolloverAmountofFund>
            <!--Optional:-->
         </v1:request>
      </v1:UpdateBenefitPlanRolloverSetting>
   </soapenv:Body>
</soapenv:Envelope>

Example of UpdateBenefitPlanRolloverSetting SOAP response message:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Header>
      <ActivityId CorrelationId="916fe779-1fac-4e2c-ac1d-7d5f7ced5f4d" xmlns="http://schemas.microsoft.com/2004/09/ServiceModel/Diagnostics">00000000-0000-0000-0000-000000000000</ActivityId>
      <MBIMessageIdHeader xmlns="http://bensoft.metavante.com/WebServices/SoapHeader/">
         <MessageId>urn:uuid:1e980bdf-ab02-4974-bf4e-916c05214a65</MessageId>
      </MBIMessageIdHeader>
      <mbiWarningsHeader xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
         <MBIWarnings xmlns="http://schemas.datacontract.org/2004/07/MBI.WebServices.Wcf.Headers">
            <MBIWarningsHeader.MBIWarning>
               <Code>990873
               <Message>Grace period date should not be provided when fund rollover enabled.</Message>
            </<MBIWarningsHeader.MBIWarning>
            <MBIWarningsHeader.MBIWarning i:nil="true"/>
         </<MBIWarnings>
      </mbiWarningsHeader>
   </s:Header>
   <s:Body>
      <UpdateBenefitPlanRolloverSettingResponse xmlns="http://bensoft.metavante.com/WebServices/Contracts/BenefitPlanRollover/2011/04/V1">
         <UpdateBenefitPlanRolloverSettingResult xmlns:a="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Response/2011/04/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
            <a:ErrorCode>0</a:ErrorCode>
            <a:ErrorDescription>OK</a:ErrorDescription>
            <a:TrackingNumber i:nil="true"/>
         </<UpdateBenefitPlanRolloverSettingResult>
      </<UpdateBenefitPlanRolloverSettingResponse>
   </<s:Body>
</s:Envelope>

Example client code

The following is an example of the client code (using a .NET proxy class for accessing the service) used when calling the UpdateBenefitPlanRolloverSetting web method.

try
{
          // Create the session SOAP header in order to pass the Service
          // the client’s current session id.
          mbiSessionHeader = new BenefitPlanRolloverServiceNameSpace.MBISessionHeader();
          // Create proxy object for the service
          proxy = new BenefitPlanRolloverServiceNameSpace.BenefitPlanRolloverService();
          // Create request message for method call (input parameters)
          request = new BenefitPlanRolloverServiceNameSpace.UpdateBenefitPlanRolloverSettingRequest_2016_04();
          // Set the input parameters
          request.AcctTypeCde = _AcctTypeCde.Text;
          request.EmprId = _EmprId.Text;
          request.PlanId = _PlanId.Text;
          if(_PlanYrEndDte.Text.Length > 0)
          {
                          request.PlanYrEndDte = _PlanYrEndDte.Text;
           }
          if(_PlanYrStartDte.Text.Length > 0)
          {
                          request.PlanYrStartDte = _PlanYrStartDte.Text;
          }
          request.TpaId = _TpaId.Text;
          request.TargetAcctTypeCde = _TargetAcctTypeCde.Text;
          request.TargetPlanId = _TargetPlanId.Text;
          if(_TargetPlanYrStartDte.Text.Length > 0)
          {
                          request.TargetPlanYrStartDte = _TargetPlanYrStartDte.Text;
          }
          if(_TargetPlanYrEndDte.Text.Length > 0)
          {
                          request.TargetPlanYrEndDte = _TargetPlanYrEndDte.Text;
          }
          request.FundRolloverTypeCde = (FundRolloverMethods)_FundRolloverTypeCde.Text;
          if(_RolloverDte.Text.Length > 0)
          {
                          request.RolloverDte = Convert.ToDateTime(_RolloverDte.Text);
          }
          request.PlanRolloverOptions = Convert.ToInt32(_PlanRolloverOptions.Text);
          request.RolloverEligDteType = (RolloverEligibilityDateType)_RolloverEligDteType.Text;
          request.AutoDepositStartDteType = (RolloverLastAutoDepositDateType)_AutoDepositStartDteType.Text;
          request.RolloverAmt = Convert.ToDecimal(_RolloverAmt.Text);
          request.RolloverRate = Convert.ToDecimal(_RolloverRate.Text);
          request.IndividualRolloverAmt = Convert.ToDecimal(_IndividualRolloverAmt.Text);
          request.IndividualRolloverRate = Convert.ToDecimal(_IndividualRolloverRate.Text);
          request.TrackingNumber = _TrackingNumber.Text;
          request.MinimumRolloverAmountofFund = Convert.ToDecimal(_MinimumRolloverAmountofFund.Text);
          request.MaxRolloverAmtofFunds = (MaxRolloverAmtofFunds)_MaxRolloverAmtofFunds.Text;
          // session ID returned from login method
          mbiSessionHeader.MBISessionID = _sessionId.Text;
          proxy.MBISessionHeaderValue = mbiSessionHeader;
          // Call the method
          response = proxy.UpdateBenefitPlanRolloverSetting(request);
          MessageBox.Show("Finished.");
}
catch(SoapException se)
{
          MessageBox.Show(Formatter.FormatSoapException(se));
}
catch(Exception ex)
{
          MessageBox.Show("EXCEPTION:" + ex.Message);
}

DeleteBenefitPlanRolloverSetting

This method is used to delete rollover configuration for a plan.

History

The DeleteBenefitPlanRolloverSetting methods are listed below:

Request Message
  • DeleteBenefitPlanRolloverSettingRequest
Response Message
  • DeleteBenefitPlanRolloverSettingResponse

DeleteBenefitPlanRolloverSetting request/response messages

The DeleteBenefitPlanRolloverSetting method requires the following request and response messages (input and output data.)

  • TpaIdStringrequired
    A unique identifier used to identify your admin instance. This value was system generated with the admin instance was created.
    First Available Version:DeleteBenefitPlanRolloverSettingRequest
  • EmprIdStringrequired
    Unique identifier for the employer for which you want to retrieve metrics. Note: When the employer was created, WealthCare Admin assigned the 3-character prefix; you assigned the remaining characters.
    First Available Version:DeleteBenefitPlanRolloverSettingRequest
    Max Length:18
  • PlanIdStringrequired
    Unique Identifier to distinguish this plan from others within the administrator. This value is the source Plan ID.

    Note: The Source Plan is the benefit plan where fund rollover dollars are drawn
    First Available Version:DeleteBenefitPlanRolloverSettingRequest
    Max Length:18
  • PlanYrStartDteStringrequired
    Date that funds are available for services. This value is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn. Format is YYYYMMDD.
    First Available Version:DeleteBenefitPlanRolloverSettingRequest
  • PlanYrEndDteStringrequired
    Date after which services are not eligible for payment, unless there is an extension. This value is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn. Format is YYYYMMDD.
    First Available Version:DeleteBenefitPlanRolloverSettingRequest
    Max Length:9
  • AcctTypeCdeStringrequired
    Three character abbreviation that indicates the type of account (FSA, DCA, TRN, HRA, etc.). This is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn
    First Available Version:DeleteBenefitPlanRolloverSettingRequest
  • FundRolloverTypeCdeIntegerrequired
    Determines whether rules being created are for primary or secondary fund rollover. If using Secondary Fund Rollover, Primary Fund Rollover rules must be specified first. Attempting to setup Secondary Fund Rollover rules without first specifying Primary Fund Rollover rules will result in an error during processing.
    Primary = 1
    Secondary = 2
    First Available Version:DeleteBenefitPlanRolloverSettingRequest
  • TrackingNumberString
    The tracking number is not used by WealthCare Admin but may be used for you to identify individual requests and their corresponding responses. If this field is sent on the request, WealthCare Admin will return this value on the response.
    First Available Version:DeleteBenefitPlanRolloverSettingRequest
    Default Values:""

Response message:

  • TrackingNumberString
    This field is not used by WealthCare Admin, but can be used to match requests to responses. This will be the same value as sent for TrackingNumber on the request.
    First Available Version:DeleteBenefitPlanRolloverSettingResponse
  • ErrorCodeInteger
    A numeric code indicating the processing result of the request. 000000 indicates a success.
    Note: Ask Alegeus Healthcare Payment Solutions for a copy of Error Codes for Alegeus Benefits Payment System
    First Available Version:DeleteBenefitPlanRolloverSettingResponse
  • ErrorDescriptionString 
    Human friendly description corresponding to ErrorCode to indicate either a success or why the request was not successfully processed.
    First Available Version:DeleteBenefitPlanRolloverSettingResponse

Example of DeleteBenefitPlanRolloverSetting SOAP request message

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:mbi="http://schemas.datacontract.org/2004/07/MBI.WebServices.Wcf.Headers" xmlns:v1="http://bensoft.metavante.com/WebServices/Contracts/BenefitPlanRollover/2011/04/V1" xmlns:ns="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Request/2011/04/">
   <soapenv:Header>
      <mbiSessionHeader>
         <!--Optional:-->
         <mbi:MBISessionID>bvr4ivlfosuo1xvcckq24t4q</mbi:MBISessionID>
      </mbiSessionHeader>
   </soapenv:Header>
   <soapenv:Body>
      <v1:DeleteBenefitPlanRolloverSetting>
         <!--Optional:-->
         <v1:request>
            <ns:AcctTypeCde>FB2</ns:AcctTypeCde>
            <ns:EmprId>9HR2345      </ns:EmprId>
            <ns:FundRolloverTypeCde>Primary</ns:FundRolloverTypeCde>
            <ns:PlanId>FSAP1</ns:PlanId>
            <ns:PlanYrEndDte>20230830</ns:PlanYrEndDte>
            <ns:PlanYrStartDte>20230801</ns:PlanYrStartDte>
            <ns:TpaId>T02888</ns:TpaId>
            <!--Optional:-->
            <ns:TrackingNumber>0</ns:TrackingNumber>
         </v1:request>
      </v1:DeleteBenefitPlanRolloverSetting>
   </soapenv:Body>
</soapenv:Envelope>

Example of DeleteBenefitPlanRolloverSetting SOAP response message

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Header>
      <ActivityId CorrelationId="889eff1d-46f2-4b26-ab33-8f358fff611b" xmlns="http://schemas.microsoft.com/2004/09/ServiceModel/Diagnostics">00000000-0000-0000-0000-000000000000</ActivityId>
      <MBIMessageIdHeader xmlns="http://bensoft.metavante.com/WebServices/SoapHeader/">
         <MessageId>urn:uuid:33052fc2-52a2-4f97-bda7-7a5626efd441</MessageId>
      </MBIMessageIdHeader>
   </s:Header>
   <s:Body>
      <DeleteBenefitPlanRolloverSettingResponse xmlns="http://bensoft.metavante.com/WebServices/Contracts/BenefitPlanRollover/2011/04/V1">
         <DeleteBenefitPlanRolloverSettingResult xmlns:a="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Response/2011/04/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
            <a:ErrorCode>0</a:ErrorCode>
            <a:ErrorDescription>OK</a:ErrorDescription>
            <a:TrackingNumber>0</a:TrackingNumber>
         </DeleteBenefitPlanRolloverSettingResult>
      </DeleteBenefitPlanRolloverSettingResponse>
   </s:Body>
</s:Envelope>

Example client code

The following is an example of the client code (using a .NET proxy class for accessing the service) used when calling the DeleteBenefitPlanRolloverSetting web method.

try
{
         // Create the session SOAP header in order to pass the Service
         // the client’s current session id.
        mbiSessionHeader = new BenefitPlanRolloverServiceNameSpace.MBISessionHeader();
       // Create proxy object for the service
        proxy = new BenefitPlanRolloverServiceNameSpace.BenefitPlanRolloverService();
       // Create request message for method call (input parameters)
                request = new BenefitPlanRolloverServiceNameSpace.DeleteBenefitPlanRolloverSettingRequest();
      // Set the input parameters
                request.AcctTypeCde = _AcctTypeCde.Text;
        request.EmprId = _EmprId.Text;
        request.PlanId = _PlanId.Text;
        if(_PlanYrEndDte.Text.Length > 0)
        {
                  request.PlanYrEndDte = _PlanYrEndDte.Text;
        }
        if(_PlanYrStartDte.Text.Length > 0)
        {
        request.PlanYrStartDte = _PlanYrStartDte.Text;
        }
        request.TpaId = _TpaId.Text;
                request.FundRolloverTypeCde = (FundRolloverMethods)_FundRolloverTypeCde.Text;
                request.TrackingNumber = _TrackingNumber.Text;
      // session ID returned from login method
        mbiSessionHeader.MBISessionID = _sessionId.Text;
        proxy.MBISessionHeaderValue = mbiSessionHeader;
      // Call the method
        response = proxy.DeleteBenefitPlanRolloverSetting(request);
        MessageBox.Show("Finished.");
}
catch(SoapException se)
{
       MessageBox.Show(Formatter.FormatSoapException(se));
}
catch(Exception ex)
{
       MessageBox.Show("EXCEPTION:" + ex.Message);
}

GetBenefitPlanRolloverSetting

This method is used to retrieve rollover configuration for a specific plan.

History

The GetBenefitPlanRolloverSetting methods are listed below:

Request Messages
  • GetBenefitPlanRolloverSettingRequest
Response Messages
  • GetBenefitPlanRolloverSettingResponse

GetBenefitPlanRolloverSetting request/response messages

The GetBenefitPlanRolloverSetting method requires the following request and response messages (input and output data.)

  • TpaIdStringrequired
    A unique identifier used to identify your admin instance. This value was system generated with the admin instance was created.
    First Available Version:GetBenefitPlanRolloverSettingRequest
  • EmprIdStringrequired
    Unique identifier for the employer for which you want to retrieve metrics. Note: When the employer was created, WealthCare Admin assigned the 3-character prefix; you assigned the remaining characters.
    First Available Version:GetBenefitPlanRolloverSettingRequest
    Max Length:18
  • PlanIdStringrequired
    Unique Identifier to distinguish this plan from others within the administrator. This value is the source Plan ID.

    Note: The Source Plan is the benefit plan where fund rollover dollars are drawn
    First Available Version:GetBenefitPlanRolloverSettingRequest
    Max Length:18
  • PlanYrStartDteStringrequired
    Date that funds are available for services. This value is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn. Format is YYYYMMDD.
    First Available Version:GetBenefitPlanRolloverSettingRequest
  • PlanYrEndDteStringrequired
    Date after which services are not eligible for payment, unless there is an extension. This value is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn. Format is YYYYMMDD.
    First Available Version:GetBenefitPlanRolloverSettingRequest
    Max Length:9
  • AcctTypeCdeStringrequired
    Three character abbreviation that indicates the type of account (FSA, DCA, TRN, HRA, etc.). This is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn
    First Available Version:GetBenefitPlanRolloverSettingRequest
  • FundRolloverTypeCdeIntegerrequired
    Determines whether rules being created are for primary or secondary fund rollover. If using Secondary Fund Rollover, Primary Fund Rollover rules must be specified first. Attempting to setup Secondary Fund Rollover rules without first specifying Primary Fund Rollover rules will result in an error during processing.
    Primary = 1
    Secondary = 2
    First Available Version:GetBenefitPlanRolloverSettingRequest

Response message:

  • TpaIdString
    A unique identifier used to identify your admin instance. This value was system generated with the admin instance was created.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • EmprIdString
    Unique identifier for the employer. Note: When the employer was created, WealthCare Admin assigned the 3-character prefix; you assigned the remaining characters.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • PlanIdString
    Unique Identifier to distinguish this plan from others within the administrator. This value is the source Plan ID.

    Note: The Source Plan is the benefit plan where fund rollover dollars are drawn
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • PlanYrStartDteString
    Date that funds are available for services. This value is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn. Format is YYYYMMDD.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • PlanYrEndDteString
    Date after which services are not eligible for payment, unless there is an extension. This value is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn. Format is YYYYMMDD.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • AcctTypeCdeString
    Three character abbreviation that indicates the type of account (FSA, DCA, TRN, HRA, etc.). This is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • TargetPlanKeyInteger
    A system generated key used to uniquely identify the target plan. The targe plan is the benefit plan where fund rollover dollars are deposited.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • TargetAcctTypeCdeString
    Plan Account Type Code (FSA, DCA, etc.) for the benefit plan to which fund rollover dollars are deposited when fund rollover occurs.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • TargetPlanIdString
    Plan ID of target plan where funds will be deposited with fund rollover. The Target Plan is the benefit plan where fund rollover dollars are deposited.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • TargetPlanYrStartDteString
    Plan Year Start Date for Target plan where funds are moving. The Target Plan is the benefit plan where fund rollover dollars are deposited. Format is YYYYMMDD.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • TargetPlanYrEndDteString
    Plan Year END Date for Target plan where funds are moving. The Target Plan is the benefit plan where fund rollover dollars are deposited. Format is YYYYMMDD.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • FundRolloverTypeCdeInteger
    Determines whether rules being created are for primary or secondary fund rollover. If using Secondary Fund Rollover, Primary Fund Rollover rules must be specified first. Attempting to setup Secondary Fund Rollover rules without first specifying Primary Fund Rollover rules will result in an error during processing.
    Primary = 1
    Secondary = 2
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • RolloverDteDateTime
    The date upon which funds will roll from one year to the next. Must be on or after the source plan's end date. Format is mm/dd/yyyy.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • PlanRolloverSettingOptionsInteger
    Use this field to enable various options for your rollover. Refer to the Fund Rollover Guide in Online Resources for more information on these settings. To use multiple options, sum the numeric indicators (e.g., to use override target plan balance max and exclude zero or negative balance source accounts, enter 40; 8+32). See the bitwise guide for more information.

    1 = Auto-link dependent to target account (option 16 must be included when this option is included)
    2 = Manage balance max at account level
    4 = Fund rollover amount set at account level
    8 = Override Target Plan Balance Max
    16 = WCA creates target fund account (Use this option to tell WealthCare Admin to create Participant Target Accounts during fund rollover process)
    32 = Exclude zero or negative balance source accounts (option 16 must be included when this option is included)
    64 = Include target account balance
    128 = Include Terminated Accounts
    256 = Copy Deductible Flag from source plan (only valid if WCA is creating the target fund account)
    512 = Copy Subgroups from source plan (only valid if WCA is creating the target fund account)
    1024 = Copy Account Segment from source plan (only valid if WCA is creating the target fund account)
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • RolloverEligibilityDateTypeInteger
    This setting determines the effective date of the participant and dependent accounts when WCA creates the employee and dependent accounts.
    NotSet = 0,
    FundRolloverDate = 1,
    TargetPlanStartDate = 2,
    SourcePlanEndDatePlusOne = 4,
    SourcePlanAccountEligDate = 8
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • RolloverLastAutoDepositDateTypeInteger
    This date is the auto-deposit start date and applies to both employee and employer payroll contributions, whether they are amounts set at
    the employee level or for fixed employer funding.
    None = 0,
    FundRolloverDate = 1,
    TargetPlanStartDate = 2,
    SourcePlanEndDatePlusOne = 4,
    SourcePlanStartDate = 8,
    SourcePlanAccountEligDate = 16
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • RolloverAmtDecimal
    Maximum amount of Funds to be rolled over.

    Can be used in conjunction with Rollover rate (%). For example, you can set a rule of 50% up to $500 by populating both fields.

    For Individual/Family HRX plans, this is the family amount.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • RolloverRateDecimal
    Indicates % of remaining Family funds to be rolled over on rollover date.

    Can be used in conjunction with Rollover amount. For example, you can set a rule of 50% up to $500 by populating both fields.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • RolloverBalanceMaxDecimal
    Maximum amount of Funds to be rolled over.

    If an Individual/Family type HRA plan (HRX), this is the Family Funds Amount.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • IndividualRolloverAmtDecimal
    Only used for Individual/Family HRA (HRX) plans.

    Maximum amount of Individual Funds to be rolled over. Can be used in conjunction with Individual Rollover rate (%). For example, you can set a rule of 50% up to $500 by populating both fields.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • IndividualRolloverRateDecimal
    Only used for Individual/Family HRA plans.

    Indicates % of remaining individual funds to be rolled over on rollover date. Can be used in conjunction with Individual Rollover amount. For example, you can set a rule of 50% up to $500 by populating both fields.
    First Available Version:GetBenefitPlanRolloverSettingResponse
  • MinimumRolloverAmountofFundDecimal
    Minimum rollover amount. If an amount is specified, then the source account must have a disbursable balance greater than or equal to the minimum rollover amount for rollover to occur.

    If the source account has a disbursable balance less than the minimum rollover amount, then the account will be EXCLUDED from fund rollover ($0 transaction appears on the account, with a reason indicating the fund rollover amount available was less than the minimum).

    Only positive dollar amounts are accepted. The amount must be greater than 0.00.
    First Available Version:GetBenefitPlanRolloverSettingResponse

Example of GetBenefitPlanRolloverSetting SOAP request message:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:mbi="http://schemas.datacontract.org/2004/07/MBI.WebServices.Wcf.Headers" xmlns:v1="http://bensoft.metavante.com/WebServices/Contracts/BenefitPlanRollover/2011/04/V1" xmlns:ns="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Request/2011/04/">
   <soapenv:Header>
      <mbiSessionHeader>
         <!--Optional:-->
         <mbi:MBISessionID>bvr4ivlfosuo1xvcckq24t4q</mbi:MBISessionID>
      </mbiSessionHeader>
   </soapenv:Header>
   <soapenv:Body>
      <v1:GetBenefitPlanRolloverSetting>
         <!--Optional:-->
         <v1:request xsi:type="ns987:GetBenefitPlanRolloverSettingRequest_2014_06" xmlns:ns987="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Request/2014/06/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <ns:AcctTypeCde>FSL</ns:AcctTypeCde>
            <ns:EmprId>9HR2345</ns:EmprId>
            <ns:FundRolloverTypeCde>Primary</ns:FundRolloverTypeCde>
            <ns:PlanId>CAPSOURCE </ns:PlanId>
            <ns:PlanYrEndDte>20220707</ns:PlanYrEndDte>
            <ns:PlanYrStartDte>20220701</ns:PlanYrStartDte>
            <ns:TpaId>T02888</ns:TpaId>
         </v1:request>
      </v1:GetBenefitPlanRolloverSetting>
   </soapenv:Body>
</soapenv:Envelope>

Example of GetBenefitPlanRolloverSetting SOAP response message

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Header>
      <ActivityId CorrelationId="ed929667-813c-4439-818e-c0af5b8f5047" xmlns="http://schemas.microsoft.com/2004/09/ServiceModel/Diagnostics">00000000-0000-0000-0000-000000000000</ActivityId>
      <MBIMessageIdHeader xmlns="http://bensoft.metavante.com/WebServices/SoapHeader/">
         <MessageId>urn:uuid:ae4ca028-b00a-4c93-8113-a837f032a895</MessageId>
      </MBIMessageIdHeader>
   </s:Header>
   <s:Body>
      <GetBenefitPlanRolloverSettingResponse xmlns="http://bensoft.metavante.com/WebServices/Contracts/BenefitPlanRollover/2011/04/V1">
         <GetBenefitPlanRolloverSettingResult i:type="b:GetBenefitPlanRolloverSettingResponse_2014_06" xmlns:a="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Response/2011/04/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns:b="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Response/2014/06/">
            <a:AcctTypeCde>FSL</a:AcctTypeCde>
            <a:EmprId>9HR2345</a:EmprId>
            <a:FundRolloverTypeCde>Primary</a:FundRolloverTypeCde>
            <a:IndividualBalanceMax>-1</a:IndividualBalanceMax>
            <a:IndividualRolloverAmt>-1.0000</a:IndividualRolloverAmt>
            <a:IndividualRolloverRate>-1.00</a:IndividualRolloverRate>
            <a:PlanId>CAPSOURCE</a:PlanId>
            <a:PlanYrEndDte>20220707</a:PlanYrEndDte>
            <a:PlanYrStartDte>20220701</a:PlanYrStartDte>
            <a:RolloverAmt>-1.0000</a:RolloverAmt>
            <a:RolloverBalanceMax>-1</a:RolloverBalanceMax>
            <a:RolloverDte>7/8/2022 12:00:00 AM</a:RolloverDte>
            <a:RolloverEligibilityDateType>TargetPlanStartDate</a:RolloverEligibilityDateType>
            <a:RolloverLastAutoDepositDateType>TargetPlanStartDate</a:RolloverLastAutoDepositDateType>
            <a:RolloverRate>-1.00</a:RolloverRate>
            <a:TargetAcctTypeCde>FSL</a:TargetAcctTypeCde>
            <a:TargetPlanId>CAPTRAGET</a:TargetPlanId>
            <a:TargetPlanKey>324</a:TargetPlanKey>
            <a:TargetPlanYrEndDte>20220731</a:TargetPlanYrEndDte>
            <a:TargetPlanYrStartDte>20220708</a:TargetPlanYrStartDte>
            <a:TpaId>T02888</a:TpaId>
            <b:MinimumRolloverAmountofFund>-1.0000</b:MinimumRolloverAmountofFund>
         </GetBenefitPlanRolloverSettingResult>
      </GetBenefitPlanRolloverSettingResponse>
   </s:Body>
</s:Envelope>

Example client code

The following is an example of the client code (using a .NET proxy class for accessing the service) used when calling the GetBenefitPlanRolloverSetting web method.

try
{
            // Create the session SOAP header in order to pass the Service
            // the client’s current session id.
            mbiSessionHeader = new BenefitPlanRolloverServiceNameSpace.MBISessionHeader();
           // Create proxy object for the service
            proxy = new BenefitPlanRolloverServiceNameSpace.BenefitPlanRolloverService();
            // Create request message for method call (input parameters)
            request = new BenefitPlanRolloverServiceNameSpace.GetBenefitPlanRolloverSettingRequest_2014_06();
            // Set the input parameters
             request.AcctTypeCde = _AcctTypeCde.Text;
             request.EmprId = _EmprId.Text;
             request.PlanId = _PlanId.Text;
             if(_PlanYrEndDte.Text.Length > 0)
            {
            request.PlanYrEndDte = _PlanYrEndDte.Text;
            }
            if(_PlanYrStartDte.Text.Length > 0)
            {
                           request.PlanYrStartDte = _PlanYrStartDte.Text;
            }
            request.TpaId = _TpaId.Text;
                                                request.FundRolloverTypeCde = (FundRolloverMethods)_FundRolloverTypeCde.Text;
            // session ID returned from logon method
            mbiSessionHeader.MBISessionID = _sessionId.Text;
            proxy.MBISessionHeaderValue = mbiSessionHeader;
           // Call the method
            response = proxy.GetBenefitPlanRolloverSetting(request);
}
catch(SoapException se)
{
           MessageBox.Show(Formatter.FormatSoapException(se));
}
catch(Exception ex)
{
           MessageBox.Show("EXCEPTION:" + ex.Message);
}

GetBenefitPlanRolloverSettings

This method is used to retrieve rollover configuration for all plans under an employer.

History

The GetBenefitPlanRolloverSetting methods are listed below:

Request messages
  • GetBenefitPlanRolloverSettingsRequest
Response messages
  • GetBenefitPlanRolloverSettingsResponse

GetBenefitPlanRolloversSetting request/response messages

The GetBenefitPlanRolloverSettings method requires the following request and response messages (input and output data.)

  • TpaIdStringrequired
    A unique identifier used to identify your admin instance. This value was system generated with the admin instance was created.
    First Available Version:GetBenefitPlanRolloverSettingsRequest
  • EmprIdStringrequired
    Unique identifier for the employer for which you want to retrieve metrics. Note: When the employer was created, WealthCare Admin assigned the 3-character prefix; you assigned the remaining characters.
    First Available Version:GetBenefitPlanRolloverSettingsRequest
    Max Length:18

Response message:

  • TpaIdString
    A unique identifier used to identify your admin instance. This value was system generated with the admin instance was created.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • EmprIdString
    Unique identifier for the employer. Note: When the employer was created, WealthCare Admin assigned the 3-character prefix; you assigned the remaining characters.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • PlanIdString
    Unique Identifier to distinguish this plan from others within the administrator. This value is the source Plan ID.

    Note: The Source Plan is the benefit plan where fund rollover dollars are drawn
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • PlanYrStartDteString
    Date that funds are available for services. This value is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn. Format is YYYYMMDD.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • PlanYrEndDteString
    Date after which services are not eligible for payment, unless there is an extension. This value is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn. Format is YYYYMMDD.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • AcctTypeCdeString
    Three character abbreviation that indicates the type of account (FSA, DCA, TRN, HRA, etc.). This is for the source plan. The Source Plan is the benefit plan where fund rollover dollars are drawn
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • TargetPlanKeyInteger
    A system generated key used to uniquely identify the target plan. The targe plan is the benefit plan where fund rollover dollars are deposited.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • TargetAcctTypeCdeString
    Plan Account Type Code (FSA, DCA, etc.) for the benefit plan to which fund rollover dollars are deposited when fund rollover occurs.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • TargetPlanIdString
    Plan ID of target plan where funds will be deposited with fund rollover. The Target Plan is the benefit plan where fund rollover dollars are deposited.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • TargetPlanYrStartDteString
    Plan Year Start Date for Target plan where funds are moving. The Target Plan is the benefit plan where fund rollover dollars are deposited. Format is YYYYMMDD.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • TargetPlanYrEndDteString
    Plan Year END Date for Target plan where funds are moving. The Target Plan is the benefit plan where fund rollover dollars are deposited. Format is YYYYMMDD.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • FundRolloverTypeCdeInteger
    Determines whether rules being created are for primary or secondary fund rollover. If using Secondary Fund Rollover, Primary Fund Rollover rules must be specified first. Attempting to setup Secondary Fund Rollover rules without first specifying Primary Fund Rollover rules will result in an error during processing.
    Primary = 1
    Secondary = 2
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • RolloverDteDateTime
    The date upon which funds will roll from one year to the next. Must be on or after the source plan's end date. Format is mm/dd/yyyy.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • PlanRolloverSettingOptionsInteger
    Use this field to enable various options for your rollover. Refer to the Fund Rollover Guide in Online Resources for more information on these settings. To use multiple options, sum the numeric indicators (e.g., to use override target plan balance max and exclude zero or negative balance source accounts, enter 40; 8+32). See the bitwise guide for more information.

    1 = Auto-link dependent to target account (option 16 must be included when this option is included)
    2 = Manage balance max at account level
    4 = Fund rollover amount set at account level
    8 = Override Target Plan Balance Max
    16 = WCA creates target fund account (Use this option to tell WealthCare Admin to create Participant Target Accounts during fund rollover process)
    32 = Exclude zero or negative balance source accounts (option 16 must be included when this option is included)
    64 = Include target account balance
    128 = Include Terminated Accounts
    256 = Copy Deductible Flag from source plan (only valid if WCA is creating the target fund account)
    512 = Copy Subgroups from source plan (only valid if WCA is creating the target fund account)
    1024 = Copy Account Segment from source plan (only valid if WCA is creating the target fund account)
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • RolloverEligibilityDateTypeInteger
    This setting determines the effective date of the participant and dependent accounts when WCA creates the employee and dependent accounts.
    NotSet = 0,
    FundRolloverDate = 1,
    TargetPlanStartDate = 2,
    SourcePlanEndDatePlusOne = 4,
    SourcePlanAccountEligDate = 8
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • RolloverLastAutoDepositDateTypeInteger
    This date is the auto-deposit start date and applies to both employee and employer payroll contributions, whether they are amounts set at
    the employee level or for fixed employer funding.
    None = 0,
    FundRolloverDate = 1,
    TargetPlanStartDate = 2,
    SourcePlanEndDatePlusOne = 4,
    SourcePlanStartDate = 8,
    SourcePlanAccountEligDate = 16
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • RolloverAmtDecimal
    Maximum amount of Funds to be rolled over.

    Can be used in conjunction with Rollover rate (%). For example, you can set a rule of 50% up to $500 by populating both fields.

    For Individual/Family HRX plans, this is the family amount.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • RolloverRateDecimal
    Indicates % of remaining Family funds to be rolled over on rollover date.

    Can be used in conjunction with Rollover amount. For example, you can set a rule of 50% up to $500 by populating both fields.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • RolloverBalanceMaxDecimal
    Maximum amount of Funds to be rolled over.

    If an Individual/Family type HRA plan (HRX), this is the Family Funds Amount.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • IndividualRolloverAmtDecimal
    Only used for Individual/Family HRA (HRX) plans.

    Maximum amount of Individual Funds to be rolled over. Can be used in conjunction with Individual Rollover rate (%). For example, you can set a rule of 50% up to $500 by populating both fields.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • IndividualRolloverRateDecimal
    Only used for Individual/Family HRA plans.

    Indicates % of remaining individual funds to be rolled over on rollover date. Can be used in conjunction with Individual Rollover amount. For example, you can set a rule of 50% up to $500 by populating both fields.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • IndividualBalanceMaxDecimal
    This amount indicates the maximum balance that is allowed for the Individual Amount within the participant’s account after funds have been rolled from another account into this account. The Fund Rollover amount will be limited such that the Individual amount balance after funds have rolled into this account does not exceed the Fund Rollover Individual Balance Max specified. Only set for individual amount in an Individual/Family HRA account.
    First Available Version:GetBenefitPlanRolloverSettingsResponse
  • MinimumRolloverAmountofFundDecimal
    Minimum rollover amount. If an amount is specified, then the source account must have a disbursable balance greater than or equal to the minimum rollover amount for rollover to occur.

    If the source account has a disbursable balance less than the minimum rollover amount, then the account will be EXCLUDED from fund rollover ($0 transaction appears on the account, with a reason indicating the fund rollover amount available was less than the minimum).

    Only positive dollar amounts are accepted. The amount must be greater than 0.00.
    First Available Version:GetBenefitPlanRolloverSettingsResponse_2014_06

Example of GetBenefitPlanRolloverSettings SOAP request message:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:mbi="http://schemas.datacontract.org/2004/07/MBI.WebServices.Wcf.Headers" xmlns:v1="http://bensoft.metavante.com/WebServices/Contracts/BenefitPlanRollover/2011/04/V1" xmlns:ns="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Request/2011/04/">
   <soapenv:Header>
      <mbiSessionHeader>
         <!--Optional:-->
         <mbi:MBISessionID>bvr4ivlfosuo1xvcckq24t4q</mbi:MBISessionID>
      </mbiSessionHeader>
   </soapenv:Header>
   <soapenv:Body>
      <v1:GetBenefitPlanRolloverSettings>
         <!--Optional:-->
         <v1:request>
            <ns:EmprId>9HR2345</ns:EmprId>
            <ns:TpaId>T02888</ns:TpaId>
         </v1:request>
      </v1:GetBenefitPlanRolloverSettings>
   </soapenv:Body>
</soapenv:Envelope>

Example of GetBenefitPlanRolloverSettings SOAP response message

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Header>
      <ActivityId CorrelationId="4cdd95de-6a07-418b-aadf-f55be05dd587" xmlns="http://schemas.microsoft.com/2004/09/ServiceModel/Diagnostics">00000000-0000-0000-0000-000000000000</ActivityId>
      <MBIMessageIdHeader xmlns="http://bensoft.metavante.com/WebServices/SoapHeader/">
         <MessageId>urn:uuid:6373d0f2-7baf-4620-980f-7177460c5ab4</MessageId>
      </MBIMessageIdHeader>
   <s:Header>
   <s:Body>
      <GetBenefitPlanRolloverSettingsResponse xmlns="http://bensoft.metavante.com/WebServices/Contracts/BenefitPlanRollover/2011/04/V1">
         <GetBenefitPlanRolloverSettingsResult xmlns:a="http://bensoft.metavante.com/WebServices/Messages/Plan/BenefitPlanRollover/Response/2011/04/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
            <a:GetBenefitPlanRolloverSettingsResponse>
               <a:AcctTypeCde>FB2</a:AcctTypeCde>
               <a:EmprId>9HR2345</a:EmprId>
               <a:FundRolloverTypeCde>Primary</a:FundRolloverTypeCde>
               <a:IndividualBalanceMax>-1</a:IndividualBalanceMax>
               <a:IndividualRolloverAmt>-1.0000</a:IndividualRolloverAmt>
               <a:IndividualRolloverRate>-1.00</a:IndividualRolloverRate>
               <a:PlanId>FSAP1</a:PlanId>
               <a:PlanYrEndDte>20230830</a:PlanYrEndDte>
               <a:PlanYrStartDte>20230801</a:PlanYrStartDte>
               <a:RolloverAmt>-1.0000</a:RolloverAmt>
               <a:RolloverBalanceMax>-1</a:RolloverBalanceMax>
               <a:RolloverDte>8/30/2023 12:00:00 AM</a:RolloverDte>
               <a:RolloverEligibilityDateType>TargetPlanStartDate</a:RolloverEligibilityDateType>
               <a:RolloverLastAutoDepositDateType>TargetPlanStartDate</a:RolloverLastAutoDepositDateType>
               <a:RolloverRate>-1.00</a:RolloverRate>
               <a:TargetAcctTypeCde>FBA</a:TargetAcctTypeCde>
               <a:TargetPlanId>FBAT</a:TargetPlanId>
               <a:TargetPlanKey>1865</a:TargetPlanKey>
               <a:TargetPlanYrEndDte>20230930</a:TargetPlanYrEndDte>
               <a:TargetPlanYrStartDte>20230830</a:TargetPlanYrStartDte>
               <a:TpaId>T02888</a:TpaId>
            </a:GetBenefitPlanRolloverSettingsResponse>
            <a:GetBenefitPlanRolloverSettingsResponse>
               <a:AcctTypeCde>FSL</a:AcctTypeCde>
               <a:EmprId>9HR2345</a:EmprId>
               <a:FundRolloverTypeCde>Primary</a:FundRolloverTypeCde>
               <a:IndividualBalanceMax>-1</a:IndividualBalanceMax>
               <a:IndividualRolloverAmt>-1.0000</a:IndividualRolloverAmt>
               <a:IndividualRolloverRate>-1.00</a:IndividualRolloverRate>
               <a:PlanId>CAPSOURCE</a:PlanId>
               <a:PlanYrEndDte>20220707</a:PlanYrEndDte>
               <a:PlanYrStartDte>20220701</a:PlanYrStartDte>
               <a:RolloverAmt>-1.0000</a:RolloverAmt>
               <a:RolloverBalanceMax>-1</a:RolloverBalanceMax>
               <a:RolloverDte>7/8/2022 12:00:00 AM</a:RolloverDte>
               <a:RolloverEligibilityDateType>TargetPlanStartDate</a:RolloverEligibilityDateType>
               <a:RolloverLastAutoDepositDateType>TargetPlanStartDate</a:RolloverLastAutoDepositDateType>
               <a:RolloverRate>-1.00</a:RolloverRate>
               <a:TargetAcctTypeCde>FSL</a:TargetAcctTypeCde>
               <a:TargetPlanId>CAPTRAGET</a:TargetPlanId>
               <a:TargetPlanKey>324</a:TargetPlanKey>
               <a:TargetPlanYrEndDte>20220731</a:TargetPlanYrEndDte>
               <a:TargetPlanYrStartDte>20220708</a:TargetPlanYrStartDte>
               <a:TpaId>T02888</a:TpaId>
            </a:GetBenefitPlanRolloverSettingsResponse>
            <a:GetBenefitPlanRolloverSettingsResponse>
               <a:AcctTypeCde>FSL</a:AcctTypeCde>
               <a:EmprId>9HR2345</a:EmprId>
               <a:FundRolloverTypeCde>Primary</a:FundRolloverTypeCde>
               <a:IndividualBalanceMax>-1</a:IndividualBalanceMax>
               <a:IndividualRolloverAmt>-1.0000</a:IndividualRolloverAmt>
               <a:IndividualRolloverRate>-1.00</a:IndividualRolloverRate>
               <a:PlanId>CAPSOURCE</a:PlanId>
               <a:PlanYrEndDte>20220707</a:PlanYrEndDte>
               <a:PlanYrStartDte>20220701</a:PlanYrStartDte>
               <a:RolloverAmt>-1.0000</a:RolloverAmt>
               <a:RolloverBalanceMax>-1</a:RolloverBalanceMax>
               <a:RolloverDte>7/8/2022 12:00:00 AM</a:RolloverDte>
               <a:RolloverEligibilityDateType>TargetPlanStartDate</a:RolloverEligibilityDateType>
               <a:RolloverLastAutoDepositDateType>TargetPlanStartDate</a:RolloverLastAutoDepositDateType>
               <a:RolloverRate>-1.00</a:RolloverRate>
               <a:TargetAcctTypeCde>FSL</a:TargetAcctTypeCde>
               <a:TargetPlanId>CAPTRAGET</a:TargetPlanId>
               <a:TargetPlanKey>324</a:TargetPlanKey>
               <a:TargetPlanYrEndDte>20220731</a:TargetPlanYrEndDte>
               <a:TargetPlanYrStartDte>20220708</a:TargetPlanYrStartDte>
               <a:TpaId>T02888</a:TpaId>
            </a:GetBenefitPlanRolloverSettingsResponse>
            <a:GetBenefitPlanRolloverSettingsResponse>
               <a:AcctTypeCde>FSL</a:AcctTypeCde>
               <a:EmprId>9HR2345</a:EmprId>
               <a:FundRolloverTypeCde>Primary</a:FundRolloverTypeCde>
               <a:IndividualBalanceMax>-1</a:IndividualBalanceMax>
               <a:IndividualRolloverAmt>-1.0000</a:IndividualRolloverAmt>
               <a:IndividualRolloverRate>-1.00</a:IndividualRolloverRate>
               <a:PlanId>CAPSOURCE</a:PlanId>
               <a:PlanYrEndDte>20220707</a:PlanYrEndDte>
               <a:PlanYrStartDte>20220701</a:PlanYrStartDte>
               <a:RolloverAmt>-1.0000</a:RolloverAmt>
               <a:RolloverBalanceMax>-1</a:RolloverBalanceMax>
               <a:RolloverDte>7/8/2022 12:00:00 AM</a:RolloverDte>
               <a:RolloverEligibilityDateType>TargetPlanStartDate</a:RolloverEligibilityDateType>
               <a:RolloverLastAutoDepositDateType>TargetPlanStartDate</a:RolloverLastAutoDepositDateType>
               <a:RolloverRate>-1.00</a:RolloverRate>
               <a:TargetAcctTypeCde>FSL</a:TargetAcctTypeCde>
               <a:TargetPlanId>CAPTRAGET</a:TargetPlanId>
               <a:TargetPlanKey>324</a:TargetPlanKey>
               <a:TargetPlanYrEndDte>20220731</a:TargetPlanYrEndDte>
               <a:TargetPlanYrStartDte>20220708</a:TargetPlanYrStartDte>
               <a:TpaId>T02888</a:TpaId>
            </a:GetBenefitPlanRolloverSettingsResponse>
            <a:GetBenefitPlanRolloverSettingsResponse>
               <a:AcctTypeCde>FSL</a:AcctTypeCde>
               <a:EmprId>9HR2345</a:EmprId>
               <a:FundRolloverTypeCde>Primary</a:FundRolloverTypeCde>
               <a:IndividualBalanceMax>-1</a:IndividualBalanceMax>
               <a:IndividualRolloverAmt>-1.0000</a:IndividualRolloverAmt>
               <a:IndividualRolloverRate>-1.00</a:IndividualRolloverRate>
               <a:PlanId>CAPSOURCE</a:PlanId>
               <a:PlanYrEndDte>20220707</a:PlanYrEndDte>
               <a:PlanYrStartDte>20220701</a:PlanYrStartDte>
               <a:RolloverAmt>-1.0000</a:RolloverAmt>
               <a:RolloverBalanceMax>-1</a:RolloverBalanceMax>
               <a:RolloverDte>7/8/2022 12:00:00 AM</a:RolloverDte>
               <a:RolloverEligibilityDateType>TargetPlanStartDate</a:RolloverEligibilityDateType>
               <a:RolloverLastAutoDepositDateType>TargetPlanStartDate</a:RolloverLastAutoDepositDateType>
               <a:RolloverRate>-1.00</a:RolloverRate>
               <a:TargetAcctTypeCde>FSL</a:TargetAcctTypeCde>
               <a:TargetPlanId>CAPTRAGET</a:TargetPlanId>
               <a:TargetPlanKey>324</a:TargetPlanKey>
               <a:TargetPlanYrEndDte>20220731</a:TargetPlanYrEndDte>
               <a:TargetPlanYrStartDte>20220708</a:TargetPlanYrStartDte>
               <a:TpaId>T02888</a:TpaId>
            </a:GetBenefitPlanRolloverSettingsResponse>
         </GetBenefitPlanRolloverSettingsResult>
      </GetBenefitPlanRolloverSettingsResponse>
   </s:Body>
</s:Envelope>

Example client code

The following is an example of the client code (using a .NET proxy class for accessing the service) used when calling the GetBenefitPlanRolloverSettings web method.

try
{
     // Create proxy object for the service
     proxy = new WebServiceTestHarness.BenefitPlanRolloverServiceNameSpace.BenefitPlanRolloverService();
     // Create request message for method call (input parameters)
     request = new WebServiceTestHarness.BenefitPlanRolloverServiceNameSpace.GetBenefitPlanRolloverSettingsRequest_2014_06();
     // Create the session SOAP header in order to pass the Service
     // the client’s current session id.
     mbiSessionHeader = new WebServiceTestHarness.BenefitPlanRolloverServiceNameSpace.MBISessionHeader();
     mbiSessionHeader.MBISessionID = _sessionId;
     proxy.MBISessionHeaderValue = mbiSessionHeader;
     request.EmprId = _EmprId.Text;
     request.TpaId = _TpaId.Text;
     response = proxy.GetBenefitPlanRolloverSettings(request);
}
catch(SoapException se)
{
     MessageBox.Show(Formatter.FormatSoapException(se));
}
catch(Exception ex)
{
     MessageBox.Show("EXCEPTION:" + ex.Message);
}