diff --git a/internal/handlers/ussd/menuhandler.go b/internal/handlers/ussd/menuhandler.go index cb2a913..2491d5f 100644 --- a/internal/handlers/ussd/menuhandler.go +++ b/internal/handlers/ussd/menuhandler.go @@ -837,9 +837,10 @@ func (h *Handlers) InitiateTransaction(ctx context.Context, sym string, input [] account_authorized_flag, err := h.parser.GetFlag("flag_account_authorized") if err != nil { - res.FlagReset = append(res.FlagReset, account_authorized_flag) + return res, nil } + res.FlagReset = append(res.FlagReset, account_authorized_flag) return res, nil } diff --git a/services/registration/transaction_initiated.vis b/services/registration/transaction_initiated.vis index b1042f5..3b8b9f6 100644 --- a/services/registration/transaction_initiated.vis +++ b/services/registration/transaction_initiated.vis @@ -1,4 +1,6 @@ -LOAD reset_incorrect 0 +LOAD reset_incorrect 6 +CATCH incorrect_pin flag_incorrect_pin 1 +CATCH _ flag_account_authorized 0 LOAD get_amount 10 MAP get_amount RELOAD get_recipient diff --git a/services/registration/transaction_pin.vis b/services/registration/transaction_pin.vis index 878104c..cadbdcf 100644 --- a/services/registration/transaction_pin.vis +++ b/services/registration/transaction_pin.vis @@ -6,7 +6,7 @@ MAP get_sender MOUT back 0 MOUT quit 9 HALT -LOAD authorize_account 1 +LOAD authorize_account 6 RELOAD authorize_account CATCH incorrect_pin flag_incorrect_pin 1 INCMP _ 0