TicketUserServices

<back to all web services

PaymentCardsRequest

Requires Authentication
Requires any of the roles:Admin, TeamAdmin, MobileAppRequires the permission:ReadData
The following routes are available for this service:
POST/paymentCardsGet All Credit, Debit and KSI cards for this phone
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BorgunSavedCards:
    id: Optional[int] = None
    creation_date: Optional[datetime.datetime] = None
    last_token_date: Optional[datetime.datetime] = None
    is_debit: Optional[bool] = None
    phone_verification_number: Optional[str] = None
    device_id: Optional[str] = None
    virtual_card_number: Optional[str] = None
    pan_last_four: Optional[str] = None
    exp_year: Optional[str] = None
    exp_month: Optional[str] = None
    token: Optional[str] = None
    card_type: Optional[str] = None
    deleted_by_user: Optional[bool] = None
    deleted_from_origin: Optional[bool] = None
    date_deleted_by_user: Optional[datetime.datetime] = None
    date_deleted_from_origin: Optional[datetime.datetime] = None
    is_deleted: Optional[bool] = None
    date_deleted_by_system: Optional[datetime.datetime] = None
    deleted_by_system: Optional[bool] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class KsiCards:
    id: Optional[int] = None
    creation_date: Optional[datetime.datetime] = None
    phone_full_verification_number: Optional[str] = None
    device_id: Optional[str] = None
    ksi_card_type_id: Optional[str] = None
    ksi_club_id: Optional[str] = None
    holder_name: Optional[str] = None
    can_transfer_to_phone_full_number: Optional[str] = None
    can_transfer_to_n_name: Optional[str] = None
    exp_year: Optional[str] = None
    exp_month: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class OwnerCards:
    id: Optional[int] = None
    owner_id: Optional[int] = None
    owner_card_type_id: Optional[int] = None
    phone_verification_id: Optional[int] = None
    initial_max_tickets: Optional[int] = None
    current_available_tickets: Optional[int] = None
    time_stamp_created_u_t_c: Optional[datetime.datetime] = None
    time_stamp_last_changed_u_t_c: Optional[datetime.datetime] = None
    time_stamp_bought_u_t_c: Optional[datetime.datetime] = None
    time_stamp_ordered_u_t_c: Optional[datetime.datetime] = None
    card_valid_from_u_t_c: Optional[datetime.datetime] = None
    card_valid_to_u_t_c: Optional[datetime.datetime] = None
    has_store_credit: Optional[bool] = None
    card_price: Optional[Decimal] = None
    price_paid: Optional[Decimal] = None
    initial_store_credit: Optional[Decimal] = None
    current_store_credit: Optional[Decimal] = None
    phone_full_verification_number: Optional[str] = None
    holder_id: Optional[str] = None
    holder_name: Optional[str] = None
    holder_email: Optional[str] = None
    card_price_currency: Optional[str] = None
    price_paid_currency: Optional[str] = None
    device_id: Optional[str] = None
    payment_method_id: Optional[str] = None
    payment_reference: Optional[str] = None
    phone_verification_number: Optional[str] = None
    payment_phone_number: Optional[str] = None
    payment_id: Optional[str] = None
    payment_status: Optional[str] = None
    payment_token_id: Optional[str] = None
    max_tickets_per_event: Optional[int] = None
    multiple_payments_id: Optional[str] = None
    image_url: Optional[str] = None
    background_image_url: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class KsiCardTypes:
    ksi_card_type_id: Optional[str] = None
    ksi_card_type_name: Optional[str] = None
    ksi_card_type_description: Optional[str] = None
    card_type_owner: Optional[str] = None
    max_tickets_per_event: Optional[int] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class KsiCardInfo:
    card: Optional[KsiCards] = None
    card_type: Optional[KsiCardTypes] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class OwnerCardType:
    id: Optional[int] = None
    owner_id: Optional[int] = None
    max_tickets: Optional[int] = None
    time_stamp_created_u_t_c: Optional[datetime.datetime] = None
    time_stamp_last_changed_u_t_c: Optional[datetime.datetime] = None
    sale_start_date_u_t_c: Optional[datetime.datetime] = None
    sale_end_date_u_t_c: Optional[datetime.datetime] = None
    valid_start_date_for_new_cards_u_t_c: Optional[datetime.datetime] = None
    valid_end_date_for_new_cards_u_t_c: Optional[datetime.datetime] = None
    has_store_credit: Optional[bool] = None
    is_active: Optional[bool] = None
    only_for_team_use: Optional[bool] = None
    price: Optional[Decimal] = None
    initial_store_credit: Optional[Decimal] = None
    description: Optional[str] = None
    name: Optional[str] = None
    image_url: Optional[str] = None
    currency: Optional[str] = None
    max_tickets_per_event: Optional[int] = None
    background_image_url: Optional[str] = None
    valid_for_connected_owners: Optional[bool] = None
    super_owner_id: Optional[int] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class OwnerCardInfo:
    card: Optional[OwnerCards] = None
    card_type: Optional[OwnerCardType] = None
    owner_name: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PaymentCardsResult:
    cards: Optional[List[BorgunSavedCards]] = None
    ksi_cards: Optional[List[KsiCards]] = None
    owner_cards: Optional[List[OwnerCards]] = None
    ksi_card_info_list: Optional[List[KsiCardInfo]] = None
    owner_card_info_list: Optional[List[OwnerCardInfo]] = None
    status_code: Optional[int] = None
    message: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class RequestSignature:
    system_id: Optional[str] = None
    system_secret: Optional[str] = None
    signature: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PaymentCardsRequest:
    phone_verification_number: Optional[str] = None
    device_id: Optional[str] = None
    only_for_event_id: Optional[int] = None
    check_for_expiry: Optional[bool] = None
    exclude_hidden_cards: Optional[bool] = None
    request_unix_u_t_c_time_stamp: Optional[int] = None
    include_deleted_cards: Optional[bool] = None
    signature: Optional[RequestSignature] = None

