public System.Threading.Tasks.Task <ZarinPal.PaymentRequestWithExtraResponse> PaymentRequestWithExtraAsync(string MerchantID, int Amount, string Description, string AdditionalData, string Email, string Mobile, string CallbackURL)
 {
     ZarinPal.PaymentRequestWithExtraRequest inValue = new ZarinPal.PaymentRequestWithExtraRequest();
     inValue.Body                = new ZarinPal.PaymentRequestWithExtraRequestBody();
     inValue.Body.MerchantID     = MerchantID;
     inValue.Body.Amount         = Amount;
     inValue.Body.Description    = Description;
     inValue.Body.AdditionalData = AdditionalData;
     inValue.Body.Email          = Email;
     inValue.Body.Mobile         = Mobile;
     inValue.Body.CallbackURL    = CallbackURL;
     return(((ZarinPal.PaymentGatewayImplementationServicePortType)(this)).PaymentRequestWithExtraAsync(inValue));
 }
 public System.Threading.Tasks.Task <ZarinPal.PaymentRequestWithExtraResponse> PaymentRequestWithExtraAsync(ZarinPal.PaymentRequestWithExtraRequest request)
 {
     return(base.Channel.PaymentRequestWithExtraAsync(request));
 }
 System.Threading.Tasks.Task <ZarinPal.PaymentRequestWithExtraResponse> ZarinPal.PaymentGatewayImplementationServicePortType.PaymentRequestWithExtraAsync(ZarinPal.PaymentRequestWithExtraRequest request)
 {
     return(base.Channel.PaymentRequestWithExtraAsync(request));
 }