示例#1
0
        public void GetTransactionDetails(Orders order)
        {
            GetTransactionDetailsRequestType detailRequest = new GetTransactionDetailsRequestType();

            detailRequest.TransactionID = order.TransactionID;
            detailRequest.Version       = "2.0";
            GetTransactionDetailsReq request = new GetTransactionDetailsReq();

            request.GetTransactionDetailsRequest = detailRequest;

            GetTransactionDetailsResponseType response = service.GetTransactionDetails(request);

            string sErrors = this.CheckForErrors(response);

            if (sErrors == string.Empty)
            {
                PaymentInfoType payment = response.PaymentTransactionDetails.PaymentInfo;

                order.OrderTotal    = GetAmountValue(payment.GrossAmount);
                order.Tax           = GetAmountValue(payment.TaxAmount);
                IsSubmissionSuccess = true;
            }
            else
            {
                IsSubmissionSuccess = false;
            }
        }
示例#2
0
        protected void Search_Submit(object sender, EventArgs e)
        {
            // Create request object
            GetTransactionDetailsRequestType request = new GetTransactionDetailsRequestType();

            // (Required) Unique identifier of a transaction.
            // Note: The details for some kinds of transactions cannot be retrieved with GetTransactionDetails. You cannot obtain details of bank transfer withdrawals, for example.
            request.TransactionID = transactionId.Value;

            // Invoke the API
            GetTransactionDetailsReq wrapper = new GetTransactionDetailsReq();

            wrapper.GetTransactionDetailsRequest = request;

            // Configuration map containing signature credentials and other required configuration.
            // For a full list of configuration parameters refer in wiki page
            // [https://github.com/paypal/sdk-core-dotnet/wiki/SDK-Configuration-Parameters]
            Dictionary <string, string> configurationMap = Configuration.GetAcctAndConfig();

            // Create the PayPalAPIInterfaceServiceService service object to make the API call
            PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService(configurationMap);

            // # API call
            // Invoke the GetTransactionDetails method in service wrapper object
            GetTransactionDetailsResponseType transactionDetails = service.GetTransactionDetails(wrapper);

            // Check for API return status
            processResponse(service, transactionDetails);
        }
示例#3
0
        public GetTransactionDetailsResponseType GetTransactionDetails(string trxID)
        {
            // Create the request object
            GetTransactionDetailsRequestType concreteRequest = new GetTransactionDetailsRequestType();

            concreteRequest.TransactionID = trxID;
            return (GetTransactionDetailsResponseType)caller.Call("GetTransactionDetails", concreteRequest);
        }
 public static GetTransactionDetailsResponseType GetTransactionDetails(string trxID, IAPIProfile api)
 {
     caller.APIProfile = api;
     GetTransactionDetailsRequestType concreteRequest = new GetTransactionDetailsRequestType();
     concreteRequest.DetailLevel = new com.paypal.soap.api.DetailLevelCodeType[] { com.paypal.soap.api.DetailLevelCodeType.ReturnAll };
     concreteRequest.TransactionID = trxID;
     return (GetTransactionDetailsResponseType)caller.Call("GetTransactionDetails", concreteRequest);
 }
示例#5
0
        public GetTransactionDetailsResponseType GetTransactionDetails(string trxID)
        {
            // Create the request object
            GetTransactionDetailsRequestType concreteRequest = new GetTransactionDetailsRequestType();

            concreteRequest.TransactionID = trxID;
            return((GetTransactionDetailsResponseType)caller.Call("GetTransactionDetails", concreteRequest));
        }
        public static GetTransactionDetailsResponseType GetTransactionDetails(string trxID, IAPIProfile api)
        {
            caller.APIProfile = api;
            GetTransactionDetailsRequestType concreteRequest = new GetTransactionDetailsRequestType();

            concreteRequest.DetailLevel   = new com.paypal.soap.api.DetailLevelCodeType[] { com.paypal.soap.api.DetailLevelCodeType.ReturnAll };
            concreteRequest.TransactionID = trxID;
            return((GetTransactionDetailsResponseType)caller.Call("GetTransactionDetails", concreteRequest));
        }
 /// <summary>
 /// Get a detail information about a transaction.
 /// </summary>
 /// <param name="transactionID">ID of transaction of interest.</param>
 /// <returns>a transaction details code</returns>
 public string getTransactionDetails(string transactionID)
 {
     GetTransactionDetailsRequestType request = new GetTransactionDetailsRequestType();
     request.TransactionID = transactionID;
     request.Version = settings.Version;
     GetTransactionDetailsResponseType response = new GetTransactionDetailsResponseType();
     response = (GetTransactionDetailsResponseType)caller.Call("GetTransactionDetails", request);
     return response.Ack.ToString();
 }
