YagoutPay React Native E-Commerce Integration is a full-featured mobile commerce application built with React Native (Expo) and integrated with YagoutPay’s Direct API for seamless, secure mobile payments in Ethiopia. This project showcases a modern Shoes Store with end-to-end features — from browsing products to completing payments inside the app
# YagoutPay React Native — Shoes Store (Expo)
📱 **YagoutPay React Native Shoes Store**
A production-ready React Native (Expo) mobile e-commerce demo which demonstrates an in-app YagoutPay Direct API integration for Ethiopian merchants including TeleBirr wallet support.
---
## 🌟 Overview
This project is a full-featured cross-platform e-commerce app (iOS / Android / Web) built with Expo and React Native. It demonstrates:
- Product browsing, cart management, and checkout
- In-app payments via **YagoutPay Direct API**
- TeleBirr wallet support (Ethiopian mobile wallet)
- AES-256 encryption utilities (server proxy + client)
- Predictable state with Redux Toolkit and TypeScript-ready structure
**Current Version:** `1.1.0`
**Status:** Production-ready ✅
**Last Updated:** December 1, 2025
---
## 🔑 Key Highlights
- 🛍️ Full e-commerce flow (products → cart → checkout → orders)
- 💳 YagoutPay Direct API with TeleBirr support
- 🔐 Secure transmission: AES-256-CBC used in the original implementation (see Security notes)
- 📱 Cross-platform via Expo
- 🧰 Redux Toolkit + React Navigation
- 🧪 Built-in test helpers and developer documentation
---
## 🛠️ Tech stack
**Frontend**
- React Native (Expo SDK)
- Redux Toolkit
- React Navigation
- Axios
- Crypto-JS (for client-side helpers) — recommended only for utilities; critical encryption should be server-side.
**Backend**
- Node.js + Express
- Native Node `crypto` for server-side encryption/decryption
- CORS enabled
- AES-256-CBC encryption helper (see Security section)
**Payment**
- YagoutPay API v1.01
- TeleBirr wallet integration
- Direct API (in-app payment flow) + Hosted (WebView) alternative
---
## ⚙️ Installation
### Prerequisites
- Node.js 18+ and npm/yarn
- Expo CLI (`npm install -g expo-cli`)
- iOS Simulator (Mac) or Android emulator / real device
- YagoutPay merchant credentials (test & production)
### Setup
```bash
git clone
cd yagout_reactnative
# install
npm install
# or
yarn install
# start backend proxy
no …