| Requires any of the roles: | Admin, TeamAdmin, MobileApp, Admin, TeamAdmin, MobileApp | Requires any of the permissions: | ReadData, ReadData |
| POST | /OrderOwnerCards |
|---|
import Foundation
import ServiceStack
public class OwnerCardsOrderRequest : Codable
{
public var ownerCardTypeIds:[Int] = []
public var paymentMethodId:String?
public var cardInfo:PaymentRequestCreditCard?
public var applePayInfo:BorgunApplePayFinalInfo?
public var borgun3DFinalInfo:Borgun3DFinalRequest?
public var paymentPhoneNumber:String?
public var appMetaData:String?
public var holderId:String?
public var holderName:String?
public var holderEmail:String?
public var returnCards:Bool?
public var phoneVerificationNumber:String?
public var deviceId:String?
public var requestUnixUTCTimeStamp:Int?
public var signature:RequestSignature?
required public init(){}
}
public class PaymentRequestCreditCard : Codable
{
public var paymentMethod:PaymentMethodCreditCardInfo?
public var amount:Double?
public var currency:String?
public var orderId:String?
public var transActionDate:Date?
public var saveCardToToken:Bool?
required public init(){}
}
public class PaymentMethodCreditCardInfo : Codable
{
public var paymentType:String?
public var token:String?
public var pan:String?
public var expYear:String?
public var expMonth:String?
public var cvc:String?
required public init(){}
}
public class BorgunApplePayFinalInfo : Codable
{
public var orderId:String?
public var threeDSecure:BorgunApplePayThreeDSecureInfo?
required public init(){}
}
public class BorgunApplePayThreeDSecureInfo : Codable
{
public var dataType:String?
public var securityLevelInd:String?
public var cavv:String?
public var ucaf:String?
required public init(){}
}
public class Borgun3DFinalRequest : Codable
{
public var transactionType:String?
public var amount:Int?
public var currency:String?
public var transactionDate:Date?
public var orderId:String?
public var paymentMethod:Borgun3DFinalPaymentMethodInfo?
public var threeDSecure:Borgun3DFinal3DSecureInfo?
required public init(){}
}
public class Borgun3DFinalPaymentMethodInfo : Codable
{
public var paymentType:String?
public var token:String?
required public init(){}
}
public class Borgun3DFinal3DSecureInfo : Codable
{
public var dataType:String?
public var mpiToken:String?
required public init(){}
}
public class RequestSignature : Codable
{
public var systemId:String?
public var systemSecret:String?
public var signature:String?
required public init(){}
}
public class OwnerCardsOrderResult : GeneralOrderResponse
{
public var cards:[OwnerCards] = []
required public init(){ super.init() }
private enum CodingKeys : String, CodingKey {
case cards
}
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
let container = try decoder.container(keyedBy: CodingKeys.self)
cards = try container.decodeIfPresent([OwnerCards].self, forKey: .cards) ?? []
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
var container = encoder.container(keyedBy: CodingKeys.self)
if cards.count > 0 { try container.encode(cards, forKey: .cards) }
}
}
public class GeneralOrderResponse : Codable
{
public var statusCode:Int?
public var message:String?
public var success:Bool?
public var paymentIsPending:Bool?
public var orderTokenId:String?
required public init(){}
}
public class OwnerCards : Codable
{
public var id:Int?
public var ownerId:Int?
public var ownerCardTypeId:Int?
public var phoneVerificationId:Int?
public var initialMaxTickets:Int?
public var currentAvailableTickets:Int?
public var timeStampCreatedUTC:Date?
public var timeStampLastChangedUTC:Date?
public var timeStampBoughtUTC:Date?
public var timeStampOrderedUTC:Date?
public var cardValidFromUTC:Date?
public var cardValidToUTC:Date?
public var hasStoreCredit:Bool?
public var cardPrice:Double?
public var pricePaid:Double?
public var initialStoreCredit:Double?
public var currentStoreCredit:Double?
public var phoneFullVerificationNumber:String?
public var holderId:String?
public var holderName:String?
public var holderEmail:String?
public var cardPriceCurrency:String?
public var pricePaidCurrency:String?
public var deviceId:String?
public var paymentMethodId:String?
public var paymentReference:String?
public var phoneVerificationNumber:String?
public var paymentPhoneNumber:String?
public var paymentId:String?
public var paymentStatus:String?
public var paymentTokenId:String?
public var maxTicketsPerEvent:Int?
public var multiplePaymentsId:String?
public var imageUrl:String?
public var backgroundImageUrl:String?
required public init(){}
}
Swift OwnerCardsOrderRequest DTOs
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 /OrderOwnerCards HTTP/1.1
Host: stubbur-app.azurewebsites.net
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
ownerCardTypeIds:
[
0
],
paymentMethodId: String,
cardInfo:
{
paymentMethod:
{
paymentType: String,
token: String,
pan: String,
expYear: String,
expMonth: String,
cvc: String
},
amount: 0,
currency: String,
orderId: String,
transActionDate: 0001-01-01,
saveCardToToken: False
},
applePayInfo:
{
orderId: String,
threeDSecure:
{
dataType: String,
securityLevelInd: String,
cavv: String,
ucaf: String
}
},
borgun3DFinalInfo:
{
transactionType: String,
amount: 0,
currency: String,
transactionDate: 0001-01-01,
orderId: String,
paymentMethod:
{
paymentType: String,
token: String
},
threeDSecure:
{
dataType: String,
mpiToken: String
}
},
paymentPhoneNumber: String,
appMetaData: String,
holderId: String,
holderName: String,
holderEmail: String,
returnCards: False,
phoneVerificationNumber: String,
deviceId: String,
requestUnixUTCTimeStamp: 0,
signature:
{
systemId: String,
systemSecret: String,
signature: String
}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
cards:
[
{
id: 0,
ownerId: 0,
ownerCardTypeId: 0,
phoneVerificationId: 0,
initialMaxTickets: 0,
currentAvailableTickets: 0,
timeStampCreatedUTC: 0001-01-01,
timeStampLastChangedUTC: 0001-01-01,
timeStampBoughtUTC: 0001-01-01,
timeStampOrderedUTC: 0001-01-01,
cardValidFromUTC: 0001-01-01,
cardValidToUTC: 0001-01-01,
hasStoreCredit: False,
cardPrice: 0,
pricePaid: 0,
initialStoreCredit: 0,
currentStoreCredit: 0,
phoneFullVerificationNumber: String,
holderId: String,
holderName: String,
holderEmail: String,
cardPriceCurrency: String,
pricePaidCurrency: String,
deviceId: String,
paymentMethodId: String,
paymentReference: String,
phoneVerificationNumber: String,
paymentPhoneNumber: String,
paymentId: String,
paymentStatus: String,
paymentTokenId: String,
maxTicketsPerEvent: 0,
multiplePaymentsId: String,
imageUrl: String,
backgroundImageUrl: String
}
],
statusCode: 0,
message: String,
success: False,
paymentIsPending: False,
orderTokenId: String
}