POST | /PSBINCheck |
---|
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Paysecure.ServiceModel
Imports Paysecure.ServiceModel.Types
Namespace Global
Namespace Paysecure.ServiceModel
<DataContract>
Public Partial Class PSBINCheck
Inherits PaysecureVersion
<DataMember>
Public Overridable Property BIN As String
<DataMember>
Public Overridable Property InternetPinDebit As Boolean
<DataMember>
Public Overridable Property EcomEBTSNAP As Boolean
<DataMember>
Public Overridable Property EcomEBTCash As Boolean
<DataMember>
Public Overridable Property POSFlag As Boolean
<DataMember>
Public Overridable Property PinlessEcommerce As Boolean
<DataMember>
Public Overridable Property PinlessBillPay As Boolean
<DataMember>
Public Overridable Property OnDemandPaymentCredit As Boolean
<DataMember>
Public Overridable Property OnDemandPaymentDebit As Boolean
<DataMember>
Public Overridable Property PinlessA2ACredit As Boolean
<DataMember>
Public Overridable Property PinlessA2ADebit As Boolean
<DataMember>
Public Overridable Property PinlessPrePaidLoad As Boolean
<DataMember>
Public Overridable Property DualMessage As Boolean
<DataMember>
Public Overridable Property Recurring As Boolean
<DataMember>
Public Overridable Property CardVerify As Boolean
<DataMember>
Public Overridable Property POSPinlessDualMessageFlag As Boolean
<DataMember>
Public Overridable Property ErrorMessage As String
<DataMember>
Public Overridable Property ErrorCode As String
<DataMember>
Public Overridable Property OTP As Boolean
<DataMember>
Public Overridable Property FastFunds As String
<DataMember>
Public Overridable Property IncrementalAuth As Boolean
<DataMember>
Public Overridable Property WIC As Boolean
<DataMember>
Public Overridable Property CardDesignation As String
End Class
<DataContract>
Public Partial Class PSBINCheckRequest
<DataMember>
Public Overridable Property Credentials As RequestorCredentials
<DataMember>
Public Overridable Property BIN As String
End Class
End Namespace
Namespace Paysecure.ServiceModel.Types
Public Partial Class CardAccountUpdaterDescriptor
Public Overridable Property CardDataType As CardInfoType
Public Overridable Property CardNumberInfo As String
Public Overridable Property ExpiryDate As String
Public Overridable Property Status As String
Public Overridable Property ErrorCode As String
Public Overridable Property CardToken As String
End Class
Public Enum CardInfoType
CardNumber
Token
Track
EMV
Encrypted
DPAN
ApplePay
GooglePay
SamsungPay
CPToken
EncryptedEnhanced
EncryptedJWE
End Enum
<DataContract>
Public Partial Class ExtendedResponse
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property CardAccountUpdater As CardAccountUpdaterDescriptor
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property ProductId As String
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property NetworkResponseCode As String
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property NetworkTransactionId As String
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property CHEmailAddrResult As String
End Class
<DataContract>
Public Partial Class InOutTimes
End Class
<DataContract>
Public Partial Class PaysecureResponseInternal
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property Timestamps As RequestTimestamps
End Class
<DataContract>
Public Partial Class PaysecureVersion
Inherits PaysecureResponseInternal
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property LocalDateTime As String
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property Token As String
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property ExtendedData As ExtendedResponse
End Class
Public Partial Class RequestorCredentials
<Required>
Public Overridable Property MerchantId As String
<Required>
Public Overridable Property UserName As String
<Required>
Public Overridable Property Password As String
<Required>
Public Overridable Property Version As String
End Class
<DataContract>
Public Partial Class RequestTimestamps
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property AppLayer As InOutTimes
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property ParentLookup As InOutTimes
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property RetryLookup As InOutTimes
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property GetCardData As InOutTimes
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property CardTokenize As InOutTimes
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property CardEncrypt As InOutTimes
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property DBInsert As InOutTimes
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property BackendProcess As InOutTimes
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property DBUpdate As InOutTimes
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property ParentUpdate As InOutTimes
<DataMember(EmitDefaultValue:=false)>
Public Overridable Property Network As InOutTimes
End Class
End Namespace
End Namespace
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /PSBINCheck HTTP/1.1
Host: api.paysecure.acculynk.net
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
Credentials:
{
MerchantId: String,
UserName: String,
Password: String,
Version: String
},
BIN: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { BIN: String, InternetPinDebit: False, EcomEBTSNAP: False, EcomEBTCash: False, POSFlag: False, PinlessEcommerce: False, PinlessBillPay: False, OnDemandPaymentCredit: False, OnDemandPaymentDebit: False, PinlessA2ACredit: False, PinlessA2ADebit: False, PinlessPrePaidLoad: False, DualMessage: False, Recurring: False, CardVerify: False, POSPinlessDualMessageFlag: False, ErrorMessage: String, ErrorCode: String, OTP: False, FastFunds: String, IncrementalAuth: False, WIC: False, CardDesignation: String, LocalDateTime: String, Token: String, ExtendedData: { CardAccountUpdater: { CardDataType: CardNumber, CardNumberInfo: String, ExpiryDate: String, Status: String, ErrorCode: String, CardToken: String }, ProductId: String, NetworkResponseCode: String, NetworkTransactionId: String, CHEmailAddrResult: String }, Timestamps: { AppLayer: { InTime: 0001-01-01, OutTime: 0001-01-01 }, ParentLookup: { InTime: 0001-01-01, OutTime: 0001-01-01 }, RetryLookup: { InTime: 0001-01-01, OutTime: 0001-01-01 }, GetCardData: { InTime: 0001-01-01, OutTime: 0001-01-01 }, CardTokenize: { InTime: 0001-01-01, OutTime: 0001-01-01 }, CardEncrypt: { InTime: 0001-01-01, OutTime: 0001-01-01 }, DBInsert: { InTime: 0001-01-01, OutTime: 0001-01-01 }, BackendProcess: { InTime: 0001-01-01, OutTime: 0001-01-01 }, DBUpdate: { InTime: 0001-01-01, OutTime: 0001-01-01 }, ParentUpdate: { InTime: 0001-01-01, OutTime: 0001-01-01 }, Network: { InTime: 0001-01-01, OutTime: 0001-01-01 } } }