diff --git a/server/handler/confirmation.go b/server/handler/confirmation.go index 7a3f0f2..bbe4bcd 100644 --- a/server/handler/confirmation.go +++ b/server/handler/confirmation.go @@ -22,7 +22,6 @@ func SendOrderConfirmation(s *sendgrid.Client) http.HandlerFunc { err = s.SendOrderConfirmation(ctx, *mailData) if err != nil { - fmt.Println(err) handleError(w, err, "error from sendgrid ", http.StatusInternalServerError, true) return } @@ -51,5 +50,17 @@ func getOrderConfirmationPayload(r *http.Request) (*mail.OrderConfirmationData, return nil, fmt.Errorf("decode: %w", err) } + if payload.Email == "" { + return nil, fmt.Errorf("missing required email field") + } + + if payload.OrderId == "" { + return nil, fmt.Errorf("missing required orderid field") + } + + if len(payload.Products) == 0 { + return nil, fmt.Errorf("missing required products array") + } + return &payload, nil }