diff --git a/src/Apps/W1/Shopify/App/src/Order Return Refund Processing/Codeunits/ShpfyCreateSalesDocRefund.Codeunit.al b/src/Apps/W1/Shopify/App/src/Order Return Refund Processing/Codeunits/ShpfyCreateSalesDocRefund.Codeunit.al index 1352d7b353..eae12a0216 100644 --- a/src/Apps/W1/Shopify/App/src/Order Return Refund Processing/Codeunits/ShpfyCreateSalesDocRefund.Codeunit.al +++ b/src/Apps/W1/Shopify/App/src/Order Return Refund Processing/Codeunits/ShpfyCreateSalesDocRefund.Codeunit.al @@ -411,6 +411,7 @@ codeunit 30246 "Shpfy Create Sales Doc. Refund" SalesLine: Record "Sales Line"; Currency: Record Currency; OrderHeader: Record "Shpfy Order Header"; + SkipBalancing: Boolean; RoundingAmount: Decimal; begin SalesHeader.CalcFields(Amount, "Amount Including VAT"); @@ -418,6 +419,10 @@ codeunit 30246 "Shpfy Create Sales Doc. Refund" RoundingAmount := CreateRoundingLine(RefundHeader, SalesHeader, LineNo); OrderHeader.Get(RefundHeader."Order Id"); + RefundProcessEvents.OnBeforeCreateSalesLinesFromRemainingAmount(RefundHeader, SalesHeader, SkipBalancing); + if SkipBalancing then + exit; + case OrderHeader."Processed Currency Handling" of "Shpfy Currency Handling"::"Shop Currency": if SalesHeader."Amount Including VAT" <> RefundHeader."Total Refunded Amount" + RoundingAmount then begin diff --git a/src/Apps/W1/Shopify/App/src/Order Return Refund Processing/Codeunits/ShpfyRefundProcessEvents.Codeunit.al b/src/Apps/W1/Shopify/App/src/Order Return Refund Processing/Codeunits/ShpfyRefundProcessEvents.Codeunit.al index 26eb8fda1d..957151dc4d 100644 --- a/src/Apps/W1/Shopify/App/src/Order Return Refund Processing/Codeunits/ShpfyRefundProcessEvents.Codeunit.al +++ b/src/Apps/W1/Shopify/App/src/Order Return Refund Processing/Codeunits/ShpfyRefundProcessEvents.Codeunit.al @@ -66,4 +66,15 @@ codeunit 30247 "Shpfy Refund Process Events" internal procedure OnAfterProcessSalesDocument(RefundHeader: Record "Shpfy Refund Header"; var SalesHeader: Record "Sales Header") begin end; + + [IntegrationEvent(false, false)] + /// + /// Raised before creating the auto-balance line from the remaining refund amount. + /// + /// Parameter of type Record "Shpfy Refund Header". + /// Parameter of type Record "Sales Header". + /// Set to true to skip the auto-balance remaining amount calculation. + internal procedure OnBeforeCreateSalesLinesFromRemainingAmount(RefundHeader: Record "Shpfy Refund Header"; var SalesHeader: Record "Sales Header"; var SkipBalancing: Boolean) + begin + end; } \ No newline at end of file