/**
* {@inheritdoc}
*/
public function visitOrder(OrderInterface $order)
{
$shippingMethod = $order->getShippingMethod();
$paymentMethods = $shippingMethod->getPaymentMethods();
if (false === $order->hasPaymentMethod() || false === $paymentMethods->contains($order->getPaymentMethod())) {
$order->setPaymentMethod($paymentMethods->first());
}
$modifier = $this->orderModifierProvider->getOrderModifier($order, 'payment_surcharge');
$modifier->setCurrency($order->getCurrency());
$modifier->setGrossAmount(0);
$modifier->setNetAmount(0);
$modifier->setTaxAmount(0);
}