コード例 #1
0
        public RemovePaymentProfileResult RemovePaymentProfile(RemovePaymentProfileParameter parameter)
        {
            UserProfileDto userProfileDto = SiteContext.Current.UserProfileDto;
            UserProfile    userProfile    = this.UnitOfWork.GetRepository <UserProfile>().Get(SiteContext.Current.UserProfileDto.Id);

            if (userProfile == null)
            {
                return(this.CreateErrorServiceResult <RemovePaymentProfileResult>(SubCode.Forbidden, MessageProvider.Current.Forbidden));
            }
            GetBillToResult billToResult = this.GetBillTo(parameter.BillToId);

            if (billToResult.ResultCode != ResultCode.Success)
            {
                return(this.CreateErrorServiceResult <RemovePaymentProfileResult>(billToResult.SubCode, billToResult.Message));
            }
            Customer billTo = billToResult.BillTo;
            RemoveStoredPaymentProfileResult removeStoredPaymentProfileResult = this.GetPaymentGateway().RemoveStoredPaymentProfile(new RemoveStoredPaymentProfileParameter()
            {
                CustomerProfileId = userProfile.GetProperty("StoredCustomerProfileId", string.Empty),
                PaymentProfileId  = parameter.PaymentProfileId,
                CustomerNumber    = billTo.CustomerNumber
            });

            if (!removeStoredPaymentProfileResult.Success)
            {
                return(this.CreateErrorServiceResult <RemovePaymentProfileResult>(SubCode.StorePaymentProfileFailed, string.Join(Environment.NewLine, removeStoredPaymentProfileResult.ResponseMessages)));
            }
            UserPaymentProfile userPaymentProfile = userProfile.UserPaymentProfiles.FirstOrDefault <UserPaymentProfile>((UserPaymentProfile u) => u.CardIdentifier.Equals(parameter.PaymentProfileId));

            if (userPaymentProfile != null)
            {
                this.RemoveUserPaymentProfile(userProfile, userPaymentProfile);
            }
            return(new RemovePaymentProfileResult());
        }
コード例 #2
0
        //BUSA-462 : Ability to save Credit Cards (in CenPos) and offer it to users Starts
        public RemoveStoredPaymentProfileResult RemoveStoredPaymentProfile(string tokenID)
        {
            DeleteRecurringSaleInformationRequest request = new DeleteRecurringSaleInformationRequest
            {
                UserId               = this.UserId,
                Password             = this.Password,
                MerchantId           = this.MerchantId,
                RecurringSaleTokenId = tokenID
            };
            DeleteRecurringSaleInformationResponse deleteRecurringSaleInformationResponse = new AdministrationClient().DeleteRecurringSaleInformation(request);
            RemoveStoredPaymentProfileResult       removeStoredPaymentProfileResult       = new RemoveStoredPaymentProfileResult
            {
                Success = (deleteRecurringSaleInformationResponse.Result == 0)
            };

            if (!removeStoredPaymentProfileResult.Success)
            {
                removeStoredPaymentProfileResult.ResponseMessages.Add(string.Format("Transaction Failed: {0}", deleteRecurringSaleInformationResponse.Message));
            }
            return(removeStoredPaymentProfileResult);
        }
        public RemoveStoredPaymentProfileResult RemoveStoredPaymentProfile(RemoveStoredPaymentProfileParameter parameter)
        {
            DeleteRecurringSaleInformationRequest deleteRecurringSaleInformationRequest = new DeleteRecurringSaleInformationRequest()
            {
                UserId               = this.UserId,
                Password             = this.Password,
                MerchantId           = this.MerchantId,
                RecurringSaleTokenId = parameter.PaymentProfileId
            };
            DeleteRecurringSaleInformationResponse reply  = (new AdministrationClient()).DeleteRecurringSaleInformation(deleteRecurringSaleInformationRequest);
            RemoveStoredPaymentProfileResult       result = new RemoveStoredPaymentProfileResult()
            {
                Success = reply.Result == 0
            };

            if (!result.Success)
            {
                result.ResponseMessages.Add(string.Format("Transaction Failed: {0}", reply.Message));
            }
            return(result);
        }