How to maintain consistency

I’m writing some prompts that extract data from invoice.
Output format is CSV, and I set instructions for each columns of the table.
Below is one of the instruction.
However GPT violates instruction sometimes, so output is not stable.
Any tips to make stable output from GPT?

Regarding ‘Additional_service’ column delimited by ():
(Strictly keep below rule.
value of this column must be one of the below additional_service_list otherwise N/A.
Other values that are not the additional_service_list is not allowed for this column.
If value of ‘Class’ column exists, value of this column must be {class_operation}.
value can not be empty string.)