示例#8
0
        public PaymentInfoType GetTransactionStatus(string transactionId, out string error)
        {
            // Create request object
            GetTransactionDetailsRequestType request = new GetTransactionDetailsRequestType();

            // (Required) Unique identifier of a transaction.
            // Note: The details for some kinds of transactions cannot be retrieved with GetTransactionDetails. You cannot obtain details of bank transfer withdrawals, for example.
            request.TransactionID = transactionId;

            // Invoke the API
            GetTransactionDetailsReq wrapper = new GetTransactionDetailsReq();

            wrapper.GetTransactionDetailsRequest = request;

            // Configuration map containing signature credentials and other required configuration.
            // For a full list of configuration parameters refer in wiki page
            // [https://github.com/paypal/sdk-core-dotnet/wiki/SDK-Configuration-Parameters]

            // Create the PayPalAPIInterfaceServiceService service object to make the API call
            PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService(_payPalConfiguration);

            int  numReintento      = 0;
            bool esLlamadaCorrecta = false;
            GetTransactionDetailsResponseType transactionDetails = null;

            do
            {
                numReintento += 1;

                // # API call
                // Invoke the GetTransactionDetails method in service wrapper object
                transactionDetails = service.GetTransactionDetails(wrapper);

                // Check for API return status

                if (!transactionDetails.Ack.Equals(AckCodeType.FAILURE) ||
                    !(transactionDetails.Errors != null && transactionDetails.Errors.Count > 0))
                {
                    esLlamadaCorrecta = true;
                }
            } while (!esLlamadaCorrecta && (numReintento <= 5));


            if (esLlamadaCorrecta)
            {
                error = string.Empty;
                return(transactionDetails.PaymentTransactionDetails.PaymentInfo);
            }
            //Error
            error = transactionDetails.Errors != null || transactionDetails.Errors.Count > 0
                ? transactionDetails.Errors.FirstOrDefault().LongMessage
                : "Imposible obtener el status de la transacción de PayPal.";

            return(null);
        }
示例#9
0
        protected void Submit_Click(object sender, EventArgs e)
        {
            GetTransactionDetailsReq         request     = new GetTransactionDetailsReq();
            GetTransactionDetailsRequestType requestType = new GetTransactionDetailsRequestType();

            requestType.TransactionID            = transactionId.Value;
            request.GetTransactionDetailsRequest = requestType;

            PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService();

            service.GetTransactionDetails(request);
        }
示例#10
0
        protected void Search_Submit(object sender, EventArgs e)
        {
            // Create request object
            GetTransactionDetailsRequestType request = new GetTransactionDetailsRequestType();
            request.TransactionID = transactionId.Value;            

            // Invoke the API
            GetTransactionDetailsReq wrapper = new GetTransactionDetailsReq();
            wrapper.GetTransactionDetailsRequest = request;            
            PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService();
            GetTransactionDetailsResponseType transactionDetails = service.GetTransactionDetails(wrapper);

            // Check for API return status
            processResponse(service, transactionDetails);
        }
示例#11
0
    // # GetTransactionDetails API Operation
    // The GetTransactionDetails API operation obtains information about a specific transaction.
    public GetTransactionDetailsResponseType GetTransactionDetailsAPIOperation()
    {
        // Create the GetTransactionDetailsResponseType object
        GetTransactionDetailsResponseType responseGetTransactionDetailsResponseType = new GetTransactionDetailsResponseType();

        try
        {
            // Create the GetTransactionDetailsReq object
            GetTransactionDetailsReq         getTransactionDetails        = new GetTransactionDetailsReq();
            GetTransactionDetailsRequestType getTransactionDetailsRequest = new GetTransactionDetailsRequestType();

            // Unique identifier of a transaction.
            // `Note:
            // The details for some kinds of transactions cannot be retrieved with
            // GetTransactionDetails. You cannot obtain details of bank transfer
            // withdrawals, for example.`
            getTransactionDetailsRequest.TransactionID         = "5AT5731435011481X";
            getTransactionDetails.GetTransactionDetailsRequest = getTransactionDetailsRequest;

            // Create the service wrapper object to make the API call
            PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService();

            // # API call
            // Invoke the GetTransactionDetails method in service wrapper object
            responseGetTransactionDetailsResponseType = service.GetTransactionDetails(getTransactionDetails);

            if (responseGetTransactionDetailsResponseType != null)
            {
                // Response envelope acknowledgement
                string acknowledgement = "GetTransactionDetails API Operation - ";
                acknowledgement += responseGetTransactionDetailsResponseType.Ack.ToString();
                logger.Info(acknowledgement + "\n");
                Console.WriteLine(acknowledgement + "\n");

                // # Success values
                if (responseGetTransactionDetailsResponseType.Ack.ToString().Trim().ToUpper().Equals("SUCCESS"))
                {
                    // Unique PayPal Customer Account identification number
                    logger.Info("Payer ID : " + responseGetTransactionDetailsResponseType.PaymentTransactionDetails.PayerInfo.PayerID + "\n");
                    Console.WriteLine("Payer ID : " + responseGetTransactionDetailsResponseType.PaymentTransactionDetails.PayerInfo.PayerID + "\n");
                }
                // # Error Values
                else
                {
                    List <ErrorType> errorMessages = responseGetTransactionDetailsResponseType.Errors;
                    foreach (ErrorType error in errorMessages)
                    {
                        logger.Debug("API Error Message : " + error.LongMessage);
                        Console.WriteLine("API Error Message : " + error.LongMessage + "\n");
                    }
                }
            }
        }
        // # Exception log
        catch (System.Exception ex)
        {
            // Log the exception message
            logger.Debug("Error Message : " + ex.Message);
            Console.WriteLine("Error Message : " + ex.Message);
        }
        return(responseGetTransactionDetailsResponseType);
    }
