Curl request for Initiate Transaction


I am working in rust and would like to build a service that utilises initiate transaction. I have tried to build a curl request based on the paynow example and I keep getting an error of a hash mismatch. Can someone help me build a valid request? What am I doing wrong here:

curl -i -X POST
-H “Accept:application/json”
-H “Content-Type:application/x-www-form-urlencoded”
-d “resulturl=”
-d “returnurl=”
-d “reference=TEST REF”
-d “amount=99.99”
-d “id=1201”
-d “additionalinfo=A test ticket transaction”
-d “status=Message”
-d “hash=2A033FC38798D913D42ECB786B9B19645ADEDBDE788862032F1BD82CF3B92DEF84F316385D5B40DBB35F1A4FD7D5BFE73835174136463CDD48C9366B0749C689”

Hash Generated with Info:

Error I am Getting:

HTTP/1.1 200 OK
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/8.0
X-Frame-Options: SAMEORIGIN
Date: Fri, 29 Mar 2024 16:57:30 GMT
Content-Length: 66