/// <summary> /// Creates the single transaction item. /// </summary> /// <param name="response">The response.</param> /// <returns></returns> private PayPal3dPartyTransactionItem CreateSingleTransactionItem(PaymentTransactionSearchResultType response) { return(new PayPal3dPartyTransactionItem { Created = DateTime.Parse(response.Timestamp), TimeZone = response.Timezone, Type = response.Type, Status = response.Status, PayPalTransactionId = response.TransactionID, FeeAmount = ConvertToMoney(response.FeeAmount), GrossAmount = ConvertToMoney(response.GrossAmount), NetAmount = ConvertToMoney(response.NetAmount) }); }
private void processResponse(PayPalAPIInterfaceServiceService service, TransactionSearchResponseType response) { HttpContext CurrContext = HttpContext.Current; CurrContext.Items.Add("Response_apiName", "TransactionSearch"); CurrContext.Items.Add("Response_redirectURL", null); CurrContext.Items.Add("Response_requestPayload", service.getLastRequest()); CurrContext.Items.Add("Response_responsePayload", service.getLastResponse()); Dictionary <string, string> keyParameters = new Dictionary <string, string>(); keyParameters.Add("Correlation Id", response.CorrelationID); keyParameters.Add("API Result", response.Ack.ToString()); if (response.Errors != null && response.Errors.Count > 0) { CurrContext.Items.Add("Response_error", response.Errors); } else { CurrContext.Items.Add("Response_error", null); } if (!response.Ack.Equals(AckCodeType.FAILURE)) { keyParameters.Add("Total matching transactions", response.PaymentTransactions.Count.ToString()); for (int i = 0; i < response.PaymentTransactions.Count; i++) { PaymentTransactionSearchResultType result = response.PaymentTransactions[i]; String label = "Result " + (i + 1); keyParameters.Add(label + " Payer", result.Payer); keyParameters.Add(label + " Transaction Id", result.TransactionID); keyParameters.Add(label + " Payment status", result.Status); keyParameters.Add(label + " Payment timestamp", result.Timestamp); keyParameters.Add(label + " Transaction type", result.Type); if (result.NetAmount != null) { keyParameters.Add(label + " Net amount", result.NetAmount.value + result.NetAmount.currencyID.ToString()); } if (result.GrossAmount != null) { keyParameters.Add(label + " Gross amount", result.GrossAmount.value + result.GrossAmount.currencyID.ToString()); } } } CurrContext.Items.Add("Response_keyResponseObject", keyParameters); Server.Transfer("../APIResponse.aspx"); }
public MemBogfoeringsKlader konter_paypal_betalinger_fra_rsmembership(puls3060_dkEntities p_dbPuls3060_dk, DateTime Regnskabsaar_Startdato, DateTime Regnskabsaar_Slutdato) { clsPayPal objPayPal = new clsPayPal(); MemBogfoeringsKlader klader = new MemBogfoeringsKlader(); int BS1_SidsteNr = 0; var qry_rsmembership = from s in p_dbPuls3060_dk.ecpwt_rsmembership_membership_subscribers where s.membership_id == 6 join tl in p_dbPuls3060_dk.ecpwt_rsmembership_transactions on s.last_transaction_id equals tl.id where tl.gateway == "PayPal" join p in p_dbPuls3060_dk.tblpaypalpayments on tl.hash equals p.paypal_transactions_id into p1 from p in p1.DefaultIfEmpty() where p.bogfoert == null || p.bogfoert == false join u in p_dbPuls3060_dk.ecpwt_users on s.user_id equals u.id select new { paypal_transaction_id = tl.hash, Navn = u.name, s.membership_id, s.membership_start, s.membership_end, }; var arr_rsmembership = qry_rsmembership.ToArray(); if (arr_rsmembership.Count() > 0) { foreach (var rsmembership in arr_rsmembership) { if (rsmembership.paypal_transaction_id.Length == 0) { continue; } PaymentTransactionSearchResultType paypal_trans = objPayPal.getPayPalTransaction(rsmembership.paypal_transaction_id); if (paypal_trans != null) { decimal Belob = decimal.Parse(paypal_trans.GrossAmount.Value.Replace(".", ",")); decimal[] arrBeløb = clsPbs602.fordeling(Belob, rsmembership.membership_start, rsmembership.membership_end, Regnskabsaar_Startdato, Regnskabsaar_Slutdato); string stdate = string.Format(" {0}-{1}", rsmembership.membership_start.ToString("d.M.yyyy"), rsmembership.membership_end.ToString("d.M.yyyy")); int wBilag = ++BS1_SidsteNr; recBogfoeringsKlader recklade = new recBogfoeringsKlader { Dato = paypal_trans.Timestamp, Bilag = wBilag, Tekst = ("Paypal: " + rsmembership.paypal_transaction_id).PadRight(40, ' ').Substring(0, 40), Afstemningskonto = "PayPal", Belob = Belob, Kontonr = null, Faknr = null, Sagnr = null }; klader.Add(recklade); if (arrBeløb[0] > 0) { recklade = new recBogfoeringsKlader { Dato = paypal_trans.Timestamp, Bilag = wBilag, Tekst = (rsmembership.Navn + stdate).PadRight(40, ' ').Substring(0, 40), Afstemningskonto = "", Belob = arrBeløb[0], Kontonr = 1800, Faknr = null, Sagnr = null }; klader.Add(recklade); } if (arrBeløb[1] > 0) { recklade = new recBogfoeringsKlader { Dato = paypal_trans.Timestamp, Bilag = wBilag, Tekst = (rsmembership.Navn + stdate).PadRight(40, ' ').Substring(0, 40), Afstemningskonto = "", Belob = arrBeløb[1], Kontonr = 64200, Faknr = null, Sagnr = null }; klader.Add(recklade); } recklade = new recBogfoeringsKlader { Dato = paypal_trans.Timestamp, Bilag = wBilag, Tekst = ("PayPal Gebyr").PadRight(40, ' ').Substring(0, 40), Afstemningskonto = "PayPal", Belob = decimal.Parse(paypal_trans.FeeAmount.Value.Replace(".", ",")), Kontonr = 9950, Faknr = null, Sagnr = null }; klader.Add(recklade); tblpaypalpayment rec_paypalpayments = (from p in p_dbPuls3060_dk.tblpaypalpayments where p.paypal_transactions_id == rsmembership.paypal_transaction_id select p).FirstOrDefault(); if (rec_paypalpayments == null) { rec_paypalpayments = new tblpaypalpayment { paypal_transactions_id = rsmembership.paypal_transaction_id, bogfoert = true }; p_dbPuls3060_dk.tblpaypalpayments.Add(rec_paypalpayments); } else { rec_paypalpayments.bogfoert = true; } p_dbPuls3060_dk.SaveChanges(); } } } return(klader); }
// # TransactionSearch API Operation // The TransactionSearch API searches transaction history for transactions that meet the specified criteria public TransactionSearchResponseType TransactionSearchAPIOperation() { // Create the TransactionSearchResponseType object TransactionSearchResponseType responseTransactionSearchResponseType = new TransactionSearchResponseType(); try { // # Create the TransactionSearchReq object TransactionSearchReq requestTransactionSearch = new TransactionSearchReq(); // `TransactionSearchRequestType` which takes mandatory argument: // // * `Start Date` - The earliest transaction date at which to start the // search. TransactionSearchRequestType transactionSearchRequest = new TransactionSearchRequestType("2012-12-25T00:00:00+0530"); requestTransactionSearch.TransactionSearchRequest = transactionSearchRequest; // Create the service wrapper object to make the API call PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService(); // # API call // Invoke the TransactionSearch method in service wrapper object responseTransactionSearchResponseType = service.TransactionSearch(requestTransactionSearch); if (responseTransactionSearchResponseType != null) { // Response envelope acknowledgement string acknowledgement = "TransactionSearch API Operation - "; acknowledgement += responseTransactionSearchResponseType.Ack.ToString(); logger.Info(acknowledgement + "\n"); Console.WriteLine(acknowledgement + "\n"); // # Success values if (responseTransactionSearchResponseType.Ack.ToString().Trim().ToUpper().Equals("SUCCESS")) { // Search Results IEnumerator <PaymentTransactionSearchResultType> iterator = responseTransactionSearchResponseType.PaymentTransactions.GetEnumerator(); while (iterator.MoveNext()) { PaymentTransactionSearchResultType searchResult = iterator.Current; // Merchant's transaction ID. logger.Info("Transaction ID : " + searchResult.TransactionID + "\n"); Console.WriteLine("Transaction ID : " + searchResult.TransactionID + "\n"); } } // # Error Values else { List <ErrorType> errorMessages = responseTransactionSearchResponseType.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(responseTransactionSearchResponseType); }