Queries

InitialSearchQuery

class q2_cores.FiservCleartouch.queries.initial_search_query.InitialSearchQuery(logger, config, req_dict)[source]

Bases: BaseQuery

Handles the construction of demographic core requests and mock responses for testing for FiservCleartouch core.

Parameters:
  • logger (Logger) – reference to calling request’s logger (self.logger in your extension)

  • req_dict (dict) – Required data dictionary for queries. Dictionary will contain requested information, using the SSN as the search value.

build()[source]

Constructs and returns the core request from a template and provided parameters.

Return type:

str

mock_response(response_type=None)[source]

Constructs and returns a mock core response used for testing queries and mappers. By default, mock response will return a successful cif core response. However, this can be changed to handle various responses via the response_type param.

The response_type refers to the <expected_response>_mock_response.xml file located in q2_core.FiservCommunicatorSignature.mock_responses directory. response_type defaults to initial_search if not provided.

Return type:

str

DemographicInfoQuery

enum q2_cores.FiservCleartouch.queries.demographic_info_query.SearchMethod(value)[source]

Bases: Enum

Class designed to determine the search method to use when retrieving demographic information from the core

Valid values are as follows:

DEMOGRAPHIC_INFO = <SearchMethod.DEMOGRAPHIC_INFO: 'DEMOGRAPHIC_INFO'>
ACCOUNT_RELATION = <SearchMethod.ACCOUNT_RELATION: 'ACCOUNT_RELATION'>
class q2_cores.FiservCleartouch.queries.demographic_info_query.DemographicInfoQuery(logger, request_dict, search_method=SearchMethod.DEMOGRAPHIC_INFO, configs=None, online_user=None)[source]

Bases: BaseQuery

Base query for Fiserv Cleartouch

Object which builds the query to be send to the Core. If server is running debug mode, will return mocked response instead of calling the core.

Parameters:
  • logger (Logger) – Reference to calling request’s logger (self.logger in your extension)

  • mock_failure – If server is running in debug mode, will be used while mocking the response

build()[source]

Creates the query

Return type:

str

mock_response(response_type=None)[source]

Constructs and returns a mock core response used for testing queries and mappers. By default, mock response will return a successful cif core response. However, this can be changed to handle various responses via the response_type param.

The response_type refers to the <expected_response>_mock_response.xml file located in q2_core.FiservCleartouch.mock_responses directory. response_type defaults to demographic_info if not provided.

Return type:

str

MockResponses

Demographic Info

