DRY & KISS Principles

Which principle does this error handling implementation violate, and how can it be improved using DRY?
function handleUserError(error) {
  console.error('User Error:', error);
  logToService('User Error:', error);
  showNotification('Error occurred while processing user data');
}

function handlePaymentError(error) {
  console.error('Payment Error:', error);
  logToService('Payment Error:', error);
  showNotification('Error occurred while processing payment');
}

function handleProductError(error) {
  console.error('Product Error:', error);
  logToService('Product Error:', error);
  showNotification('Error occurred while processing product');
Next Question (6/20)