Python PaymentCardsRequest DTOs

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

HTTP + XML

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

POST /paymentCards HTTP/1.1 
Host: stubbur-autoupdates-live.smartnewapis.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<PaymentCardsRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
  <CheckForExpiry>false</CheckForExpiry>
  <DeviceId>String</DeviceId>
  <ExcludeHiddenCards>false</ExcludeHiddenCards>
  <IncludeDeletedCards>false</IncludeDeletedCards>
  <OnlyForEventId>0</OnlyForEventId>
  <PhoneVerificationNumber>String</PhoneVerificationNumber>
  <RequestUnixUTCTimeStamp>0</RequestUnixUTCTimeStamp>
  <Signature>
    <Signature>String</Signature>
    <SystemId>String</SystemId>
    <SystemSecret>String</SystemSecret>
  </Signature>
</PaymentCardsRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<PaymentCardsResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
  <Cards xmlns:d2p1="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel.Types">
    <d2p1:BorgunSavedCards>
      <d2p1:CardType>String</d2p1:CardType>
      <d2p1:CreationDate>0001-01-01T00:00:00</d2p1:CreationDate>
      <d2p1:DateDeletedBySystem>0001-01-01T00:00:00</d2p1:DateDeletedBySystem>
      <d2p1:DateDeletedByUser>0001-01-01T00:00:00</d2p1:DateDeletedByUser>
      <d2p1:DateDeletedFromOrigin>0001-01-01T00:00:00</d2p1:DateDeletedFromOrigin>
      <d2p1:DeletedBySystem>false</d2p1:DeletedBySystem>
      <d2p1:DeletedByUser>false</d2p1:DeletedByUser>
      <d2p1:DeletedFromOrigin>false</d2p1:DeletedFromOrigin>
      <d2p1:DeviceId>String</d2p1:DeviceId>
      <d2p1:ExpMonth>String</d2p1:ExpMonth>
      <d2p1:ExpYear>String</d2p1:ExpYear>
      <d2p1:Id>0</d2p1:Id>
      <d2p1:IsDeleted>false</d2p1:IsDeleted>
      <d2p1:LastTokenDate>0001-01-01T00:00:00</d2p1:LastTokenDate>
      <d2p1:PanLastFour>String</d2p1:PanLastFour>
      <d2p1:PhoneVerificationNumber>String</d2p1:PhoneVerificationNumber>
      <d2p1:Token>String</d2p1:Token>
      <d2p1:VirtualCardNumber>String</d2p1:VirtualCardNumber>
      <d2p1:isDebit>false</d2p1:isDebit>
    </d2p1:BorgunSavedCards>
  </Cards>
  <KsiCardInfoList>
    <KsiCardInfo>
      <Card xmlns:d4p1="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel.Types">
        <d4p1:CanTransferToNName>String</d4p1:CanTransferToNName>
        <d4p1:CanTransferToPhoneFullNumber>String</d4p1:CanTransferToPhoneFullNumber>
        <d4p1:CreationDate>0001-01-01T00:00:00</d4p1:CreationDate>
        <d4p1:DeviceId>String</d4p1:DeviceId>
        <d4p1:ExpMonth>String</d4p1:ExpMonth>
        <d4p1:ExpYear>String</d4p1:ExpYear>
        <d4p1:HolderName>String</d4p1:HolderName>
        <d4p1:Id>0</d4p1:Id>
        <d4p1:KsiCardTypeId>String</d4p1:KsiCardTypeId>
        <d4p1:KsiClubId>String</d4p1:KsiClubId>
        <d4p1:PhoneFullVerificationNumber>String</d4p1:PhoneFullVerificationNumber>
      </Card>
      <CardType xmlns:d4p1="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel.Types">
        <d4p1:CardTypeOwner>String</d4p1:CardTypeOwner>
        <d4p1:KsiCardTypeDescription>String</d4p1:KsiCardTypeDescription>
        <d4p1:KsiCardTypeId>String</d4p1:KsiCardTypeId>
        <d4p1:KsiCardTypeName>String</d4p1:KsiCardTypeName>
        <d4p1:MaxTicketsPerEvent>0</d4p1:MaxTicketsPerEvent>
      </CardType>
    </KsiCardInfo>
  </KsiCardInfoList>
  <KsiCards xmlns:d2p1="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel.Types">
    <d2p1:KsiCards>
      <d2p1:CanTransferToNName>String</d2p1:CanTransferToNName>
      <d2p1:CanTransferToPhoneFullNumber>String</d2p1:CanTransferToPhoneFullNumber>
      <d2p1:CreationDate>0001-01-01T00:00:00</d2p1:CreationDate>
      <d2p1:DeviceId>String</d2p1:DeviceId>
      <d2p1:ExpMonth>String</d2p1:ExpMonth>
      <d2p1:ExpYear>String</d2p1:ExpYear>
      <d2p1:HolderName>String</d2p1:HolderName>
      <d2p1:Id>0</d2p1:Id>
      <d2p1:KsiCardTypeId>String</d2p1:KsiCardTypeId>
      <d2p1:KsiClubId>String</d2p1:KsiClubId>
      <d2p1:PhoneFullVerificationNumber>String</d2p1:PhoneFullVerificationNumber>
    </d2p1:KsiCards>
  </KsiCards>
  <Message>String</Message>
  <OwnerCardInfoList>
    <OwnerCardInfo>
      <Card xmlns:d4p1="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel.Types">
        <d4p1:BackgroundImageUrl>String</d4p1:BackgroundImageUrl>
        <d4p1:CardPrice>0</d4p1:CardPrice>
        <d4p1:CardPriceCurrency>String</d4p1:CardPriceCurrency>
        <d4p1:CardValidFromUTC>0001-01-01T00:00:00</d4p1:CardValidFromUTC>
        <d4p1:CardValidToUTC>0001-01-01T00:00:00</d4p1:CardValidToUTC>
        <d4p1:CurrentAvailableTickets>0</d4p1:CurrentAvailableTickets>
        <d4p1:CurrentStoreCredit>0</d4p1:CurrentStoreCredit>
        <d4p1:DeviceId>String</d4p1:DeviceId>
        <d4p1:HasStoreCredit>false</d4p1:HasStoreCredit>
        <d4p1:HolderEmail>String</d4p1:HolderEmail>
        <d4p1:HolderId>String</d4p1:HolderId>
        <d4p1:HolderName>String</d4p1:HolderName>
        <d4p1:ID>0</d4p1:ID>
        <d4p1:ImageUrl>String</d4p1:ImageUrl>
        <d4p1:InitialMaxTickets>0</d4p1:InitialMaxTickets>
        <d4p1:InitialStoreCredit>0</d4p1:InitialStoreCredit>
        <d4p1:MaxTicketsPerEvent>0</d4p1:MaxTicketsPerEvent>
        <d4p1:MultiplePaymentsId>String</d4p1:MultiplePaymentsId>
        <d4p1:OwnerCardTypeId>0</d4p1:OwnerCardTypeId>
        <d4p1:OwnerId>0</d4p1:OwnerId>
        <d4p1:PaymentId>String</d4p1:PaymentId>
        <d4p1:PaymentMethodId>String</d4p1:PaymentMethodId>
        <d4p1:PaymentPhoneNumber>String</d4p1:PaymentPhoneNumber>
        <d4p1:PaymentReference>String</d4p1:PaymentReference>
        <d4p1:PaymentStatus>String</d4p1:PaymentStatus>
        <d4p1:PaymentTokenId>String</d4p1:PaymentTokenId>
        <d4p1:PhoneFullVerificationNumber>String</d4p1:PhoneFullVerificationNumber>
        <d4p1:PhoneVerificationId>0</d4p1:PhoneVerificationId>
        <d4p1:PhoneVerificationNumber>String</d4p1:PhoneVerificationNumber>
        <d4p1:PricePaid>0</d4p1:PricePaid>
        <d4p1:PricePaidCurrency>String</d4p1:PricePaidCurrency>
        <d4p1:TimeStampBoughtUTC>0001-01-01T00:00:00</d4p1:TimeStampBoughtUTC>
        <d4p1:TimeStampCreatedUTC>0001-01-01T00:00:00</d4p1:TimeStampCreatedUTC>
        <d4p1:TimeStampLastChangedUTC>0001-01-01T00:00:00</d4p1:TimeStampLastChangedUTC>
        <d4p1:TimeStampOrderedUTC>0001-01-01T00:00:00</d4p1:TimeStampOrderedUTC>
      </Card>
      <CardType xmlns:d4p1="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel.Types">
        <d4p1:BackgroundImageUrl>String</d4p1:BackgroundImageUrl>
        <d4p1:Currency>String</d4p1:Currency>
        <d4p1:Description>String</d4p1:Description>
        <d4p1:HasStoreCredit>false</d4p1:HasStoreCredit>
        <d4p1:ID>0</d4p1:ID>
        <d4p1:ImageUrl>String</d4p1:ImageUrl>
        <d4p1:InitialStoreCredit>0</d4p1:InitialStoreCredit>
        <d4p1:IsActive>false</d4p1:IsActive>
        <d4p1:MaxTickets>0</d4p1:MaxTickets>
        <d4p1:MaxTicketsPerEvent>0</d4p1:MaxTicketsPerEvent>
        <d4p1:Name>String</d4p1:Name>
        <d4p1:OnlyForTeamUse>false</d4p1:OnlyForTeamUse>
        <d4p1:OwnerId>0</d4p1:OwnerId>
        <d4p1:Price>0</d4p1:Price>
        <d4p1:SaleEndDateUTC>0001-01-01T00:00:00</d4p1:SaleEndDateUTC>
        <d4p1:SaleStartDateUTC>0001-01-01T00:00:00</d4p1:SaleStartDateUTC>
        <d4p1:SuperOwnerId>0</d4p1:SuperOwnerId>
        <d4p1:TimeStampCreatedUTC>0001-01-01T00:00:00</d4p1:TimeStampCreatedUTC>
        <d4p1:TimeStampLastChangedUTC>0001-01-01T00:00:00</d4p1:TimeStampLastChangedUTC>
        <d4p1:ValidEndDateForNewCardsUTC>0001-01-01T00:00:00</d4p1:ValidEndDateForNewCardsUTC>
        <d4p1:ValidForConnectedOwners>false</d4p1:ValidForConnectedOwners>
        <d4p1:ValidStartDateForNewCardsUTC>0001-01-01T00:00:00</d4p1:ValidStartDateForNewCardsUTC>
      </CardType>
      <OwnerName>String</OwnerName>
    </OwnerCardInfo>
  </OwnerCardInfoList>
  <OwnerCards xmlns:d2p1="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel.Types">
    <d2p1:OwnerCards>
      <d2p1:BackgroundImageUrl>String</d2p1:BackgroundImageUrl>
      <d2p1:CardPrice>0</d2p1:CardPrice>
      <d2p1:CardPriceCurrency>String</d2p1:CardPriceCurrency>
      <d2p1:CardValidFromUTC>0001-01-01T00:00:00</d2p1:CardValidFromUTC>
      <d2p1:CardValidToUTC>0001-01-01T00:00:00</d2p1:CardValidToUTC>
      <d2p1:CurrentAvailableTickets>0</d2p1:CurrentAvailableTickets>
      <d2p1:CurrentStoreCredit>0</d2p1:CurrentStoreCredit>
      <d2p1:DeviceId>String</d2p1:DeviceId>
      <d2p1:HasStoreCredit>false</d2p1:HasStoreCredit>
      <d2p1:HolderEmail>String</d2p1:HolderEmail>
      <d2p1:HolderId>String</d2p1:HolderId>
      <d2p1:HolderName>String</d2p1:HolderName>
      <d2p1:ID>0</d2p1:ID>
      <d2p1:ImageUrl>String</d2p1:ImageUrl>
      <d2p1:InitialMaxTickets>0</d2p1:InitialMaxTickets>
      <d2p1:InitialStoreCredit>0</d2p1:InitialStoreCredit>
      <d2p1:MaxTicketsPerEvent>0</d2p1:MaxTicketsPerEvent>
      <d2p1:MultiplePaymentsId>String</d2p1:MultiplePaymentsId>
      <d2p1:OwnerCardTypeId>0</d2p1:OwnerCardTypeId>
      <d2p1:OwnerId>0</d2p1:OwnerId>
      <d2p1:PaymentId>String</d2p1:PaymentId>
      <d2p1:PaymentMethodId>String</d2p1:PaymentMethodId>
      <d2p1:PaymentPhoneNumber>String</d2p1:PaymentPhoneNumber>
      <d2p1:PaymentReference>String</d2p1:PaymentReference>
      <d2p1:PaymentStatus>String</d2p1:PaymentStatus>
      <d2p1:PaymentTokenId>String</d2p1:PaymentTokenId>
      <d2p1:PhoneFullVerificationNumber>String</d2p1:PhoneFullVerificationNumber>
      <d2p1:PhoneVerificationId>0</d2p1:PhoneVerificationId>
      <d2p1:PhoneVerificationNumber>String</d2p1:PhoneVerificationNumber>
      <d2p1:PricePaid>0</d2p1:PricePaid>
      <d2p1:PricePaidCurrency>String</d2p1:PricePaidCurrency>
      <d2p1:TimeStampBoughtUTC>0001-01-01T00:00:00</d2p1:TimeStampBoughtUTC>
      <d2p1:TimeStampCreatedUTC>0001-01-01T00:00:00</d2p1:TimeStampCreatedUTC>
      <d2p1:TimeStampLastChangedUTC>0001-01-01T00:00:00</d2p1:TimeStampLastChangedUTC>
      <d2p1:TimeStampOrderedUTC>0001-01-01T00:00:00</d2p1:TimeStampOrderedUTC>
    </d2p1:OwnerCards>
  </OwnerCards>
  <StatusCode>0</StatusCode>
</PaymentCardsResult>