Inheritance: AbstractRequestType
        protected void Submit_Click(object sender, EventArgs e)
        {
            // Create request object
            GetBalanceRequestType request = new GetBalanceRequestType();
            // (Optional) Indicates whether to return all currencies. It is one of the following values:
            // * 0 – Return only the balance for the primary currency holding.
            // * 1 – Return the balance for each currency holding.
            // Note: This field is available since version 51. Prior versions return only the balance for the primary currency holding.
            request.ReturnAllCurrencies = returnAllCurrencies.SelectedValue;

            // Invoke the API
            GetBalanceReq wrapper = new GetBalanceReq();
            wrapper.GetBalanceRequest = request;

            // Configuration map containing signature credentials and other required configuration.
            // For a full list of configuration parameters refer in wiki page
            // [https://github.com/paypal/sdk-core-dotnet/wiki/SDK-Configuration-Parameters]
            Dictionary<string, string> configurationMap = Configuration.GetAcctAndConfig();

            // Create the PayPalAPIInterfaceServiceService service object to make the API call
            PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService(configurationMap);

            // # API call
            // Invoke the GetBalance method in service wrapper object
            GetBalanceResponseType getBalanceResponse = service.GetBalance(wrapper);

            // Check for API return status
            processResponse(service, getBalanceResponse);
        }
        protected void Submit_Click(object sender, EventArgs e)
        {
            // Create request object
            GetBalanceRequestType request = new GetBalanceRequestType();
            request.ReturnAllCurrencies = returnAllCurrencies.SelectedValue;

            // Invoke the API
            GetBalanceReq wrapper = new GetBalanceReq();
            wrapper.GetBalanceRequest = request;
            PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService();
            GetBalanceResponseType getBalanceResponse = service.GetBalance(wrapper);

            // Check for API return status
            processResponse(service, getBalanceResponse);
        }
     // # GetBalance API Operation
     // The GetBalance API Operation obtains the available balance for a PayPal account
    public GetBalanceResponseType GetBalanceAPIOperation()
     {
         // Create the GetBalanceResponseType object
         GetBalanceResponseType responseGetBalanceResponseType = new GetBalanceResponseType();

         try
         {
             // Create the request object
             GetBalanceRequestType request = new GetBalanceRequestType();

             // Set "Yes" or "NO" to ReturnAllCurrencies
             request.ReturnAllCurrencies = "YES";

             // Create the GetBalanceReq wrapper object 
             GetBalanceReq wrapper = new GetBalanceReq();

             // Pass the request object to the wrapper
             wrapper.GetBalanceRequest = request;

             //Create the PayPalAPIInterfaceServiceService object
             PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService();

             // # API call
             // Invoke the GetBalance method in service object by passing the wrapper argument
             responseGetBalanceResponseType = service.GetBalance(wrapper);

             if (responseGetBalanceResponseType != null)
             {
                 // Response envelope acknowledgement
                 string acknowledgement = "GetBalance API Operation - ";
                 acknowledgement += responseGetBalanceResponseType.Ack.ToString();
                 logger.Info(acknowledgement + "\n");
                 Console.WriteLine(acknowledgement + "\n");

                 // # Success values
                 if (responseGetBalanceResponseType.Ack.ToString().Trim().ToUpper().Equals("SUCCESS"))
                 {
                     object obj = responseGetBalanceResponseType;

                     // Balance Amount 
                     logger.Info("Balance : " + responseGetBalanceResponseType.Balance.currencyID + " " + responseGetBalanceResponseType.Balance.value + "\n");
                     Console.WriteLine("Balance : " + responseGetBalanceResponseType.Balance.currencyID + " " + responseGetBalanceResponseType.Balance.value + "\n");
                 }
                 // # Error Values
                 else
                 {
                     Console.WriteLine(acknowledgement);
                     List<ErrorType> errorMessages = responseGetBalanceResponseType.Errors;
                     foreach (ErrorType error in errorMessages)
                     {
                         logger.Debug(error.LongMessage);
                         Console.WriteLine(error.LongMessage + "\n");
                     }
                 }
             }
         }
         // # Exception log    
         catch (System.Exception ex)
         {
             // Log the exception message       
             logger.Debug("Error Message : " + ex.Message);
             Console.WriteLine("Error Message : " + ex.Message);
         }
         return responseGetBalanceResponseType;
     }