public PaymentService(IPaymentRepository dbContext, IPaymentExternalGateway gateway , IEventBus eventBus) { _context = dbContext; _gateway = gateway; _eventBus = eventBus ?? throw new ArgumentNullException(nameof(eventBus)); }