Displaying Credit Card Offers
Offer Card Components and Display Logic
This section explains how Engine uses fields returned by the Credit Cards API to display offer card components in both unexpanded and expanded views. Use the logic outlined below as reference for your UI implementation.
Offer Card Views
Unexpanded View:
Display the first 3 bullet points from the details field with a “See Details” link.
Display the first 3 high-level stats based on priority.
Expanded View:
Display all bullet points and stats returned from the API.
Offer Card Components
1. Credit Card Image
Use the
cardImageUrlSourcefield to retrieve the card image.
2. Continue Button
Use the
urlfield to determine the destination URL for the Continue Button.All clicks should open a new tab in the browser.
3. Rates & Terms Link
Use the
ratesUrlfield to determine the destination for the Rates & Terms link.All clicks should open a new tab in the browser.
4. Badges
Use the
badgesfield to display badges on top of the cardName for offers withisITA: true
5. Card Name
Use the
cardNamefield to display the card name exactly as provided.
6. See Details Drawer
Add a “See Details” drawer if
details.details(i.e. Card Stats) contains more than 3 items.If
details.detailsdoes not contain more than 3 items, the “See Details” option should not be displayed.
Card Stats and Details Display Logic
Annual Fee
Always display the Annual Fee as the first stat.
Logic:
If no annual fee is provided, display "See Terms" text.
If both
minAnnualFeeandmaxAnnualFeeare equal, display the specific fee (e.g., "$10").If only
minAnnualFeeormaxAnnualFeeis provided, display that specific value.If
minAnnualFeeandmaxAnnualFeeare different, display a range (e.g., "$5 - $10").If
annualIntroFeeis not null, the text should be displayed in a tooltip.Annual Intro Fee Impact on Annual Fee Logic
If an
annualIntroFeeis present and not null, thenannualIntroFeeTerm(always in years) should be listed ahead of theannualFeevalues. Example: “$10 for 2 years, then $20."If both
minAnnualFeeandmaxAnnualFeeare provided (for after the introductory period), it should display a range, for example "$10 for 2 years, then $10 - $20."
Recommended Credit
If no credit ratings are provided (
recommendedCreditRatings), it should display "See Terms"If all five credit ratings (limited, poor, fair, good, excellent) are available, it should display "Any"
If the subset of the five credit ratings are available, display the ones that are returned by API in descending order
The tooltip for recommended credit should display value from recommendedCreditRatingsDisclaimer
Card Stats Priority
Display the top 3 stats in the following hierarchy:
Annual Fee (always displayed)
Rewards
Welcome Bonus
APR (always displayed)
Minimum Deposit
Transfer Fee
Logic for more than 3 stats:
Display the top 3 on the card
Remaining stats appear in the “See Details” section
Rewards
If
rewardsDescriptionis null, do not display this statIf
rewardsDescriptionis not null, display the stat with provided textIf
rewardsDisclaimeris not null, the text should be displayed in a tooltip
Welcome Bonus
If
introOfferAmount,introOfferText, andintroOfferTypeare all null, do not display the welcome bonus statIf
introOfferTextis not null, displayintroOfferTextonly in the statIf
introOfferTextis null:Concatenate
introOfferAmountandintroOfferTypeinto a single stringIf
introOfferTypeis "miles" or "points", add commas tointroOfferAmount(e.g., "10,000 miles" or "10,000 points")If
introOfferTypeis "statement_credit", add a $ sign tointroOfferAmount, add commas where needed, and append "statement credit" (e.g., "$1,000 statement credit")
If
introOfferDisclaimeris not null, the text should be displayed in a tooltip
APR
Always display APR
Logic:
If
purchaseAprTextis provided, display itIf
purchaseAprTextis null:If no APR values are provided, display "See Terms"
If both
minPurchaseAprandmaxPurchaseAprare provided and equal, display themaxPurchaseAprIf
minPurchaseAprandmaxPurchaseAprdiffer, display the range (e.g., "10.99% - 24.99%")
APR Label:
If no specific
aprTypeis provided, label the field as "APR"If
aprTypeis "variable," label as "Variable APR"If
aprTypeis "fixed," label as "Fixed APR"If
purchaseAprDisclaimeris not null, the text should be displayed in a tooltip
Minimum Deposit
If
minDepositAmountis null, do not display this stat.Otherwise, display the value in dollars (e.g., "$500")
If
minDepositDisclaimeris not null, the text should be displayed in a tooltip
Balance Transfer APR
If all fields (
maxBalanceTransferApr,minBalanceTransferApr, andbalanceTransferAprText) are null, do not display this statIf
balanceTransferAprTextis not null, display the textIf
balanceTransferAprTextis null:If both
minBalanceTransferAprandmaxBalanceTransferAprare equal, display the single valueIf only
minBalanceTransferAprormaxBalanceTransferApris provided, display that valueIf
minBalanceTransferAprandmaxBalanceTransferAprare different, display the range (e.g., "2% - 10%")
If
balanceTransferFeeDisclaimeris not null, the text should be displayed in a tooltip
Last updated
Was this helpful?