| Requires any of the roles: | Admin, TeamAdmin, MobileApp | Required permission: | Tickets.Add |
| POST | /GiftCard/Purchase |
|---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using TicketUserServices.ServiceModel;
using BorgunRPGData;
namespace BorgunRPGData
{
public partial class Borgun3DFinal3DSecureInfo
{
public virtual string DataType { get; set; }
public virtual string MpiToken { get; set; }
}
public partial class Borgun3DFinalPaymentMethodInfo
{
public virtual string PaymentType { get; set; }
public virtual string Token { get; set; }
public virtual string VirtualNumber { get; set; }
public virtual string ExpYear { get; set; }
public virtual string ExpMonth { get; set; }
public virtual string PanLastFour { get; set; }
}
public partial class Borgun3DFinalRequest
{
public virtual string TransactionType { get; set; }
public virtual int Amount { get; set; }
public virtual string Currency { get; set; }
public virtual DateTime? TransactionDate { get; set; }
public virtual string OrderId { get; set; }
public virtual Borgun3DFinalPaymentMethodInfo PaymentMethod { get; set; }
public virtual Borgun3DFinal3DSecureInfo ThreeDSecure { get; set; }
}
public partial class BorgunApplePayFinalInfo
{
public virtual string OrderId { get; set; }
public virtual BorgunApplePayThreeDSecureInfo ThreeDSecure { get; set; }
}
public partial class BorgunApplePayThreeDSecureInfo
{
public virtual string DataType { get; set; }
public virtual string SecurityLevelInd { get; set; }
public virtual string CAVV { get; set; }
public virtual string UCAF { get; set; }
}
}
namespace TicketUserServices.ServiceModel
{
public partial class GiftCardIssueResult
{
public virtual bool Success { get; set; }
public virtual int? GiftCardId { get; set; }
public virtual string Code { get; set; }
public virtual string CodeLast4 { get; set; }
public virtual string Status { get; set; }
public virtual DateTime? ExpiresAt { get; set; }
public virtual string PaymentId { get; set; }
public virtual int StatusCode { get; set; }
public virtual string Message { get; set; }
}
public partial class GiftCardPurchaseRequest
{
public virtual int GiftCardTypeId { get; set; }
public virtual int AmountMinor { get; set; }
public virtual string PurchasePaymentReference { get; set; }
public virtual int? PurchaseOwnerId { get; set; }
public virtual string BuyerName { get; set; }
public virtual string BuyerPhone { get; set; }
public virtual string BuyerEmail { get; set; }
public virtual string RecipientName { get; set; }
public virtual string IdempotencyKey { get; set; }
public virtual string PaymentMethodId { get; set; }
public virtual string PaymentId { get; set; }
public virtual PaymentRequestCreditCard CardInfo { get; set; }
public virtual Borgun3DFinalRequest Borgun3DFinalInfo { get; set; }
public virtual BorgunApplePayFinalInfo ApplePayInfo { get; set; }
}
public partial class PaymentMethodCreditCardInfo
{
public virtual string PaymentType { get; set; }
public virtual string Token { get; set; }
public virtual string PAN { get; set; }
public virtual string ExpYear { get; set; }
public virtual string ExpMonth { get; set; }
public virtual string CVC { get; set; }
}
public partial class PaymentRequestCreditCard
{
public virtual PaymentMethodCreditCardInfo PaymentMethod { get; set; }
public virtual decimal Amount { get; set; }
public virtual string Currency { get; set; }
public virtual string OrderId { get; set; }
public virtual DateTime TransActionDate { get; set; }
public virtual bool SaveCardToToken { get; set; }
}
}
C# GiftCardPurchaseRequest 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 /GiftCard/Purchase HTTP/1.1
Host: stubbur-app.azurewebsites.net
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
giftCardTypeId: 0,
amountMinor: 0,
purchasePaymentReference: String,
purchaseOwnerId: 0,
buyerName: String,
buyerPhone: String,
buyerEmail: String,
recipientName: String,
idempotencyKey: String,
paymentMethodId: String,
paymentId: 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
},
borgun3DFinalInfo:
{
transactionType: String,
amount: 0,
currency: String,
transactionDate: 0001-01-01,
orderId: String,
paymentMethod:
{
paymentType: String,
token: String,
virtualNumber: String,
expYear: String,
expMonth: String,
panLastFour: String
},
threeDSecure:
{
dataType: String,
mpiToken: String
}
},
applePayInfo:
{
orderId: String,
threeDSecure:
{
dataType: String,
securityLevelInd: String,
cavv: String,
ucaf: String
}
}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
success: False,
giftCardId: 0,
code: String,
codeLast4: String,
status: String,
expiresAt: 0001-01-01,
paymentId: String,
statusCode: 0,
message: String
}