No, you can't have WHERE clause in your INSERT statement
You need to change your INSERT statement
CREATE PROCEDURE AddPostCodes
@POSTCODESID INT ,
@CUSTOMERLOANDATAID int,
@CUSTOMERADDRESS1 varchar(100),
@CUSTOMERADDRESS2 varchar(100),
@LANDMARK varchar(50),
@CITY varchar(25),
@STATE varchar(25),
@PINCODE varchar(7),
@ERRORMESSAGE varchar(max)
AS
BEGIN
Declare @ID INT = 0
Select @ID = ID From PINCODEMASTER where ID = @POSTCODESID
IF(@ID <> 0 AND @ID = @POSTCODESID)
BEGIN
insert into PINCODEMASTER(CUSTOMERLOANDATAID,CUSTOMERADDRESS1,CUSTOMERADDRESS2,LANDMARK,CITY,STATE,
PINCODE, ERRORMESSAGE)
values(@CUSTOMERLOANDATAID,@CUSTOMERADDRESS1,@CUSTOMERADDRESS2,@LANDMARK,@CITY,@STATE,
@PINCODE,@ERRORMESSAGE)
END
END