Skip to content

Booking app checkout

The last screen before a stay is booked, drawn in Appetite UI, a Figma UI kit for iOS and Android apps built like a design system: the Lakeside cabin for 12 to 17 February, a breakdown of $900, $45 and $68 that totals $1,013, a Visa ending 4242, the cancellation policy and Confirm and pay.

On this page
  1. Preview
  2. Live components
  3. The pattern
  4. Built from
  5. iOS and Material
  6. Related
  7. Get the file

Preview

Review and pay, from the Booking page of the Appetite UI Figma file. The theme switch shows the dark frames.

Booking app, checkout393 x 852 each, Light and Dark
Booking app Review and pay screen: the Lakeside cabin stay for 12 to 17 February, a price breakdown of $900, $45 and $68 that totals $1,013, a Visa ending 4242 row, the cancellation policy, and a Confirm and pay buttonBooking app Review and pay screen in dark mode: the Lakeside cabin stay for 12 to 17 February, a price breakdown of $900, $45 and $68 that totals $1,013, a Visa ending 4242 row, the cancellation policy, and a Confirm and pay button
Review and pay
Screens, screen, what it shows
ScreenWhat it shows
Review and payThe stay, a price breakdown, the card and the cancellation terms

Which components carry the checkout pattern?

The kit's components, drawn live from the same tokens as the frames. Tap them: they behave as the Figma prototype does.

Checkout, live componentsKit geometry, light and dark

List, Price Row

Subtotal$32.90Service fee$1.49Total$34.39

Stepper

2

Button, Fill, large

How does this screen follow the checkout pattern?

The rules every checkout screen in the kit follows, and what this one does with each.

The pattern, rule, on this screen
RuleOn the booking app
Show the total before the buttonThe breakdown ends on the total in Price Rows right above the button, so $1,013 is the last figure read before paying it.
The button says what it doesThe button reads Confirm and pay, the two things it does, on the one screen that takes the money.
Every choice is a rowThe card, Visa ending 4242, is a List row of its own and the cancellation terms sit as text under it, apart from the price.

What is it built from?

Every control with a component is an instance of it, so one token change moves these screens with the rest of the file.

Built from, component, screens
ComponentScreens
Top BarReview and pay
Price RowReview and pay
ListReview and pay
ButtonReview and pay

What changes between iOS and Material?

The frames are drawn in the ios-md Platform mode. Switch a frame to android and these variables take the Material values; the components below are where the two systems draw the same need differently.

Platform variables, variable, iOS, Android
VariableiOS (ios-md)Android
platform/sheet/corner1228
platform/list-row/min-height4456
platform/min-touch-target4448
Counterparts, component, iOS, Material 3, what differs
ComponentiOSMaterial 3What differs
SheetiOS / Sheet - Full ScreenM3 / Bottom sheet 412 wide and Side Sheet 320 wideMaterial adds a side sheet for large screens
ListiOS / List with a 44 minimum rowM3 / List Item, 56, 72 or 88 high by LinesMaterial sets the row height by lines of text, iOS sets only a minimum

Start from these screens.

Every frame on this page is part of the Appetite UI file, drawn from its components and bound to its variables, so one brand edit moves every screen in light and dark.

The file holds 589 variables in 6 collections and exports its token values to SwiftUI, Jetpack Compose, Flutter and CSS. Solo covers one designer and Team up to ten people. You pay once and keep lifetime updates. Price goes up Nov 1

The read-only Figma preview opens the whole file, every screen and every variable, before you buy.