Project Screenshot

LikBUY

A service that lets businesses sell discount coupons, special offers, and promos to customers.

  • Our client’s request

    LikBUY is a platform on which businesses can share their latest deals and sell coupons for products and services directly to customers. LikBUY CEO Mikhail asked Steelkiwi to build native iOS and Android apps for the platform. 

    LikBUY stands out from competitors like Groupon due to enhanced functionality and a more beneficial partner program. LikBUY is designed as a catalog with map navigation to easily find the necessary products and services nearby.

    The platform charges businesses only 10% of the value of coupons sold, whereas other coupon platforms charge businesses for registration in addition to every coupon sold. LikBUY also offers businesses many options to customize each special offer.

  • Analysis

    In 2018, HelloWorld surveyed more than 1,500 US consumers aged 18 to 65 and found that 61% consider special offers the best way brands can interact with customers. According to a survey by RetailMeNot, 94% of respondents look for deals or offers when shopping and 74% consider offers a deciding factor for what to buy and where.

    People expect to get discounts and special offers from brands. Discount coupon platforms such as LikBUY help brands increase customer loyalty, promote products, retain existing customers, and attract new customers by offering products and services at attractive prices.

  • Solution

    We build a couponing app for iOS and Android where users can find savings opportunities at dozens of retailers and businesses can sell discount coupons to customers.

User Roles

icon
Seller

Sellers can register businesses of three types on the LikBUY website: food and beverages, stores, and services. Sellers can manage account settings, products, and services; create and promote deals and discounts; and respond to messages from customers.

icon
Customer

Customers can sign up for LikBUY, browse discounts and coupons in a city using filters or the map, and write messages to sellers. They can also save coupons, share them with friends, and see paid, used, and expired coupons.

Results

Duration:
June 2018 – December 2018
Team:
Android - 1 Backend - 1 iOS - 1 PM - 1 QA - 1
Developed an iOS application

We created an iOS application using the Swift programming language and chose a service-oriented architecture in combination with the Model–View–Controller (MVC) architecture because it allowed us to reuse code. Also, this approach saved time.

The LikBUY app for iOS has a custom calendar UI that we created using the FSCalendar library. We implemented push notifications using Firebase Cloud Messaging and real-time chat using Socket.IO technology. We enabled users to authorize via Facebook and Google with the help of Facebook Account Kit and Google Sign-In, and we used the Charts library to let merchants visualize data in the form of charts. We opted for the Google Maps API to display map data because it provides many options for customization.

The LikBUY app uses clusterization to display overlapping map markers in a user-friendly way. Markers can overlap when there’s a high density of them in one spot. Map markers that are placed near each other are grouped into clusters, which show the number of grouped markers. For this, we used an open-source solution by Google with some customizations requested by our client.

One of the most complex features to implement was an animation when swiping up from the bottom menu to the map screen, as the screen transition requires animating many views and is fully interactive, meaning it follows the user’s finger. To implement this feature, we used standard iOS constraints animations and affine transformation. To make the transition interactive, we used UIScrollViewDelegate (from UITableView) and UIPanGestureRecognizer.

Developed an Android application

We created an Android application using the Kotlin programming language, which noticeably reduces the amount of boilerplate code and ensures security. It does this by excluding all types of errors (such as null pointer exceptions) and ensuring compatibility of all components using the existing JVM libraries. The main architectural pattern we used was Model–View–Presenter (MVP), which will simplify support for the code base in the future. 

Additionally, we added Crashlytics for quick troubleshooting. We also implemented the Google Sign-In and Facebook Account Kit APIs to simplify user authentication. All payments are carried out using the LiqPay service, which supports all types of credit cards.

We added Google Maps to show the location of companies and also implemented a clustering algorithm to increase user productivity when interacting with maps. We clustered markers into groups the same way we did in the iOS application. 

There are quite a lot of animated UI elements in the LikBUY app. Our main challenge was to make the transformations between them smooth. To achieve this, we used a combination of the Property and View animations from the Android animation package. This helped us greatly simplify the transformation process.

Implemented features

Due to the specificities of different companies, there are various types of profiles:

Service businesses can set up a company page and create a list of services (and offer a discount for each), promo deals, and packages comprising several services offered with a big discount.

Food and beverage businesses can set up a company page, create a menu, and offer discounts.

Offline stores can set up a company page, create a list of products (and offer a discount for each), and add existing discounts to the application to use LikBUY as an informational catalog. 
 

Businesses can add stores and branches, create discounts for products and services, manage promotional discounts, and set up different access levels for their accounts.

Users can filter offers by category, type of discount, size of discount, average check size, working hours, delivery, and rating. Users can also choose discounts from a company’s catalog or browse through all discounts on the map.
 

Deals are displayed on the map. This allows users to find discounts from businesses nearby.

Customers can save coupons and pay for them later. They can also share coupons with friends. In addition, there’s no need to print coupons out, as customers can show a coupon code on their phones and business managers can scan these QR codes.
 

Customers and businesses can communicate via chat.

Technology Stack

Kotlin icon
Kotlin
Swift icon
Swift
Retrofit icon
Retrofit
Crashlitics icon
Crashlitics
Firebase icon
Firebase
Google Maps icon
Google Maps