The request object for GenerateInvoiceNumber.
        /// <summary>
        /// 
        /// </summary>
        ///<param name="generateInvoiceNumberRequest"></param>
        ///<param name="credential">An explicit ICredential object that you want to authenticate this call against</param> 
        public GenerateInvoiceNumberResponse GenerateInvoiceNumber(GenerateInvoiceNumberRequest generateInvoiceNumberRequest, ICredential credential)
        {
            IAPICallPreHandler apiCallPreHandler = new PlatformAPICallPreHandler(this.config, generateInvoiceNumberRequest.ToNVPString(string.Empty), ServiceName, "GenerateInvoiceNumber", credential);
               	 	((PlatformAPICallPreHandler) apiCallPreHandler).SDKName = SDKName;
            ((PlatformAPICallPreHandler) apiCallPreHandler).SDKVersion = SDKVersion;
            ((PlatformAPICallPreHandler) apiCallPreHandler).PortName = "Invoice";

            NVPUtil util = new NVPUtil();
            return GenerateInvoiceNumberResponse.CreateInstance(util.ParseNVPString(Call(apiCallPreHandler)), string.Empty, -1);
        }
 /// <summary> 
 /// 
 /// </summary>
 ///<param name="generateInvoiceNumberRequest"></param>
 public GenerateInvoiceNumberResponse GenerateInvoiceNumber(GenerateInvoiceNumberRequest generateInvoiceNumberRequest)
 {
     return GenerateInvoiceNumber(generateInvoiceNumberRequest,(string) null);
 }