Hi Diego,
As a consulting partner who offers mojoPortal development services it would be nice if you could debug these problems using the source code and propose a solution since you are in a better position to produce this problem than I am. My PayPal accounts are configured for US currency to support my own testing. I would set break points in the WebStorePayPalIPNHandlerProvider.cs and also in WebStorePayPalPDTHandlerProvider.cs and see what is happening when the order comes back and how it is parsing the amounts.
The relevant code is possibly here:
CultureInfo currencyCulture;
if (currencyUsed.Length > 0)
{
currencyCulture = ResourceHelper.GetCurrencyCulture(currencyUsed);
}
else
{
//Currency currency = new Currency(store.DefaultCurrencyId);
//currencyCulture = ResourceHelper.GetCurrencyCulture(currency.Code);
Currency currency = siteSettings.GetCurrency();
currencyCulture = ResourceHelper.GetCurrencyCulture(currency.Code);
currencyUsed = currency.Code;
}
decimal grossAmount = 0;
decimal.TryParse(paymentGross, NumberStyles.Currency, currencyCulture, out grossAmount);
decimal feeAmount = 0;
decimal.TryParse(payPalFee, NumberStyles.Currency, currencyCulture, out feeAmount);
decimal taxAmount = 0;
decimal.TryParse(payPalTax, NumberStyles.Currency, currencyCulture, out taxAmount);
decimal shippingAmount = 0;
decimal.TryParse(payPalShipping, NumberStyles.Currency, currencyCulture, out shippingAmount);
decimal settleAmount = 0;
decimal.TryParse(payPalSettlement, NumberStyles.Currency, currencyCulture, out settleAmount);
I would also look directly in the mp_PayPalLog table to see the raw response which is not displayed in the UI so you can see how the amounts are formatted when they come back from paypal.
I think I may understand the problem with the permission and will make a change to try and solve it. The Cart cookie is independent of the user authentication cookie so if you were logged in as admin and created the cart it assigned the admin user to the cart. I just need to add some additional logic if you login as a different user and already have a cart I need to add a check if the current user on the cart matches the login user and if not change it to the login user.
It would be nice if you could do your testing using a build from svn trunk, that way if I fix something like this cart issue you can confirm it and we can work out these issues before the next release.
Best,
Joe