I created a scheduled task to remove personal info from the order, using below code
foreach (var order in orders)
{
var orderCarrier = order.GetAsCarrier(false, true, false, false, false, true);
orderCarrier.CustomerInfo.Address.ClearPersonalData();
orderCarrier.Deliveries[0].Address.ClearPersonalData();
orderCarrier.PaymentInfo[0].BillingAddress.ClearPersonalData();
order.SetValuesFromCarrier(orderCarrier, ModuleECommerce.Instance.AdminToken);
}
public static void ClearPersonalData(this AddressCarrier addressCarrier)
{
if (addressCarrier == null) throw new ArgumentNullException("addressCarrier");
var emptyAddress = new AddressCarrier
{
FirstName = string.Empty,
LastName = string.Empty,
Address1 = string.Empty,
Address2 = string.Empty,
Zip = addressCarrier.Zip,
City = addressCarrier.City,
Country = addressCarrier.Country
};
addressCarrier.SetValues(emptyAddress, addressCarrier.ID);
}
This code is working as expected - it clearing user information form the order. But in the log it showing exceptions as below