/* Options: Date: 2026-08-17 09:23:49 Version: 6.10 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://stubbur-app.azurewebsites.net //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GiftCardPurchaseRequest.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.* */ import java.math.* import java.util.* import net.servicestack.client.* @Route(Path="/GiftCard/Purchase", Verbs="POST") open class GiftCardPurchaseRequest : IReturn { var giftCardTypeId:Int? = null var amountMinor:Int? = null var purchasePaymentReference:String? = null var purchaseOwnerId:Int? = null var buyerName:String? = null var buyerPhone:String? = null var buyerEmail:String? = null var recipientName:String? = null var idempotencyKey:String? = null var paymentMethodId:String? = null var paymentId:String? = null var cardInfo:PaymentRequestCreditCard? = null var borgun3DFinalInfo:Borgun3DFinalRequest? = null var applePayInfo:BorgunApplePayFinalInfo? = null companion object { private val responseType = GiftCardIssueResult::class.java } override fun getResponseType(): Any? = GiftCardPurchaseRequest.responseType } open class GiftCardIssueResult { var success:Boolean? = null var giftCardId:Int? = null var code:String? = null var codeLast4:String? = null var status:String? = null var expiresAt:Date? = null var paymentId:String? = null var statusCode:Int? = null var message:String? = null } open class Borgun3DFinalRequest { var transactionType:String? = null var amount:Int? = null var currency:String? = null var transactionDate:Date? = null var orderId:String? = null var paymentMethod:Borgun3DFinalPaymentMethodInfo? = null var threeDSecure:Borgun3DFinal3DSecureInfo? = null } open class PaymentRequestCreditCard { var paymentMethod:PaymentMethodCreditCardInfo? = null var amount:BigDecimal? = null var currency:String? = null var orderId:String? = null var transActionDate:Date? = null var saveCardToToken:Boolean? = null } open class BorgunApplePayFinalInfo { var orderId:String? = null var threeDSecure:BorgunApplePayThreeDSecureInfo? = null } open class Borgun3DFinalPaymentMethodInfo { var paymentType:String? = null var token:String? = null var virtualNumber:String? = null var expYear:String? = null var expMonth:String? = null var panLastFour:String? = null } open class Borgun3DFinal3DSecureInfo { var dataType:String? = null var mpiToken:String? = null } open class PaymentMethodCreditCardInfo { var paymentType:String? = null var token:String? = null var pan:String? = null var expYear:String? = null var expMonth:String? = null var cvc:String? = null } open class BorgunApplePayThreeDSecureInfo { var dataType:String? = null var securityLevelInd:String? = null var cavv:String? = null var ucaf:String? = null }