Ah, looks like OrderPipeline isn't localization friendly. This is fixed in the later version. Here is the code snipet from the latest version.
protected virtual int ProcessOrders(string host, IConfigurationSource cfgSrc, int orderStatusIdSource) {
int processed = 0;
SiteConfigurationSection section = (SiteConfigurationSection)cfgSrc.GetSection(SiteConfigurationSection.SectionName);
CultureInfo culture = new CultureInfo(section.Culture);
foreach (Order order in Order.GetByStatus(host, orderStatusIdSource)) {
string processOrderName = Resource.ResourceManager.GetString(Name, culture);
try {
ProcessOrder(host, order, cfgSrc);
order.SetToNextStatusInPipeline(host, string.Format(Resource.ResourceManager.GetString("OrderProcessorSuccessFormat", culture),
processOrderName));
processed++;
} catch (OrderProcessorExecption) {
throw; //something is wrong with this order processor. Let this to be killed.
} catch (Exception e) {
Order.SetStatus(host, order.OrderId, OrderStatus.OrderUnderReviewStatus,
string.Format(Resource.ResourceManager.GetString("OrderProcessorFailureFormat",culture), processOrderName, e.Message));
if (this is IPaymentProcessorProvider) {
NameValueCollection tokens = new NameValueCollection();
tokens.Add("Order.OrderNumber", order.OrderNumber);
EmailManager.Send(host, "PaymentFailure", tokens, section.SiteEmailAddress, new string[] { section.SiteEmailAddress }, null);
} else {
ExceptionPolicy.HandleException(e, "Unhandled Policy");
}
}
}
return processed;
}
You can log in to your account and download the latest version and then copy the localization related copy over to your current version. Let me know if you need further help.