예제 #1
0
        public RectokenResponse Post(RectokenRequest req)
        {
            RectokenResponse response;

            req.merchant_id = FondyConfig.MerchantId;
            req.version     = FondyConfig.Protocol;
            req.signature   = Signature.GetRequestSignature(RequiredParams.GetHashProperties(req));
            try
            {
                response = Client.Invoke <RectokenRequest, RectokenResponse>(req, req.ActionUrl);
            }
            catch (ClientException c)
            {
                response = new RectokenResponse {
                    Error = c
                };
            }

            if (response.data != null && FondyConfig.Protocol == "2.0")
            {
                return(JsonFormatter.ConvertFromJson <RectokenResponse>(response.data, true, "order"));
            }

            return(response);
        }
예제 #2
0
        public SubscriptionResponse Post(SubscriptionRequest request)
        {
            SubscriptionResponse response;
            string defaultProtocol    = FondyConfig.Protocol;
            string defaultContentType = FondyConfig.ContentType;

            FondyConfig.ContentType = "json";
            FondyConfig.Protocol    = "2.0";

            request.merchant_id  = FondyConfig.MerchantId;
            request.version      = FondyConfig.Protocol;
            request.subscription = "Y";
            request.signature    = Signature.GetRequestSignature(RequiredParams.GetHashProperties(request));

            try
            {
                response = Client.Invoke <SubscriptionRequest, SubscriptionResponse>(request, request.ActionUrl);
            }
            catch (ClientException c)
            {
                response = new SubscriptionResponse {
                    Error = c
                };
            }

            if (response.data != null && FondyConfig.Protocol == "2.0")
            {
                FondyConfig.Protocol    = defaultProtocol;
                FondyConfig.ContentType = defaultContentType;
                return(JsonFormatter.ConvertFromJson <SubscriptionResponse>(response.data, true, "order"));
            }

            return(response);
        }
예제 #3
0
        /// <summary>
        /// Submit if card 3ds
        /// </summary>
        /// <param name="req"></param>
        /// <returns></returns>
        public PcidssResponse StepTwo(StepTwoRequest req)
        {
            PcidssResponse response;

            req.merchant_id = Config.MerchantId;
            req.version     = Config.Protocol;
            req.signature   = Signature.GetRequestSignature(RequiredParams.GetHashProperties(req));
            try
            {
                response = Client.Invoke <StepTwoRequest, PcidssResponse>(req, req.ActionUrl);
            }
            catch (ClientException c)
            {
                response = new PcidssResponse {
                    Error = c
                };
            }

            if (response.data != null && Config.Protocol == "2.0")
            {
                return(JsonFormatter.ConvertFromJson <PcidssResponse>(response.data, true, "order"));
            }

            return(response);
        }
예제 #4
0
        public VerificationResponse Post(VerificationRequest req)
        {
            VerificationResponse response;

            req.merchant_id  = Config.MerchantId;
            req.verification = "Y";
            req.version      = Config.Protocol;
            if (req.verification_type == null)
            {
                req.verification_type = "amount";
            }

            req.signature = Signature.GetRequestSignature(RequiredParams.GetHashProperties(req));
            try
            {
                response = Client.Invoke <VerificationRequest, VerificationResponse>(req, req.ActionUrl);
            }
            catch (ClientException c)
            {
                response = new VerificationResponse {
                    Error = c
                };
            }

            if (response.data != null && Config.Protocol == "2.0")
            {
                return(JsonFormatter.ConvertFromJson <VerificationResponse>(response.data, true, "order"));
            }

            return(response);
        }
예제 #5
0
파일: Atol.cs 프로젝트: caunt/csharp-sdk
        public AtolResponse Post(AtolRequest req)
        {
            AtolResponse response;

            req.merchant_id = Config.MerchantId;
            req.version     = Config.Protocol;
            req.signature   = Signature.GetRequestSignature(RequiredParams.GetHashProperties(req));
            try
            {
                response = Client.Invoke <AtolRequest, AtolResponse>(req, req.ActionUrl);
            }
            catch (ClientException c)
            {
                response = new AtolResponse {
                    Error = c
                };
            }

            return(response);
        }
예제 #6
0
        public TransactionListResponse Post(TransactionListRequest req)
        {
            TransactionListResponse response;

            req.merchant_id = FondyConfig.MerchantId;
            req.signature   = Signature.GetRequestSignature(RequiredParams.GetHashProperties(req));
            // In this api only json allowed
            FondyConfig.ContentType = "json";
            try
            {
                response = Client.Invoke <TransactionListRequest, TransactionListResponse>(req, req.ActionUrl, false);
            }
            catch (ClientException c)
            {
                response = new TransactionListResponse {
                    Error = c
                };
            }

            return(response);
        }