Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Table of Contents

UX

Updated Payments Flow

Includes:

  • Domain Paid Flow (FIO, Debit/Credit and Coinpayments)

  • Crypto Handle Flow (Free and Multi Purchase)

Latest

https://overflow.io/s/TVDA0MIM/EYVLXRBB

Mobile special handling

https://overflowsketch.iocom/s/G9WS0H80?node=52fd5316

Original Paid Flow For Reference

These flows represent the original flow and are for reference as needed. The new flows above will supersede these based on the addition of the new payment methods.

https://overflow.io/s/Z6B8A8VT

Cart

...

Visual

...

Functionality

...

Free Cart

No Payment Required

...

...

These paths already exists and can persist now for single free crypto handle transactions.

  • Search View

    • Display

      • Single FIO Crypto Handle in Cart

      • Checkout CTA

        • In the case where the user is registering a single free crypto handle, the user will bypass the secondary cart view and proceed directly to the make purchase view with no form of needed payment to complete their transaction.

  • Cart View

    • Display

      • Single FIO Crypto Handle in Cart

      • Complete Transaction CTA

        • In the event that the user closes the purchase view and only a single free handle is in the cart, the user is shown the cart view with with the complete transaction CTA with directs the user the the make purchase view with no form of needed payment to complete their transaction.

...

Paid Cart

Pay with FIO Cart

...

Pay with non-FIO Cart

...

Price Change

...

Display

FIO Addresses and FIO Domains in cart

Show price

...

Show FIO price with 2 decimal precision, e.g. 1.23 FIO

...

ab287b92-d6b1-4a84-8b26-324a561ae643

Free Address and USDC Price Computation

Visual

Functionality

Free FIO Address

  • Every account is entitled to 1 (make this nev var) FIO Address registration for free.

  • If user is not logged, show 1 FIO Address free. If they log-in and already have free address, an error will be presented.

  • Free address count should be tracked server-side

USDC Price Computation

  • USDC equivalent prices are computed as follows:

    • run get_fee for register_fio_domain and/or register_fio_address

    • convert fee using rate of exchange (ROE) feed (same as used by Reg site)

  • The ROE should be updated only every 30 minutes and stored in session to avoid constant variations in price

  • Show USDC price with 2 decimal precision, e.g. 1.23 USDC

FIO Price Display

  • Show FIO price with 2 decimal precision, e.g. 1.23 FIO

Shopping

Product items and descriptors

Action

Cart item

Descriptor

Example

FCH Registration (Free or Paid)

FCH

FIO Crypto Handle Registration

bob@hodl

FIO Crypto Handle Registration

Domain Registration

Domain

FIO Domain Registration - 1 year

FIO Domain Registration - X years

amazon

FIO Domain Registration - 3 years

FCH and Domain Registration

FCH

FIO Crypto Handle and Domain Registration - 1 year

FIO Crypto Handle and Domain Registration - X years

bob@hodl

FIO Crypto Handle and Domain Registration - 1 year

Domain Renewal

Domain

FIO Domain Renewal - 1 year

FIO Domain Renewal - X years

amazon

FIO Domain Renewal - 1 year

Add Bundles

FCH

Add Bundled Transactions

bob@hodl

Add 100 Bundled Transactions

