Read delimited file

I have a delimited file (,) containing Name, Amount,Type,Address,zip,Tel and Extn. If any of this column information is missing (except TYPE and Extn),
I need to print that a spefic column value is missing in my output.

Example: row 2 is missing ZIP and the out put should contain NOZIP in the Zip column. How can write a code in Unix to process this file.

Input File

Name='ABC',Amount=89.56,TYPE=CREDIT,Address|GTFHNKJ,Zip|0765438765,Tel:8976544
Name='DET',Amount=56.42,TYPE=CREDIT,Address|SCVH,Tel:458962
Name='POJ',Amount=12.568,TYPE=CREDIT,Address|GTFHNKJ,Zip|256445,Tel:452365,Extn:5678
Name='TYI',Address|TFDSER,Zip|256445,Extn:1245

Output File

NAME,AMOUNT,ADDRESS,ZIP,TEL
ABC,89.56,GTFHNKJ,0765438765,8976544
DET,56.42,SCVH,NOZIP,458962
POJ,12.568,GTFHNKJ,256445,452365
TYI,NOAMOUNT,TFDSER,256445,NOTELEPHONE

Thanks..

You have not specified tools to use and what you tried so far, so I just use shell script. I don't want to do the complete work for you, but I will show how to loop through the lines of your file, how to break the line into comma-delimited columns, how to examine keyword and value of each column and show example of if statement, so you can do your data manipulation as you see fit.

#!/bin/sh
SAFE_FS=$IFS
IFS=',';
cat YOUR_FILE_NAME|while read col1 col2 col3 col4 col5 col6 col7;
do
        kwd=${col2%=*};
        val=${col2#=*};
        if [ $kwd = 'Amount' ]; then
                printf "column2<%s> keyword<%s> value<%s>\n" $col2 $kwd $val;
        else
                printf "column2<%s> this keyword<%s> Unexpected\n" $col2 $kwd;
        fi
done;
IFS=$SAFE_FS;

the output:

column2<Amount=89.56> keyword<Amount> value<Amount=89.56>
column2<Amount=56.42> keyword<Amount> value<Amount=56.42>
column2<Amount=12.568> keyword<Amount> value<Amount=12.568>
column2<Address|TFDSER> this keyword<Address|TFDSER> Unexpected