/// <summary> /// Authorize /// </summary> /// <param name="auth">Authorization</param> /// <returns>Authorization</returns> public Authorization authorize(Authorization auth) { auth.setRequiredFields(new List <string> { CardPaymentsConstants.merchantRefNum, CardPaymentsConstants.amount, CardPaymentsConstants.card }); auth.setOptionalFields(new List <string> { CardPaymentsConstants.settleWithAuth, CardPaymentsConstants.customerIp, CardPaymentsConstants.dupCheck, CardPaymentsConstants.description, CardPaymentsConstants.authentication, CardPaymentsConstants.billingDetails, CardPaymentsConstants.shippingDetails, CardPaymentsConstants.recurring, CardPaymentsConstants.merchantDescriptor, CardPaymentsConstants.accordD }); Request request = new Request( method: RequestType.POST, uri: this.prepareURI("/auths"), body: auth ); dynamic response = this.client.processRequest(request); return(new Authorization(response)); }