Пример #1
0
        public I3DSecureResponse Payment(string merchantReference, decimal amount, CardDetails card)
        {
            if (string.IsNullOrWhiteSpace(merchantReference))
            {
                throw new ArgumentNullException("merchantReference");
            }

            var requestDocument = _paymentPaymentRequestBuilder.Build(merchantReference, amount, card);
            var httpResponse    = _httpClient.Post(_configuration.Host, requestDocument.ToString(SaveOptions.DisableFormatting));
            var response        = _responseParser.Parse(httpResponse);

            if (response.CanAuthorize())
            {
                response = Authorise(response.TransactionReference, null);
            }
            return(response);
        }
        public I3DSecureResponse Payment(string merchantReference, decimal amount, CardDetails card, BillingAddress billingAddress = null, Cv2AvsPolicy policy = Cv2AvsPolicy.UNSPECIFIED, string currencyCode = null, MCC6012 mcc6012 = null)
        {
            if (string.IsNullOrWhiteSpace(merchantReference))
            {
                throw new ArgumentNullException("merchantReference");
            }

            var requestDocument = _paymentPaymentRequestBuilder.Build(merchantReference, amount, currencyCode, card, policy, billingAddress, mcc6012);
            var requestData     = requestDocument.ToString(SaveOptions.None);
            var httpResponse    = _httpClient.Post(_configuration.Host, requestData);
            var response        = _responseParser.Parse(httpResponse);

            if (response.CanAuthorize())
            {
                response = Authorise(response.TransactionReference, null);
            }
            return(response);
        }