/// <summary> /// Handle order refunded event /// </summary> /// <param name="eventMessage">Event message</param> public void HandleEvent(OrderRefundedEvent eventMessage) { if (eventMessage.Order == null) { return; } //ensure that Avalara tax provider is active if (_taxService.LoadActiveTaxProvider(eventMessage.Order.Customer) is AvalaraTaxProvider taxProvider) { //refund tax transaction taxProvider.RefundTaxTransaction(eventMessage.Order, eventMessage.Amount); } }
/// <summary> /// Handle order refunded event /// </summary> /// <param name="eventMessage">Event message</param> /// <returns>A task that represents the asynchronous operation</returns> public async Task HandleEventAsync(OrderRefundedEvent eventMessage) { if (eventMessage.Order == null) { return; } //ensure that Avalara tax provider is active if (!await _taxPluginManager.IsPluginActiveAsync(AvalaraTaxDefaults.SystemName)) { return; } //refund tax transaction await _avalaraTaxManager.RefundTaxTransactionAsync(eventMessage.Order, eventMessage.Amount); }
/// <summary> /// Handle order refunded event /// </summary> /// <param name="eventMessage">Event message</param> public void HandleEvent(OrderRefundedEvent eventMessage) { if (eventMessage.Order == null) { return; } //ensure that Avalara tax provider is active if (!_taxPluginManager.IsPluginActive(AvalaraTaxDefaults.SystemName)) { return; } //refund tax transaction _avalaraTaxManager.RefundTaxTransaction(eventMessage.Order, eventMessage.Amount); }