Shopping Selection

  • Price change warning

    • Display if price has changed from previous page

  • Search for more FIO Addresses

    View

    Requirements

    FIO Crypto Handle Selection

    Populated

    Image Added

    User has domains state

    Image AddedImage Added

    Empty state

    Image Added

    Error state

    Image Added

    Nothing available state

    Image Added

    Loader state

    Image Added
    • Collect

      • Username

        • X appears when first character is entered

          • When clicked it clears the content and disappears

    • Validate

      • Username

        • Convert onfocusout

          • Convert to lowercase

        • Validate onfocusout

          • On validation error

            • Display error message

        • Validation rules

    • Compile Master List of available FCHs as follows

      • My Domain FCH (if user owns FIO Domains)

        • Prepend entered username to domains owned by user (alphabetically), example: george@mycustomdomain

          • Stop once 3 available FCHs are found

      • Free (if user eligible - otherwise treat these domains as Premium)

      • Premium - FCHs on Premium domains are always paid, even if user qualifies for free FCH

        • Prepend entered username to Premium Domain starting with highest rank as defined in Defaults - Dashboard Domains - Premium (for Dashboard direct) Partner Profile (for Partners), example: george@safu

          • Stop once 5 available FCHs are found or when no more premium domains exist

      • Username as Custom Domain - FCH + domains being registered in the same transaction

        • Append entered username to Usernames on Custom Domains only for one the highest rank Username as defined in Defaults - Usernames on Custom Domains,

          • Example

            • Usernames on Custom Domains

              • chief

              • hodl

              • defi

            • User entered string: georgew

            • Recommended FCH: chief@georgew

      • Username on Available Domains - FCHs + domains being registered in the same transaction

        • Prepend entered username to domains Available Domains starting with highest rank domain as defined in Defaults - Available Domains owned by user (alphabetically), example: george@someavailabledomain

          • Stop once 5 available FCHs are found

    • Display

      • My Domain FCH

        • Disable for domains which have expired and show warning

        • Show 3

          • If does not exist:

            • Do not display tile

        • Always display view more if user has at least 1 domain

      • Suggested FCH

        • Free (if user eligible)

          • Highest rank Free FCH from Master List above

            • If does not exist:

          • Highest rank Premium FCH from Master List above

            • If doesn’t exist

          • Highest rank Custom FCH from Master List above

            • If doesn’t exist

          • Display Nothing Available State

        • Premium - FCHs on Premium domains are always paid, even if user qualifies for free FCH

          • Highest rank Premium FCH (not already displayed in Suggested) from Master List above

            • If does not exist:

          • Highest rank Custom FCH from Master List above

            • If doesn’t exist

          • Hide Tile

        • Custom - Custom FCHs are FCHs + on domains being registered in the same transaction

          • Highest rank Custom FCH (not already displayed in Suggested) from Master List above

            • If doesn’t exist

          • Hide Tile

      • Additional FCH

        • Show all FCHs from master List not yet shown in Suggested

        • Sort by

          • Rank

          • Type: Free, Premium, Custom

        • Show max 25 items

        • If list empty

          • Hide Additional FIO Crypto Handles section

      • Item price - see Free FIO Address and USDC Price Computation

      • Links

        • Add to Cart link

          • On click

            • Add FCH to cart

            • Replace Add to Cart with Added

    FCH Label Pop-up

    Image Added
    • Display copy

      • Free FCH

        • Title: Free FIO Crypto Handle

        • Body: Please enjoy this free FIO Crypto Handle for life. Limit: one free handle per user.

      • Premium FCH

        • Title: Premium FIO Crypto Handle

        • Body: Premium FIO Crypto Handles are on hand-picked FIO Domains (@domain), which are reserved for users who want to stand out from the crowd.

      • Custom FCH

        • Title: Custom FIO Crypto Handle

        • Body: When you register a Custom FIO Crypto Handle you also get your own FIO Domain (@domain). By default this domain is private, meaning only you can create new handles on it.

      • My Domain

        • Title: My Domain

        • Body: You already own the FIO Domain, now get a FIO Crypto Handle on it.

    FIO Crypto Handle on custom domain

    Default state

    Image Added

    Domain available state

    Image Added

    Domain is public and FCH available state

    Image Added

    Error state

    Image Added

    When accessed from Domain List Page

    Image Added

    • Variants

      • Accessed from FIO Crypto Handle Selection Page

      • Accessed from Domain List Page

        • Custom Ending is a pull-down menu of User Domains with domain which was clicked highlighted and Add Custom Ending menu item, which when clicks reverts to Accessed from FIO Crypto Handle Selection Page variant

    • Collect

      • Username

        • X appears when first character is entered

          • When clicked it clears the content and disappears

        • When accessed from FIO Crypto Handle Selection Page, pre-populate with username

    • Validate

    • Display

    get_table_rows example
    Code Block
    languagejson
    {
    	"code": "fio.address",
    	"scope": "fio.address",
    	"table": "domains",
    	"lower_bound": "0x58725d9194db3d26c4a1ba4b3e27e0ed",
    	"upper_bound": "0x58725d9194db3d26c4a1ba4b3e27e0ed",
    	"key_type": "i128",
    	"index_position": "4",
    	"json": true
    }

    FIO Domain Selection

    Default state

    Image Added

    Not available state

    Image Added

    Invalid domain state

    Image Added

    • Collect

      • Domain

    • Validate

      • Domain

        • Convert onfocusout

          • Convert to lowercase

        • Validate onfocusout

          • On validation error

            • Display error message

        • Validation rules

    • Display

      • Suggested FIO Domains

        • Display direct match

      • Additional FIO Domains

        • Append Defaults - Search Prefix to the searched domain and display if available (max 5)

          • If domain starts with prefix, do not apply that prefix

        • Append Defaults - Search Postfix to the searched domain and display if available (max 5)

          • If domain ends with postfix, do not apply that postfix

        • Sort by Rank

        • Example:

          • Domain entered: pizza

          • List of prefixes:

            • crypto

            • chain

          • List of post fixes

            • 1

            • hodl

          • Additional Domains

            • cryptopizza

            • chainpizza

            • pizza1

            • pizzahodl

      • FIO Domain item and descriptor

      • Price - see Free FIO Address and USDC Price Computation

  • Cart can contain FREE and paid items

  • Total cost

    • Sum of all FIO Addresses

      • Add to Cart link - display when FIO Domain is available

        • On click

          • Add FIO Domain to cart

          • Replace Add to Cart with Added

    Multi-year domains

    Image Added
    • When a domain registration is searched display

      • Domain discount banner. Banner persists as long as domain appears.

      • The domain years selector:

        • 1 year (default)

        • 2 years

        • 3 years

      • On select

        • Update price

    Checkout

    Cart

    View

    Requirements

    Template

    Image AddedImage Added

    Image Added

    Image AddedImage Added

    Address
            • Domain Selection Page

    Pay with FIO Cart - show if user has 1 or more FIO Wallets with enough funds to pay for entire cart show
    link
    • On click display FIO Payment Page

  • Other Pay Options

    • On click display Payment Options

  • Pay with non-FIO - show if
        • If only item in cart is a Free FIO Address

          • Main button: Complete Transaction

        • If user does not have

    enough
        • sufficient amount of FIO in

    any wallet to pay for cart
        • at least one Wallet

          • Pay with

    FIO
          • Credit/Debit Card

    On click display
          • Pay with

    Credit Card Page
  • Pay with CoinPayments

    • On click redirect to CoinPayments

  • Payment Options

    Image Removed
    • Display

      • Pay with FIO Credit Card

        • On click display Pay with Credit Card Page

      • Pay with CoinPayments

        • On click clear cart and redirect to CoinPayments

    Pay with FIO

    Visual

    Functionality

    Purchase Page

    Image RemovedImage RemovedImage Removed
  • Collect

    • FIO Wallet name - only show if user has more than 1 FIO Wallet irrespective of balance

  • Display

    FIO Addresses and FIO Domains in cart

    Show price

  • Show FIO price with 2 decimal precision, e.g. 1.23 FIO

  • Show USDC price

    Multi-year domain

    Image Added
    • For Domain Registrations and Renewals display years selector. See Multi-year Domains

    Watchlist Domains

    WatchlistDomaisn-20240214-202313.pngImage Added

    • For domain renewals for watchlist domains (not owned by user) show notice for every such item:

      • “It looks like you are attempting to renew a domain that you do not own.
        Renewing this domain will not transfer ownership and funds can not be refunded.”

    Purchase Page

  • Total cost

    • Sum of all items' cost in cart

  • View

    Requirements

    Pay with FIO

    Image AddedImage Added
  • FIO price as obtained from /get_fee

      • Wallet paying

        • FIO Wallet balance

          • FIO as obtained from /get_fio_balance

          • USDC calculated: FIO balance * Total USDC / Total FIO

        • Only display wallets that have sufficient balance

        • If

    wallet balance is less than purchase amount due, display Cart page with Low Balance banner
        • more than 1 allow for selection

      • Purchase Now button

        • On click

          • Run /get_fee

            • If prices have changed, display Cart page with updated pricing and Pricing update! banner.

          • Check user’s FIO balance

            • If wallet balance is less than purchase amount due, display Cart page with Low Balance banner

          • Collect

            • PIN code

          • Display Transaction Processing Page

    Register Register FIO Address and FIO Domains
    Registration
          • Purchase Confirmation Page

    Pay with Stripe

    Visual
    Image Added

    Functionality

    Pay with card

    Image Removed

    Display

    FIO Addresses and FIO Domains in cart

    Show price

    Show USDC price as USD ($) FIO price
  • Show FIO price with 2 decimal precision, e.g. 1.23 FIO

      • Wallet assignment

        • FIO Wallet balance

    fee
  • Total cost

    • Sum of all items' cost in cart

  • Links

    Pay

    On click

    Execute Purchase and Display Pay with Stripe

    ...

    Free

    ...

    Image Added

    • Same as Pay with FIO

    ...

    Visual

    ...

    Functionality

    ...

    Success

    ...

    ...

    • Display

      • FIO Addresses and FIO Domains purchased

      • Total cost

        • Sum of all items' cost in cart

      • Close or X

        • When clicked display Authenticated Home Page

    ...

    Purchase Error

    ...

    ...

    • Displayed when all items in cart were not purchased due to errors.

    • Display

      • Close or X

        • Display Cart page with all failed items from purchase added back to cart

    ...

    Partial Success

    ...

    ...

    • Displayed when some items in cart were not purchased due to errors.

    • Display

      • Items purchased

      • Items which had errors

    • Display

      • Try Again

        • the purchase of remaining items is retried and Purchase Interstitial is displayed.

      • X

        • Display Cart page with failed items from purchase added back to cart

    • Remaining items are left in Cart

    Pay with CoinPayments/Stripe Confirmation

    Visual

    Functionality

    Success

    Image Removed

    Display

    FIO Addresses and FIO Domains in cart

    Show price
    • except all wallets displayed

    Pay with Bitypay

    Image Added
    • Same as above versions except:

      • Button

        • On click

          • Trigger Bitpay Modal Invoice

          • On Paid status redirect to Purchase Confirmation

    Purchase Confirmation

    View

    Requirements

    Template

    Image Added

    • Display

      • Title

        • The title updates automatically based on order status, except

          • Success - Purchased

          • Partial Success - Partial Purchased

      • Transaction Details

    Coinpayments

    Show USDC price as USD ($) - see Free FIO Address and USDC Price Computation

    Stripe

        • TX ID (if available, otherwise do not show row)

          • Show FIO Chain ID with link to explorer which opens a new tab

          • If multiple TX IDs exist list one underneath the other

      • Payment Details

        • Total cost

          • Sum of all items' cost in cart

            • For free state FREE

        • Paid with

    copy
    • Coinpayments

      • CoinPayments

    • Stripe

      • Credit/Debit Card

    Transaction ID

  • Coinpayments

    • Transaction ID

  • Stripe

    payment_intentm IDDisplay
          • Free: Do not display

          • FIO: Display the wallet from which the FIO was withdrawn

          • Stripe: Credit card type and last 4 of credit card number, e.g. “Visa ending in 1234”

          • Bitpay: Bitpay

        • Order Number

          • Display alphanumeric order number

    • Action

      • Close or X

    On click

        • When clicked display Authenticated Home Page

    In ProgressStripe

    Pending

    Image Removed

    Display

    Copy

  • Coinpayments

    • Confirmation in Progress - Your crypto payment is currently being confirmed. You do not need to remain on this screen and may close the view without disrupting your purchase.

  • Image Added
    • Add rotating circle and Confirmation in Progress blue box notice

      • Confirmation in Progress - Your

    credit/debit card payment
      • transaction is currently being confirmed. You do not need to remain on this screen and may close

    the view
  • requires_payment_method

    • Credit/Debit Card not accepted - the credit card you have provided was not accepted by the issuing bank and therefore your transaction was not complete. Click close and try purchasing again with another form of payment.

  • Purchase error on FIO Chain for all items
      • it without disrupting your purchase.

  • FIO Addresses and FIO Domains in cart

  • Paid with copy

    • Coinpayments

      • CoinPayments

    • Stripe

      • Credit/Debit Card

  • Total cost

    • Sum of all items' cost in cart

  • Transaction ID

    • Coinpayments

      • Transaction ID

    • Stripe

      • payment_intentm ID

  • Close or X

    • On click

      • Display Orders Page

  • Continue monitoring status and if changes update page to new status

  • Cancelled

    Image Removed
    • Display

      • Copy

        • Coinpayments

          • Canceled Payment - Your crypto payment has been cancelled.

        • Stripe

          • Canceled Payment - Your credit/debit card payment has been cancelled.

      • FIO Addresses and FIO Domains in cart

      • Total cost

        • Sum of all items' cost in cart

      • Paid with copy

        • Coinpayments

          • CoinPayments

        • Stripe

          • Credit/Debit Card

      • Transaction ID

        • Coinpayments

          • Transaction ID

        • Stripe

          • payment_intentm ID

      • Close or X

        • On click

          • Display Cart page with all items from purchase added back to cart

    Purchase Error or Declined

    Image Removed

    Display

    Copy

  • Coinpayments

    • Purchase Error - There was an error during registration. As a result we could not confirm the purchase, but we have credited your wallet with XXX.XX FIO Tokens. You can use these tokens to register FIO Crypto Handle or Domain.

  • Stripe

    Partial Success

    Image Added
    • Separate confirmed and not confirmed items and show Incomplete Purchase red box error.

      • Stripe - FIO Tokens for failing items not transferred to user

        • Incomplete Purchase - There was an error during purchase of some items. As a result we have refunded $XX.XX back to your credit card. Go to your cart to try purchase again.

      • Stripe - FIO Tokens for failing items transferred to user

        • Incomplete Purchase - There was an error during purchase of some items. As a result we have credited 100 FIO Tokens ($5.00) to your wallet. Go to your cart to try purchase using FIO Tokens instead.

      • FIO

        • Incomplete Purchase - There was an error during purchase of some items. No FIO Tokens were deducted from your wallet for the failed items. Go to your cart to try purchase again.

      • FREE

        • Incomplete Purchase - There was an error during purchase of some items. Click close and try again.

      • Bitpay

        • Incomplete Purchase - There was an error during purchase of some items. As a result we have credited 100 FIO Tokens ($5.00) to your wallet. Go to your cart to try purchase using FIO Tokens instead.

    • If items failing are belong to multiple categories (e.g. FREE item failed, but also item paid with Stripe) - show multiple boxes

    Purchase Error

    Image Added
    • Add Purchase Error red box error

      • Stripe

        • Purchase Error - There was an error during

    registration
        • purchase. As a result we have refunded the entire amount of order, $XX.XX back to your credit card. Click close and try

    purchasing
        • purchase again.

      • FIO

    Addresses and FIO Domains in cart
  • Total cost

    • Sum of all items' cost in cart

  • Paid with copy

    • Not Paid

  • Transaction ID

    • Coinpayments

      • Transaction ID

    • Stripe

      • payment_intentm ID

  • Close or X

    • On click

      • Display Cart page with all items from purchase added back to cart

  • Partial Success

    Image Removed
    • Display

      • FIO Addresses and FIO Domains in cart

      • Total cost

        • Sum of all items' cost in cart

      • Transaction ID

        • Coinpayments

          • Transaction ID

        • Stripe

          • payment_intentm ID

      • Close or X

        • On click

          • Display Cart page with failed items from purchase added back to cart

    Additional Purchase Access Points - Credit Card

    View

    Requirements

    Renew Domain

    Image Removed

    Renew Now

    • Display

      • Return Arrow

        • Returns the user to the previous view

      • Title

        • Content

          • Domain Renewal

      • Informational Dialog

        • Content

          • Renewal Information - This renewal will add 1 additional year to your domain. 

      • Transaction Details

        • Content

          • Title

            • Transaction Details

          • Field

            • <domain> renewal

          • Cost

            • <Amount> USDC

            • <Amount> FIO

      • Payment Details

    Add Bundles

    Image Removed

    Add Now

    Display

  • Return Arrow

    • Returns the user to the previous view

  • Title

    • Content

      • Add Bundle Transactions

  • Informational Dialog

    • Content

      • Add Bundle Information - This renewal will add 100 bundle transactions to your FIO Crypto Handle.

  • Transaction Details

    • Content

      • Title

        • Transaction Details

      • Field

        • Add 100 Bundle Transactions

          • Added to <crypto handle>

      • Cost

        • <Amount> USDC

        • <Amount> FIO

  • Payment Details

  • Content

    • Title

      • Payment Details

    • Field

      • Total Cost

    • Cost

      • <Amount> USDC

      • <Amount> FIO

  • Link

    Add Now

    On Click

    Display Cart View - https://fioprotocol.atlassian.net/l/cp/Hy7aQTBr
        • Purchase Error - There was an error during purchase. No FIO Tokens were deducted from your wallet. Click close and try purchase again.

      • FREE

        • Purchase Error - There was an error during purchase. As a result we could not complete your purchase. Click close and try again.

      • Bitpay

        • Purchase Error - There was an error during purchase. As a result we have credited 100 FIO Tokens ($5.00) to your wallet. Go to your cart to try purchase using FIO Tokens instead.

    Declined (Stripe)

    Image Added
    • Add Payment error red box error

      • Payment Error - The payment was not accepted and as a result the transaction was not processed.

    Canceled

    Image Added
    • Add blue box notice

      • Canceled - Your transaction has been cancelled.

    • Change Paid with to “Not Paid”