示例#12
0
        public string GetTransactionDetail(string transactionID, string delimiter)
        {
            string sReturn = "";
            GetTransactionDetailsRequestType detailRequest = new GetTransactionDetailsRequestType();

            detailRequest.TransactionID = transactionID;
            detailRequest.Version       = PayPalServiceUtility.PayPalAPIVersionNumber;
            GetTransactionDetailsReq request = new GetTransactionDetailsReq();

            request.GetTransactionDetailsRequest = detailRequest;

            GetTransactionDetailsResponseType response = service.GetTransactionDetails(request);

            sReturn = response.Ack.ToString() + "\n";

            string sErrors = this.CheckErrors(response);

            if (sErrors == string.Empty)
            {
                //build out the response
                StringBuilder sb = new StringBuilder();
                sb.Append("************** Payment Information ******************" + delimiter);

                //payment info
                PaymentInfoType payment = response.PaymentTransactionDetails.PaymentInfo;
                sb.Append("ReceiptID: " + payment.ReceiptID + delimiter);
                sb.Append("TransactionID: " + payment.TransactionID + delimiter);
                sb.Append("PaymentDate: " + payment.PaymentDate + delimiter);
                sb.Append("GrossAmount: " + GetAmountValue(payment.GrossAmount) + delimiter);
                sb.Append("SettleAmount: " + GetAmountValue(payment.SettleAmount) + delimiter);
                sb.Append("FeeAmount: " + GetAmountValue(payment.FeeAmount) + delimiter);
                sb.Append("TaxAmount: " + GetAmountValue(payment.TaxAmount) + delimiter);
                sb.Append("PaymentStatus: " + payment.PaymentStatus + delimiter);
                sb.Append("PaymentType: " + payment.PaymentType + delimiter);
                sb.Append("TransactionType: " + payment.TransactionType + delimiter);
                sb.Append(delimiter);
                //sReturn+=response.PaymentTransactionDetails.PaymentInfo.ToString();
                sb.Append("************** Buyer Information ******************" + delimiter);

                //receiver info
                ReceiverInfoType receiver = response.PaymentTransactionDetails.ReceiverInfo;
                sb.Append("Business: " + receiver.Business + delimiter);
                sb.Append("Receiver: " + receiver.Receiver + delimiter);
                sb.Append("ReceiverID: " + receiver.ReceiverID + delimiter);

                /*
                 * --- Uncomment this to report Auction and Subscription info
                 * sb.Append("************** Auction Information ******************"+delimiter);
                 *
                 * AuctionInfoType auction=new AuctionInfoType();
                 * sb.Append("BuyerID: "+auction.BuyerID+delimiter);
                 * sb.Append("ClosingDate: "+auction.ClosingDate+delimiter);
                 * sb.Append("ClosingDateSpecified: "+auction.ClosingDateSpecified+delimiter);
                 * sb.Append("multiItem: "+auction.multiItem+delimiter);
                 *
                 * sb.Append("************** Subscription Information ******************"+delimiter);
                 *
                 * SubscriptionInfoType sub=new SubscriptionInfoType();
                 *
                 * sb.Append("EffectiveDate: "+sub.EffectiveDate+delimiter);
                 * sb.Append("EffectiveDateSpecified: "+sub.EffectiveDateSpecified+delimiter);
                 * sb.Append("Password: "******"reattempt: "+sub.reattempt+delimiter);
                 * sb.Append("Recurrences: "+sub.Recurrences+delimiter);
                 * sb.Append("recurring: "+sub.recurring+delimiter);
                 * sb.Append("RetryTime: "+sub.RetryTime+delimiter);
                 * sb.Append("RetryTimeSpecified: "+sub.RetryTimeSpecified+delimiter);
                 * sb.Append("SubscriptionDate: "+sub.SubscriptionDate+delimiter);
                 * sb.Append("SubscriptionDateSpecified: "+sub.SubscriptionDateSpecified+delimiter);
                 * sb.Append("SubscriptionID: "+sub.SubscriptionID+delimiter);
                 * sb.Append("Terms: "+sub.Terms+delimiter);
                 * sb.Append("Username: "+sub.Username+delimiter);
                 */
                sReturn = sb.ToString();
            }
            else
            {
                sReturn = sErrors;
            }
            return(sReturn);
        }