here is my used code in C#
Code:
internal XmlDocument OVIReciecpt(string TransactionID,
string TransactionTime,
string ProductId,
string ApplicationId,
string AccountId,
string imei,
string imsi,
string Signature)
{
XmlDocument XMLReturn = new XmlDocument();
string url = "https://payment.ovi.com/iap/1.0/purchases/verify?method=GET";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded; charset=UTF-8";
Stream dataStream = request.GetRequestStream();
request.Timeout = 100000;
string postData = String.Format("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>" +
"<PurchaseVerificationRequest xmlns=\"http://payment.ovi.com/iap\">" +
"<PurchaseTicket" +
" transactionId=\"{0}\"" +
" transactionTime=\"{1}\"" +
" productId=\"{2}\"" +
" applicationId=\"{3}\"" +
" accountId=\"{4}\"" +
" imei=\"{5}\"" +
" imsi=\"{6}\"" +
" signature=\"{7}\"/>" +
"</PurchaseVerificationRequest>",
TransactionID,
TransactionTime,
ProductId,
ApplicationId,
AccountId,
imei,
imsi,
Signature);
//XmlDocument doc = new XmlDocument();
//doc.LoadXml(postData);
//XmlSerializer ser = new XmlSerializer(postData.GetType());
//ser.Serialize(dataStream, postData);
byte[] byteArray = Encoding.UTF8.GetBytes(postData);
dataStream.Write(byteArray, 0, byteArray.Length);
dataStream.Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream());
string pageContents = reader.ReadToEnd();
if (pageContents.Contains("OK"))
XMLReturn = getVideosXML(int.Parse(ProductId));
return XMLReturn;
}