var token = Convert.ToInt64(Request.Form["Token"]);
var orderId = Convert.ToInt64(Request.Form["OrderId"]);
var terminalNumber = Convert.ToInt32(Request.Form["TerminalNo"]);
var rrn = Convert.ToInt64(Request.Form["RRN"]);
var status = Convert.ToInt16(Request.Form["status"]);
var amountAsString = Request.Form["Amount"]; //amount is formatted as a currency string
var DiscountAmount = Request.Form["SwAmount"];
if (status == 0 && token > 0L)
{
ConfirmResponseData data = new ConfirmResponseData();
//ایجاد یک نمونه از سرویس تایید پرداخت
using (var confirmSvc = new ConfirmServiceSoapClient(ConfirmServiceSoapClient.EndpointConfiguration.ConfirmServiceSoap))
{
var loginAccount = _configuration.GetSection("loginAccount").Value;
//فراخوانی سرویس و دریافت نتیجه فراخوانی
var confirm = await confirmSvc.ConfirmPaymentAsync(new ClientConfirmRequestData { LoginAccount = loginAccount, Token = token });
data.CardNumberMasked = confirm.Body.ConfirmPaymentResult.CardNumberMasked;
data.RRN = confirm.Body.ConfirmPaymentResult.RRN;
data.Token = confirm.Body.ConfirmPaymentResult.Token;
data.Status = confirm.Body.ConfirmPaymentResult.Status;
//کنترل کد وضعیت نتیجه فراخوانی
//درصورتی که موفق باشد، باید خدمات یا کالا به کاربر پرداخت کننده ارائه شود
if (data.Status == 0 && data.RRN > 0)
{
//عملیات پرداخت با موفقیت انجام و تایید شد.
//it is better to save confirm response into a database.
}
}