Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 由Authorize.Net批准的、过期日期和CVS编号不正确的交易_Vb.net_Payment Gateway_Authorize.net - Fatal编程技术网

Vb.net 由Authorize.Net批准的、过期日期和CVS编号不正确的交易

Vb.net 由Authorize.Net批准的、过期日期和CVS编号不正确的交易,vb.net,payment-gateway,authorize.net,Vb.net,Payment Gateway,Authorize.net,我目前使用Authorize.net处理了一张信用卡,并设置了信用卡当前状态。最棒的是,这张卡正在进行交易,但当我使用同一张卡的不同到期日或不同的cvs号码时,这张卡仍在进行交易。这不应该发生。下面是我在VB.NET中使用的代码 我是否缺少任何设置?。此事务处于测试模式 Public Sub New(ByVal authID As String, _ ByVal authPassword As String, _ ByV

我目前使用Authorize.net处理了一张信用卡,并设置了信用卡当前状态。最棒的是,这张卡正在进行交易,但当我使用同一张卡的不同到期日或不同的cvs号码时,这张卡仍在进行交易。这不应该发生。下面是我在VB.NET中使用的代码

我是否缺少任何设置?。此事务处于测试模式

Public Sub New(ByVal authID As String, _
                   ByVal authPassword As String, _
                   ByVal authTransKey As String, _
                   ByVal serverType As AuthServerTypeEnum, _
                   ByVal cardHolderName As String, _
                   ByVal cardNumber As String, _
                   ByVal expiryMonth As String, _
                   ByVal expiryYears As String, _
                   ByVal issuenumber As Integer, _
                   ByVal cvs As Integer, _
                   ByVal issueMonth As String, _
                   ByVal issueYear As String, _
                   ByVal fullName As String, _
                   ByVal address1 As String, _
                   ByVal address2 As String, _
                   ByVal townCity As String, _
                   ByVal county As String, _
                   ByVal country As String, _
                   ByVal postCode As String, _
                   ByVal amount As String)

        Me._AuthServerType = AuthServerTypeEnum.Test
        'Me._AuthLoginID = "xxxxxx"
        'Me._AuthTransKey = "xxxxxx"
        Me._AuthLoginID = "xxxxxx"
        Me._AuthTransKey = "xxxxxx"

        Dim objInf As New NameValueCollection(30)
        Dim objRetInf As New NameValueCollection(30)

        objInf.Add("x_version", _AuthVersion)
        objInf.Add("x_delim_data", "True")
        objInf.Add("x_login", Me.AuthLoginID)
        objInf.Add("x_password", Me.AuthPassword)
        objInf.Add("x_tran_key", Me.AuthTransKey)
        objInf.Add("x_relay_response", "False")



        Select Case Me.AuthServerType
            Case AuthServerTypeEnum.Live
                objInf.Add("x_test_request", "false")
            Case Else
                objInf.Add("x_test_request", "True")
        End Select

        objInf.Add("x_delim_char", ",")
        objInf.Add("x_encap_char", "|")

        objInf.Add("x_first_name", fullName)
        'objInf.Add("x_last_name", "Patel")
        objInf.Add("x_address", address1)
        objInf.Add("x_city", townCity)
        objInf.Add("x_state", county)
        objInf.Add("x_zip", postCode)
        objInf.Add("x_country", country)

        objInf.Add("x_description", "Description of Order")

        objInf.Add("x_card_num", cardNumber.Replace(" ", ""))
        objInf.Add("x_exp_date", expiryMonth.ToString & "/" & expiryYears.ToString)
        objInf.Add("x_market_type", "2")
        objInf.Add("x_device_type", "5")
        objInf.Add("x_response_format", "1")

        objInf.Add("x_card_code", cvs)

        objInf.Add("x_method", "CC")
        objInf.Add("x_type", "AUTH_CAPTURE")
        objInf.Add("x_amount", "1")

        objInf.Add("x_currency_code", "USD")

        Dim objRetBytes() As Byte
        Dim objRetVals() As String
        Dim strError As String = String.Empty

        Try

            objRetBytes = Me.WebClientRequest.UploadValues(Me.WebClientRequest.BaseAddress, objInf)
            objRetVals = System.Text.Encoding.ASCII.GetString(objRetBytes).Split(",".ToCharArray())

            If True Then

            End If

        Catch ex As Exception

        End Try

    End Sub

这不是编码问题


不正确的到期日期和/或CVV编号不一定会导致交易被拒绝。客户提供的到期日期不正确并不罕见,因此许多银行不会因此而拒绝销售。此外,CVV只是确定每笔交易欺诈风险的工具。错配仅仅意味着风险更高,由商户决定是否接受或拒绝交易。但交易不会因此而被拒绝,因为这不是大多数发卡银行审批流程中的一个因素。

公司指定了到期日和要处理的安全号码,那么我该怎么办?谢谢您回复我。@Trikam我没有持卡经验,希望这对您有意义。如果刷卡,您可以捕获并在屏幕上显示到期日期。然后,出纳可以验证它是否与卡上的浮雕相符。至于CVV号码,我不知道如何验证它,除了验证它是否正确输入(假设它是一个加密的交易)。处理完交易后,您将收到一个响应,指示CVV编号是否正确。如果不是,您可以显示警告,并且在需要时总是使事务无效。这仍然是真的吗?@Samyer是的,这仍然是真的