<GetCustomerInformationOperation>
    <fiHeader Version="">
        <Security>
            <AuthenticationMaterial/>
            <PrincipalID/>
            <TrustRelationship/>
            <MessageDigest/>
        </Security>
    </fiHeader>
    <Response TypeOfResponse="GetCustomerInformationRs" RequestID="b5c92381-20a3-4222-aa77-5d352c6830bc" Version="2.1">
        <Status>
            <StatusCode>0</StatusCode>
            <ServerStatusCode/>
            <Severity/>
            <StatusDesc>SUCCESS</StatusDesc>
        </Status>
        <CustomerCensus>
            <CensusBlockGroup>0</CensusBlockGroup>
            <CensusTract>0</CensusTract>
            <GeographicCode>0</GeographicCode>
            <MSACode>0</MSACode>
        </CustomerCensus>
        <CustomerGeneralInformation>
            <AccessKey>2001263247</AccessKey>
            <BirthDate>2010-07-26</BirthDate>
            <BranchNumber>7</BranchNumber>
            <DateOpened>2020-03-31</DateOpened>
            <EmployeeIndicator>false</EmployeeIndicator>
            <Keyword>BASEBALL</Keyword>
            <LastModifiedDate>2020-04-09</LastModifiedDate>
            <OfficerName>JANE DOE</OfficerName>
            <Address>
                <Address1>10124 Lake Creek Parkway</Address1>
                <Address2>4th flr</Address2>
                <AddressAttentionLine>Q2 TEST ACCOUNT</AddressAttentionLine>
                <AddressId>1</AddressId>
                <City>Austin</City>
                <Country>US</Country>
                <CountyCode>0</CountyCode>
                <OverrideAddressStandardization>false</OverrideAddressStandardization>
                <PostalCode>78729</PostalCode>
                <State>TX</State>
                <AddressIndicator>PrimaryCustomer</AddressIndicator>
                <AddressType>Primary</AddressType>
                <MailingLabel>
                    <Line1>Q2 TEST ACCOUNT</Line1>
                    <Line2>421 ABC WAY S</Line2>
                    <Line3>OLYMPIA WA xxx-xx-1028</Line3>
                </MailingLabel>
                <SpecialHandling>None</SpecialHandling>
            </Address>
            <Name>
                <CustomerType>Personal</CustomerType>
                <PersonalName>
                    <FirstName>Q2First</FirstName>
                    <LastName>Q2Last</LastName>
                    <MiddleName>Q2Middle</MiddleName>
                    <NameSuffix></NameSuffix>
                    <PreferredName></PreferredName>
                    <TitlePrefix></TitlePrefix>
                </PersonalName>
            </Name>
            <TaxExemptStatus>IsNotTaxExempt</TaxExemptStatus>
            <TINId>
                <TaxId>123456789</TaxId>
                <TINType>SSN</TINType>
            </TINId>
            <RegulationOCode>NotUsed</RegulationOCode>
        </CustomerGeneralInformation>
        <ClientDefinedFields>
            <ClientDefinedAmounts>
                <Descriptions>
                    <CustomerAmount1Desc></CustomerAmount1Desc>
                    <CustomerAmount2Desc></CustomerAmount2Desc>
                    <CustomerAmount3Desc></CustomerAmount3Desc>
                    <CustomerAmount4Desc></CustomerAmount4Desc>
                </Descriptions>
                <Amounts>
                    <CustomerAmount1>0</CustomerAmount1>
                    <CustomerAmount2>0</CustomerAmount2>
                    <CustomerAmount3>0</CustomerAmount3>
                    <CustomerAmount4>0</CustomerAmount4>
                </Amounts>
            </ClientDefinedAmounts>
            <ClientDefinedCodes>
                <Codes>
                    <CustomerCode1></CustomerCode1>
                    <CustomerCode2></CustomerCode2>
                    <CustomerCode3></CustomerCode3>
                    <CustomerCode4></CustomerCode4>
                </Codes>
                <Descriptions>
                    <CustomerCode1Desc></CustomerCode1Desc>
                    <CustomerCode2Desc></CustomerCode2Desc>
                    <CustomerCode3Desc></CustomerCode3Desc>
                    <CustomerCode4Desc></CustomerCode4Desc>
                </Descriptions>
            </ClientDefinedCodes>
            <ClientDefinedFlags>
                <Descriptions>
                    <CustomerFlag1Desc></CustomerFlag1Desc>
                    <CustomerFlag2Desc></CustomerFlag2Desc>
                    <CustomerFlag3Desc></CustomerFlag3Desc>
                    <CustomerFlag4Desc></CustomerFlag4Desc>
                </Descriptions>
                <Flags>
                    <CustomerFlag1>false</CustomerFlag1>
                    <CustomerFlag2>false</CustomerFlag2>
                    <CustomerFlag3>false</CustomerFlag3>
                    <CustomerFlag4>false</CustomerFlag4>
                </Flags>
            </ClientDefinedFlags>
            <ClientDefinedNumbers>
                <Descriptions>
                    <CustomerNumber1Desc></CustomerNumber1Desc>
                    <CustomerNumber2Desc></CustomerNumber2Desc>
                    <CustomerNumber3Desc></CustomerNumber3Desc>
                    <CustomerNumber4Desc></CustomerNumber4Desc>
                </Descriptions>
                <Numbers>
                    <CustomerNumber1>0</CustomerNumber1>
                    <CustomerNumber2>0</CustomerNumber2>
                    <CustomerNumber3>0</CustomerNumber3>
                    <CustomerNumber4>0</CustomerNumber4>
                </Numbers>
            </ClientDefinedNumbers>
            <ClientDefinedDates>
                <Descriptions>
                    <CustomerDate1Desc>TY Card Sent</CustomerDate1Desc>
                    <CustomerDate2Desc></CustomerDate2Desc>
                    <CustomerDate3Desc></CustomerDate3Desc>
                    <CustomerDate4Desc></CustomerDate4Desc>
                </Descriptions>
                <Dates/>
            </ClientDefinedDates>
        </ClientDefinedFields>
        <CustomerIdentificationInfo>
            <Citizenship>US</Citizenship>
            <MaidenName>DISNEY</MaidenName>
            <Gender>Male</Gender>
            <SecondaryIdentification>
                <Country></Country>
                <IdentificationNumber></IdentificationNumber>
                <IdentificationType>BC</IdentificationType>
                <StateProvince></StateProvince>
                <VerifiedDate>2020-03-31</VerifiedDate>
            </SecondaryIdentification>
            <PrimaryIdentification>
                <Country>US</Country>
                <IdentificationNumber></IdentificationNumber>
                <IdentificationType>ME</IdentificationType>
                <StateProvince>WA</StateProvince>
                <VerifiedDate>2020-03-31</VerifiedDate>
            </PrimaryIdentification>
            <MaritalStatus>NotUsed</MaritalStatus>
            <EthnicCode>NotUsed</EthnicCode>
        </CustomerIdentificationInfo>
        <CustomerStatistical>
            <EducationLevel>0</EducationLevel>
            <HouseholdMembers>0</HouseholdMembers>
            <LifeCycleCode>0</LifeCycleCode>
            <ResidenceCode>NotUsed</ResidenceCode>
        </CustomerStatistical>
        <CustomerMiscellaneous>
            <CreditRating>0</CreditRating>
            <MaximumLiabilityAmount>0</MaximumLiabilityAmount>
            <Retention>UseRetentionPolicy</Retention>
        </CustomerMiscellaneous>
        <CustomerContact>
            <LastContactDate>2020-03-31</LastContactDate>
            <AdditionalPhone2>
                <AreaCode>234</AreaCode>
                <ContactPriority>0</ContactPriority>
                <PhoneExtension>0</PhoneExtension>
                <PhoneNumber>5678901</PhoneNumber>
                <PhoneType>BusinessPhone</PhoneType>
            </AdditionalPhone2>
            <AdditionalPhone1>
                <AreaCode>000</AreaCode>
                <ContactPriority>0</ContactPriority>
                <PhoneExtension>0</PhoneExtension>
                <PhoneNumber>0000000</PhoneNumber>
                <PhoneType>AdditionalPhoneNotUsed</PhoneType>
            </AdditionalPhone1>
            <AdditionalPhone3>
                <AreaCode>000</AreaCode>
                <ContactPriority>0</ContactPriority>
                <PhoneExtension>0</PhoneExtension>
                <PhoneNumber>0000000</PhoneNumber>
                <PhoneType>AdditionalPhoneNotUsed</PhoneType>
            </AdditionalPhone3>
            <MainPhone>
                <AreaCode>123</AreaCode>
                <ContactPriority>1</ContactPriority>
                <PhoneExtension></PhoneExtension>
                <PhoneNumber>4567890</PhoneNumber>
                <PhoneType>HomePhone</PhoneType>
            </MainPhone>
            <AdditionalPhone4>
                <AreaCode>000</AreaCode>
                <ContactPriority>0</ContactPriority>
                <PhoneExtension>0</PhoneExtension>
                <PhoneNumber>0000000</PhoneNumber>
                <PhoneType>AdditionalPhoneNotUsed</PhoneType>
            </AdditionalPhone4>
            <Email2>
                <EmailAddress></EmailAddress>
                <EmailContactPriority>0</EmailContactPriority>
                <EmailType>None</EmailType>
            </Email2>
            <Email1>
                <EmailAddress>digitalbanking@olyfed.com</EmailAddress>
                <EmailContactPriority>2</EmailContactPriority>
                <EmailType>Personal</EmailType>
            </Email1>
        </CustomerContact>
        <CustomerMarketing>
            <CommunicationPreference>0</CommunicationPreference>
            <ContactCode></ContactCode>
            <FormerInstitution></FormerInstitution>
            <MarketingMailCode>0</MarketingMailCode>
            <MediaType></MediaType>
            <PrivacyActDate>2020-03-31</PrivacyActDate>
            <ReferralCode></ReferralCode>
            <PrivacyAct>SharingNotAllowed</PrivacyAct>
        </CustomerMarketing>
        <StatusIndicatorList/>
        <CustomerEmployment>
            <EmployeeClassCode></EmployeeClassCode>
            <EmployerName>MINOR</EmployerName>
            <NAICSCode>0</NAICSCode>
            <AnnualIncomeRange>NotAvailable</AnnualIncomeRange>
        </CustomerEmployment>
    </Response>
</GetCustomerInformationOperation>