One idea
In Go, useful functions return an error as the last value. nil means success. Any other error means the caller must decide what to do next.
Do not make the caller read a string to understand a known case. Use error values or custom error types for cases your service can handle.
Why this matters
Your HTTP service will fail in normal ways. A product ID may be missing. A map lookup may fail. A request body may be invalid.
Good errors make these failures easy to turn into proper HTTP responses later. Bad errors become random 500s and confusing logs during demos.