Slide 1

Slide 1 text

Thank you, RubyConfTH 2023

Slide 2

Slide 2 text

Bernard Banta @Bantab

Slide 3

Slide 3 text

Finplus Group CTO and Co-Founder I work at

Slide 4

Slide 4 text

ARC Chairman and Co-founder rubycommunity.africa

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

Nairobi, Kenya I’m from

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

Breaking Barriers Empowering the Unbanked with Innovative Tech

Slide 14

Slide 14 text

Globally, some 1.4 billion adults remain unbanked.  These people are hardest to reach – and more commonly women, poorer, less educated, and living in rural areas. 

Slide 15

Slide 15 text

Understanding the Challenges ● Limited access to banking infrastructure ● Low income ● Digital illiteracy ● High transaction costs ● Geographical barriers ● Limited connectivity ● Informal work

Slide 16

Slide 16 text

What phones do they use; ● Most of them use feature phones ● Minority of them use low-end smartphones with minimal internet access

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

What can you do with a feature phone?

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

No content

Slide 21

Slide 21 text

USSD

Slide 22

Slide 22 text

Rails backend server Telecommunication company Feature phone

Slide 23

Slide 23 text

How do you develop a USSD app

Slide 24

Slide 24 text

For a simple app you can use conditional statements Thank you for dialing our short code. Please select an option below. 1. Get more information 2. Support contacts 3. Request demo 4. Sales contacts

Slide 25

Slide 25 text

case user_input when '1' # Send an SMS about more information when '2' # Send an SMS about support contacts when '3' # Log demo request when '4' # Send an SMS about sales contacts else # Display invalid input end

Slide 26

Slide 26 text

How about a complex app?

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

We came up with a Component-Based solution approach

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

We create a USSD tree file in JSON format compatible with the AppNode model structure we saw previously.

Slide 31

Slide 31 text

We generate a tree on the DB based on the JSON file.

Slide 32

Slide 32 text

Class BaseNodeProcesor Controller Class RequestReceiver Class NodeProcessor

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

class NodeProcessor1 < BaseProcessor def process_request # Implement your logic here end end

Slide 35

Slide 35 text

What more can you do with USSD?

Slide 36

Slide 36 text

- Web browser and - Mobile app USSD apps

Slide 37

Slide 37 text

Let’s Zoom out

Slide 38

Slide 38 text

I’d like us to think about a few questions.

Slide 39

Slide 39 text

Do we easily get swayed by new tech tools without fully exploring the full potential of existing ones?

Slide 40

Slide 40 text

What other problems can USSD solve?

Slide 41

Slide 41 text

Are there other real problems affecting millions of people or even billions that can be solved by simple innovative tech?

Slide 42

Slide 42 text

Thank you