TicketUserServices

<back to all web services

OwnerCardsUpgradeRequest

Requires Authentication
Requires any of the roles:Admin, TeamAdminRequires the permission:ReadData
The following routes are available for this service:
POST/OrderOwnerCards/upgradeCharge the delta, issue the target card (PricePaid = delta), revoke the source card, re-link future tickets — one transaction, idempotent

export class GeneralOrderResponse
{
    public statusCode?: number;
    public message?: string;
    public success?: boolean;
    public paymentIsPending?: boolean;
    public orderTokenId?: string;

    public constructor(init?: Partial<GeneralOrderResponse>) { (Object as any).assign(this, init); }
}

export class OwnerCards
{
    public id?: number;
    public ownerId?: number;
    public ownerCardTypeId?: number;
    public phoneVerificationId?: number;
    public initialMaxTickets?: number;
    public currentAvailableTickets?: number;
    public timeStampCreatedUTC?: string;
    public timeStampLastChangedUTC?: string;
    public timeStampBoughtUTC?: string;
    public timeStampOrderedUTC?: string;
    public cardValidFromUTC?: string;
    public cardValidToUTC?: string;
    public hasStoreCredit?: boolean;
    public cardPrice?: number;
    public pricePaid?: number;
    public initialStoreCredit?: number;
    public currentStoreCredit?: number;
    public phoneFullVerificationNumber?: string;
    public holderId?: string;
    public holderName?: string;
    public holderEmail?: string;
    public cardPriceCurrency?: string;
    public pricePaidCurrency?: string;
    public deviceId?: string;
    public paymentMethodId?: string;
    public paymentReference?: string;
    public phoneVerificationNumber?: string;
    public paymentPhoneNumber?: string;
    public paymentId?: string;
    public paymentStatus?: string;
    public paymentTokenId?: string;
    public maxTicketsPerEvent?: number;
    public multiplePaymentsId?: string;
    public imageUrl?: string;
    public backgroundImageUrl?: string;
    public orderReference?: string;
    public upgradedFromOwnerCardId?: number;

    public constructor(init?: Partial<OwnerCards>) { (Object as any).assign(this, init); }
}

export class OwnerCardsOrderResult extends GeneralOrderResponse
{
    public cards?: OwnerCards[];
    public orderReference?: string;
    public isSubscription?: boolean;
    public monthlyPrice?: number;
    public transactionFee?: number;
    public months?: number;
    public paymentTokenId?: string;
    public subscriptionTokenMissing?: boolean;
    public priceTotal?: number;
    public discountAmount?: number;
    public giftCardAmount?: number;
    public donationAmount?: number;
    public chargedAmount?: number;
    public reason?: string;

    public constructor(init?: Partial<OwnerCardsOrderResult>) { super(init); (Object as any).assign(this, init); }
}

export class OwnerCardsUpgradeResult extends OwnerCardsOrderResult
{
    public sourceOwnerCardId?: number;
    public sourceOwnerCardTypeId?: number;
    public sourceTypeName?: string;
    public newOwnerCardId?: number;
    public targetOwnerCardTypeId?: number;
    public targetTypeName?: string;
    public relinkedTickets?: number;
    public paymentReference?: string;
    public refundPending?: boolean;

    public constructor(init?: Partial<OwnerCardsUpgradeResult>) { super(init); (Object as any).assign(this, init); }
}

export class Borgun3DFinalPaymentMethodInfo
{
    public paymentType?: string;
    public token?: string;
    public virtualNumber?: string;
    public expYear?: string;
    public expMonth?: string;
    public panLastFour?: string;

    public constructor(init?: Partial<Borgun3DFinalPaymentMethodInfo>) { (Object as any).assign(this, init); }
}

export class Borgun3DFinal3DSecureInfo
{
    public dataType?: string;
    public mpiToken?: string;

    public constructor(init?: Partial<Borgun3DFinal3DSecureInfo>) { (Object as any).assign(this, init); }
}

export class Borgun3DFinalRequest
{
    public transactionType?: string;
    public amount?: number;
    public currency?: string;
    public transactionDate?: string;
    public orderId?: string;
    public paymentMethod?: Borgun3DFinalPaymentMethodInfo;
    public threeDSecure?: Borgun3DFinal3DSecureInfo;

    public constructor(init?: Partial<Borgun3DFinalRequest>) { (Object as any).assign(this, init); }
}

export class OrderTender
{
    public kind?: string;
    public code?: string;
    public amountMinor?: number;
    public idempotencyKey?: string;
    public holdId?: number;
    public appliedMinor?: number;

    public constructor(init?: Partial<OrderTender>) { (Object as any).assign(this, init); }
}

export class OwnerCardsUpgradeRequest
{
    public buyerPhone?: string;
    public sourceOwnerCardId?: number;
    public targetOwnerCardTypeId?: number;
    public idempotencyKey?: string;
    public paymentMethodId?: string;
    public borgun3DFinalInfo?: Borgun3DFinalRequest;
    public tenders?: OrderTender[];
    public holderName?: string;
    public holderEmail?: string;
    public deviceId?: string;
    public returnCards?: boolean;

    public constructor(init?: Partial<OwnerCardsUpgradeRequest>) { (Object as any).assign(this, init); }
}

TypeScript OwnerCardsUpgradeRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /OrderOwnerCards/upgrade HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"buyerPhone":"String","sourceOwnerCardId":0,"targetOwnerCardTypeId":0,"idempotencyKey":"String","paymentMethodId":"String","borgun3DFinalInfo":{"transactionType":"String","amount":0,"currency":"String","transactionDate":"0001-01-01T00:00:00.0000000","orderId":"String","paymentMethod":{"paymentType":"String","token":"String","virtualNumber":"String","expYear":"String","expMonth":"String","panLastFour":"String"},"threeDSecure":{"dataType":"String","mpiToken":"String"}},"tenders":[{"kind":"String","code":"String","amountMinor":0,"idempotencyKey":"String","holdId":0,"appliedMinor":0}],"holderName":"String","holderEmail":"String","deviceId":"String","returnCards":false}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"sourceOwnerCardId":0,"sourceOwnerCardTypeId":0,"sourceTypeName":"String","newOwnerCardId":0,"targetOwnerCardTypeId":0,"targetTypeName":"String","relinkedTickets":0,"paymentReference":"String","refundPending":false,"cards":[{"id":0,"ownerId":0,"ownerCardTypeId":0,"phoneVerificationId":0,"initialMaxTickets":0,"currentAvailableTickets":0,"timeStampCreatedUTC":"0001-01-01T00:00:00.0000000","timeStampLastChangedUTC":"0001-01-01T00:00:00.0000000","timeStampBoughtUTC":"0001-01-01T00:00:00.0000000","timeStampOrderedUTC":"0001-01-01T00:00:00.0000000","cardValidFromUTC":"0001-01-01T00:00:00.0000000","cardValidToUTC":"0001-01-01T00:00:00.0000000","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","orderReference":"String","upgradedFromOwnerCardId":0}],"orderReference":"String","isSubscription":false,"monthlyPrice":0,"transactionFee":0,"months":0,"paymentTokenId":"String","subscriptionTokenMissing":false,"priceTotal":0,"discountAmount":0,"giftCardAmount":0,"donationAmount":0,"chargedAmount":0,"reason":"String","statusCode":0,"message":"String","success":false,"paymentIsPending":false,"orderTokenId":"String"}