This was a great turning point in its adventure of growth and diversification as Sasini PLC is indisputably one of the oldest firms in Kenya to be listed on the Nairobi Securities Exchange. In the true spirit of an adventurous pioneer, Sasini PLC realised that Agricultural risks are best managed through product diversification. It was in this spirit that Sasini PLC entered the Tea sub-sector by acquiring a significant stake in its first Tea operation known as Kipkebe Ltd in the western side of the great Rift Valley region of Kenya in 1964.
End-User License Agreement
& Terms of Service
Sasini Mobile Application · Android & iOS
Agreement Overview
This End-User License Agreement and Terms of Service ("Agreement", "EULA", or "Terms") is a legally binding contract between you ("User", "you", "your") and Sasini PLC ("Sasini", "Company", "we", "us", "our") governing your access to and use of the Sasini Mobile Application ("App", "Platform") on any supported device or operating system.
This Agreement is organized into the following Articles:
| Art. | Subject | Key Topics |
|---|---|---|
| 1 | Definitions | All defined terms used throughout this Agreement |
| 2 | Acceptance & Modifications | How you accept these Terms and how we update them |
| 3 | License Grant & Restrictions | What you are and are not permitted to do with the App |
| 4 | Account Registration & Access | Account creation, verification, security obligations |
| 5 | User Identity & Roles | Farmer vs. Guest/Buyer access, RBAC, permissions |
| 6 | Core Platform Services | Deliveries, Payments, AI, Weather, Pickups, Shop |
| 7 | Financial Data & Payments | Ledger data, earnings, deductions, payment details |
| 8 | Artificial Intelligence | AI Assistant capabilities, limitations, disclaimers |
| 9 | E-Commerce & Agri Shop | Orders, credits, farm inputs, order finality |
| 10 | Pickups | Produce pickup requests — green leaf, avocado, and macadamia |
| 11 | Acceptable Use Policy | Prohibited conduct and platform integrity |
| 12 | Intellectual Property | Ownership, trademarks, licensing restrictions |
| 13 | Data Privacy | How this ToS interacts with the Privacy Policy |
| 14 | User-Generated Content | Photos, reports, feedback submissions |
| 15 | Account Suspension & Termination | Grounds and procedures for account action |
| 16 | Warranties & Disclaimers | "As Is" provision, service availability |
| 17 | Limitation of Liability | Cap on Sasini's financial exposure |
| 18 | Indemnification | Your obligation to defend Sasini against your actions |
| 19 | Dispute Resolution | Good faith negotiation, arbitration, governing law |
| 20 | App Store Compliance | Google Play & Apple-specific terms |
| 21 | General Provisions | Severability, force majeure, entire agreement |
| 22 | Definitions Glossary | Full glossary of technical and legal terms |
Table of Contents
Article 1Definitions
For the purposes of this Agreement, the following capitalized terms shall have the meanings defined below and apply throughout the Agreement unless the context clearly requires otherwise.
| Defined Term | Meaning |
|---|---|
| "App" or "Platform" | The Sasini Mobile Application, including all software code, UI/UX screens, embedded APIs, backend logic, AI modules, and all updates, upgrades, patches, and versions thereof, available on iOS (Apple App Store) and Android (Google Play Store). |
| "Company", "Sasini", "We" | Sasini PLC, a company incorporated in Kenya and listed on the Nairobi Securities Exchange (NSE), its subsidiaries, affiliated entities, directors, officers, employees, and authorized operational partners. |
| "User", "You", "Your" | Any individual or entity who installs, downloads, registers for, accesses, or otherwise uses the App in any capacity. |
| "Verified Farmer" / "Sasini Farmer" | A user who has successfully completed the KYC / farmer validation protocol by supplying a valid Sasini Farmer ID, National ID, and phone number confirmed against the central Sasini database. |
| "Guest" or "Buyer" | A User who accesses the App via the Guest/Buyer pathway, bypassing farmer-specific validation. Guests have access to shared features (Agri Shop, AI Agronomist, news, weather) but are excluded from financial ledger modules. |
| "Produce" | Physical agricultural commodities, including tea (green leaf), coffee, macadamia nuts, and avocados, delivered by verified farmers to Sasini-designated weighbridges and buying centres. |
| "Account" | The unique, password-protected digital profile created by a User during registration, associated with a Unique Digital ID (UID), email address, and role designation (Farmer or Guest/Buyer). |
| "Services" | All features, modules, and content made available through the App, including deliveries tracking, payments ledger, AI agronomist, Agri Shop, weather & alerts, pest reports, produce pickups, notifications, help & support, and feedback. |
| "Intellectual Property" | All patents, trademarks, service marks, copyrights, design rights, database rights, trade secrets, know-how, source code, algorithms, UI/UX designs, logos, agronomy literature, and other proprietary rights owned by or licensed to Sasini. |
| "User-Generated Content" (UGC) | Any data, text, photographs, images, pest reports, feedback submissions, AI chat messages, or other content submitted by a User through the App. |
| "Factory Database" | Sasini's central, authoritative backend database containing all official farmer registration records, weighbridge delivery data, and financial ledger entries. This database is the sole source of truth for all financial and production data. |
| "Easy Way Web API" | The third-party payment processing interface used by Sasini to retrieve and display farmer earnings, deductions, and net pay records within the Payments module. |
| "Firebase Services" | Google LLC's Firebase platform, including Firebase Cloud Messaging (FCM) for push notifications and Firebase Crashlytics for crash diagnostics, integrated within the App under a separate data processing agreement. |
| "JWT" | JSON Web Token — a cryptographically signed session token issued to a User upon successful login, used to authenticate API requests during an active session. Tokens have a defined expiry and are invalidated upon logout. |
| "RBAC" | Role-Based Access Control — the system by which the App dynamically grants or restricts access to specific modules based on the verified identity and role of the logged-in User. |
| "FSM" | Finite State Machine — a software model that restricts transactional objects (orders, pickup requests) to a defined set of states with strictly controlled, one-directional transitions. |
| "Green Leaf Pay" | Sasini's proprietary payment calculation for verified farmers — gross earnings computed on the basis of delivered tea weight multiplied by the applicable unit price per kilogram. |
| "Agri Shop" / "AgriShop" | The in-app e-commerce module allowing Users to browse and purchase agricultural inputs (fertilizers, seeds, tools), debited against the farmer's Sasini credit account. |
| "AI Assistant" / "Sasini AI" | The AI-powered digital agronomist feature within the App, powered by a large language model (LLM) and vision inference engine, providing crop advice, pest identification, and general agricultural knowledge. |
| "Agreement" / "EULA" / "Terms" | This complete End-User License Agreement and Terms of Service, including all appendices, schedules, and documents incorporated by reference, as amended from time to time. |
| "Privacy Policy" | Sasini's separate Global Privacy Policy document, incorporated into this Agreement by reference, governing the collection, processing, storage, and deletion of personal data. |
| "Force Majeure Event" | Any event beyond Sasini's reasonable control, including acts of God, natural disasters, war, terrorism, civil unrest, epidemics, network outages, governmental actions, or power failures. |
Article 2Acceptance of Terms & Modifications
2.1 Formation of Binding Agreement
This Agreement is formed between you and Sasini at the earliest of the following events: (a) upon downloading or installing the App; (b) launching the App for the first time; or (c) accepting the terms or registering via any functionally equivalent acknowledgement during the onboarding process.
By taking any of the above actions, you represent and warrant that:
- You are at least 18 years of age or the age of legal majority in your jurisdiction, whichever is higher;
- You have the full legal capacity, authority, and right to enter into this Agreement;
- If accepting on behalf of a company or other legal entity, you confirm having the authority to bind that entity to these Terms;
- You have read and understood this Agreement in its entirety before accepting it;
- You agree to comply with all applicable local, national, and international laws and regulations in connection with your use of the App.
2.2 Capacity and Age Verification
The App is exclusively designed for adult professional use:
- The Verified Farmer pathway requires a valid Kenyan National ID, which is only issued to individuals aged 18 and above — the pathway is inherently restricted to adults.
- The Guest/Buyer pathway is also intended for adults only. Users who are minors must not use the App.
- If Sasini becomes aware that a minor has registered an account, Sasini reserves the right to immediately suspend or delete that account without prior notice.
2.3 Modifications to This Agreement
Sasini reserves the right to revise, amend, or replace this Agreement at any time, subject to the following:
- Material Changes: Where changes materially affect your rights or obligations, Sasini will provide a minimum of fourteen (14) calendar days' advance notice via push notification and/or email before the changes take effect, except where a shorter period is required by law or necessary to address a security threat.
- Non-Material Changes: Corrections of typographical errors, re-numbering, or administrative updates that do not materially affect your rights may be made without prior notice.
- Acceptance of Changes: Your continued use of the App after the effective date of any revised Agreement constitutes your binding acceptance of those changes. If you do not agree, your sole remedy is to stop using the App and delete your account.
- Version History: Each version will include a version number and effective date on the cover page. You may request a copy of any prior version by contacting sasiniapp@sasini.co.ke.
Article 3License Grant & Restrictions
3.1 Grant of Limited License
Subject to your full compliance with this Agreement, Sasini hereby grants you a limited, non-exclusive, non-transferable, non-sublicensable, revocable license to:
- Download and install one (1) copy of the App on a mobile device you own or lawfully control;
- Access and use the App strictly for your own personal operational interaction within Sasini's agricultural supply chain;
- Access the features and Services assigned to your verified user role (Farmer or Guest/Buyer) as described in Article 5.
This license does not include any right to: (a) reproduce, distribute, or sublicense the App; (b) use the App on behalf of any third party for commercial purposes; (c) make the App available to third parties over a network for concurrent use; or (d) use the App for any purpose outside your direct interaction with Sasini's agricultural supply chain.
3.2 Restrictions on Use
You expressly agree that you will not, under any circumstances:
- Reverse Engineering: Decompile, disassemble, reverse engineer, or attempt to derive the source code, algorithms, or cryptographic keys of the App, except to the extent expressly permitted by applicable law.
- Modification: Modify, translate, adapt, or create derivative works based on the App or any part thereof.
- Distribution: Copy, reproduce, distribute, sell, resell, sublicense, transfer, or make the App available to any third party.
- Commercial Exploitation: Use the App or any data extracted from it for commercial purposes, including competitive intelligence or third-party agricultural advisory services, without Sasini's prior written consent.
- Automated Access & Scraping: Deploy bots, scrapers, or any automated data-extraction tool to access, copy, or extract data from the App or its underlying APIs.
- Security Attacks: Attempt to inject malicious SQL, NoSQL, JavaScript, or any other executable code into the App's input fields, APIs, or backend infrastructure, including SQL injection, XSS, CSRF, SSRF, or similar attack vectors.
- Rate-Limit Evasion: Attempt to bypass any rate-limiting, throttling, or anti-abuse mechanism in the App or its backend systems.
- Authentication Bypass: Attempt to access any account, module, or data not assigned to your user role, including attempting to escalate privileges from Guest/Buyer to Verified Farmer without completing the mandated validation process.
- Network Interception: Use packet sniffers, proxy tools, or man-in-the-middle techniques to intercept, monitor, or tamper with network traffic between the App and Sasini's servers.
- Fraudulent Reporting: Submit false pest and disease reports, fraudulent pickup requests, fabricated feedback, or any other misleading information through the App.
- Impersonation: Impersonate another registered Sasini farmer, Sasini employee, or any third party within the App.
- Harassment & Abuse: Use any App communication feature to harass, threaten, defame, or abuse Sasini staff or other users.
- Malware Distribution: Transmit or introduce viruses, trojans, ransomware, spyware, or any other malicious software through the App.
- Unauthorized Claims: Use the App to claim payments, pickups, or deliveries for produce from farms not registered under your Farmer ID in the Sasini factory database.
3.3 Updates and New Versions
Sasini may release updates, patches, or new versions of the App from time to time. By using the App, you consent to the automatic installation of security patches and critical updates. Non-critical feature updates will be presented to you for acceptance. Sasini is not obligated to provide any specific update or to maintain backward compatibility with any prior version.
3.4 Third-Party Components
The App incorporates third-party open-source software components and proprietary integrations governed by their respective licenses, available upon request at sasiniapp@sasini.co.ke. Your use of third-party features within the App (including Firebase, Google Maps, Google Weather, and the AI inference engine) is additionally subject to those respective service providers' terms.
Article 4Account Registration, Security & Access
4.1 Account Registration Process
| Stage | Farmer Pathway | Guest/Buyer Pathway |
|---|---|---|
| Stage 1: Localization | Select preferred language (English or Swahili). Select 'Continue as Sasini Farmer'. | Select preferred language. Select 'Continue as Guest/Buyer'. |
| Stage 2: Identity Validation | Enter Sasini Farmer ID, National ID, and phone number. System cross-references against the factory database. | Stage skipped. Proceed directly to email registration. |
| Stage 3: Account Creation | Enter email address and create a compliant password. Accept Privacy Policy and Terms of Use. | Enter email address and create a compliant password. Accept Privacy Policy and Terms of Use. |
| Stage 4: Email Verification | Click the time-sensitive link sent to your registered email. CSPRNG-generated token verifies ownership. | Same as farmer pathway. |
| Stage 5: Dashboard Access | Full farmer dashboard with all modules including deliveries, payments, pickups, and pest reports. | Limited dashboard: Agri Shop, AI Agronomist, weather, news, help & support. |
4.2 Accuracy of Registration Information
You represent and warrant that all information you provide during registration is, and will remain, accurate, complete, current, and truthful. You agree to promptly update your account information to maintain its accuracy. Sasini is not liable for any consequences arising from your failure to provide accurate registration information, including account suspension, payment misattribution, or inability to access services.
4.3 Know Your Customer (KYC) Protocol
For Verified Farmers, the App implements a KYC protocol involving:
- Submission of your Sasini-assigned Farmer ID, Government-issued National ID Number, and registered phone number;
- Real-time validation against the Sasini central factory database using parameterized, SQL-injection-proof queries;
- A generic 'Validation Failed' response for any unmatched combination, to prevent account enumeration attacks;
- If the KYC check passes, the system retrieves your full profile data and provisions a Farmer-role account;
- If the KYC check fails, you will not be permitted to register as a Verified Farmer. You may contact your local Sasini buying centre to correct any discrepancies in the factory database.
4.4 Password Requirements and Security
Sasini enforces the following password requirements:
- Minimum 8 characters in length
- At least one uppercase letter (A–Z)
- At least one lowercase letter (a–z)
- At least one numeric digit (0–9)
- At least one special character: @, #, $, or *
You further agree to: never share your password with any other person (Sasini will never ask for your password); never reuse your Sasini App password on other platforms; and notify Sasini immediately at sasiniapp@sasini.co.ke if you suspect unauthorized access to your account.
4.5 Five-Attempt Lockout Rule
To protect account integrity, Sasini enforces a strict brute-force protection policy:
- After five (5) consecutive failed login attempts, your account is immediately locked;
- A secure recovery link is automatically dispatched to your registered email address;
- You must click the recovery link and complete a mandatory password reset to unlock your account;
- After completing the reset, you are given a single attempt to log in with the new password. Further failure may trigger an extended security review.
Sasini shall not be liable for any access disruption or service interruption resulting from account lockouts triggered by failed login attempts, whether by you or a third party.
4.6 Session Management
Each successful login creates a cryptographically signed JWT session. Session tokens expire automatically after a defined period of inactivity and are explicitly invalidated upon logout. Sasini reserves the right to remotely revoke your active session token if our systems detect anomalous activity, including simultaneous logins from geographically disparate locations or indicators of device compromise. Re-authentication may be required when accessing high-security features such as the Payments module or password change screen.
Article 5User Identity, Roles & Feature Access
5.1 Role-Based Access Control (RBAC)
The Sasini platform uses a strict RBAC system to govern which modules and data are accessible to each user category. Feature access is provisioned at login and cannot be altered by any client-side modification.
| Feature / Module | Verified Farmer | Guest / Buyer |
|---|---|---|
| Dashboard & Profile | Full access | Full access |
| News & Updates | Full access | Full access |
| Weather & Alerts | Full access | Full access |
| AI Agronomist | Full access | Full access |
| Agri Shop (Browse) | Full access | Full access |
| Agri Shop (Purchase) | Full access (farmer credit) | Limited access |
| Help & Support | Full access | Full access |
| Settings & Language | Full access | Full access |
| Feedback & Ratings | Full access | Full access |
| Deliveries & Tracking | Full access — private farm data | Not available |
| Payments & Ledger | Full access — private earnings data | Not available |
| Produce Pickups | Full access | Not available |
| Pest & Disease Reports | Full access | Not available |
| Farmer Financial Data Sync | Deep sync with factory servers | Public metadata only |
5.2 Prohibition on Role Impersonation
You are strictly prohibited from attempting to access any module, data, or feature not assigned to your verified user role. Any attempt to escalate your privileges from Guest/Buyer to Verified Farmer without completing the legitimate KYC validation process constitutes a material breach of this Agreement and may constitute fraud under Kenyan law. Sasini will cooperate fully with law enforcement authorities in connection with any suspected fraudulent access.
5.3 Single Account Policy
Each individual person is permitted to hold only one (1) active Sasini Farmer account per Farmer ID. Creating multiple accounts using the same Farmer ID, multiple National IDs, or fictitious identities is strictly prohibited. Sasini reserves the right to merge, suspend, or delete duplicate accounts without notice.
Article 6Platform Services — Description & Terms
6.1 Deliveries & Live Tracking Module
The Deliveries module provides verified farmers with a real-time digital record of their produce deliveries. You acknowledge and agree that:
- Zero-Cache Strategy: The App performs a fresh API call to Sasini's servers on every load of this module. A 31-day query constraint limits queries to a maximum 31-day window to prevent server timeouts.
- Factory Database Primacy: In any discrepancy between data displayed in the App and records in the Sasini factory database, the factory database is the sole authoritative record. App data may lag behind in rare cases due to network latency.
- Weighbridge Receipts: Physical weighbridge receipts generated at Sasini collection centres constitute the primary legally binding record of your delivery and take precedence over all digital records in any legal dispute.
- Read-Only Records: Delivery records displayed in the App are read-only. No user may modify, dispute, or delete delivery records through the App. Disputes must be raised directly with Sasini administration.
6.2 Payments & Digital Analysis Module
The Payments module displays your historical earnings and deductions via the Easy Way Web API integration. You acknowledge and agree that:
- Green Leaf Pay: Gross earnings displayed represent the aggregate payment computed from your total delivered weight multiplied by the applicable unit price per kilogram for the payment period.
- Deduction Transparency: All deductions — including Agri Shop credits, fertilizer costs, tool purchases, and bank charges — are itemized and auditable within the payment detail view.
- Data Accuracy: Payment figures may be subject to occasional latency or reconciliation delays and may not always be final. Final net pay disbursements are governed by Sasini's official payment schedule.
- Dispute Process: If you identify a discrepancy in your payment records, raise the dispute through official channels: (a) your local buying centre supervisor, or (b) sasiniapp@sasini.co.ke. Sasini will investigate within fourteen (14) working days.
- No Guarantee of Rates: Unit prices per kilogram are set by Sasini management in accordance with market conditions and Sasini's pricing policy. The App does not guarantee any specific payment rate.
6.3 Live Weather & GPS Forecasting Module
The Weather & Alerts module provides location-based micro-climate forecasts to support your daily farming operations. You acknowledge and agree that:
- GPS Permission: The App requires your express permission to access your device's GPS location. You may revoke this permission at any time through your device OS settings, which will disable this module.
- Weather Unpredictability: All weather data, forecasts, alerts, and recommendations are for general informational and planning purposes only. Sasini expressly disclaims all liability for any operational loss, crop damage, or business interruption arising from reliance on any weather forecast or alert.
- Agronomy Alerts: Alerts regarding fungal risk, drought, or pest conditions are informational only and do not replace consultation with a qualified Sasini extension officer.
6.4 News & Updates Module
Sasini publishes news, agricultural advisories, regulatory updates, and company announcements through the App. This content is provided for informational purposes only and does not constitute legal, agronomic, financial, or professional advice.
6.5 Help & Support Module
The Help & Support module provides access to FAQs, official Sasini contact channels, social media links, and the Sasini website. Response times for support queries submitted via email are targeted at 2–5 working days but are not guaranteed.
6.6 Notifications Centre
The Notifications module delivers transactional alerts via Firebase Cloud Messaging (FCM). By using the App, you consent to receive push notifications for events including order updates, pickup status changes, delivery confirmations, payment credits, and administrative broadcasts from Sasini Head Office. You may manage notification preferences through your device's OS settings.
Article 7Financial Data, Produce Pricing & Payment Terms
7.1 Market Rates and Price Transparency
Any market rate, unit price per kilogram, or earnings projection displayed in the App represents historical and current-period unit prices as recorded in the factory accounting system. Market rate data does not constitute an offer, a commitment to purchase at any specific price, or a guarantee of any future earnings. Final payment amounts are subject to Sasini's official pricing policy, tea auction outcomes, deductions, and any other adjustments applied by Sasini management in accordance with your farming contract.
7.2 Payment Disputes
If you believe there is an error in your displayed payment records, you must:
- First attempt to reconcile the discrepancy by reviewing your itemized deductions within the Payments module;
- If the discrepancy persists, contact your local buying centre supervisor or Sasini accounts at sasiniapp@sasini.co.ke within 30 days of the relevant payment date;
- Provide your Farmer ID, the relevant payment period, and a description of the discrepancy;
- Sasini will investigate and provide a written response within 14 working days.
Claims submitted more than 90 days after the relevant payment date may be time-barred at Sasini's discretion.
Article 8Artificial Intelligence — Terms & Disclaimers
8.1 Nature of the AI Assistant
The Sasini AI Assistant ("Sasini AI") is an AI-powered digital agronomist built on a large language model (LLM) with a specialized Vision Inference Engine for crop disease diagnostics. It provides Sasini-curated agronomic information using vector search across Sasini's internal manuals, policy documents, and approved knowledge bases.
8.2 AI Capabilities
- Knowledge Navigation: Answering questions about Sasini's farming practices, tea and coffee agronomy, fertilizer application rates, pruning schedules, and pest management, drawing from Sasini-approved internal literature.
- Image Analysis: Analyzing uploaded photographs of crops to identify potential pests, diseases, or nutrient deficiencies. Images are transmitted via secure Base64 encoding to the Vision Inference Engine.
- Real-Time Information: Accessing current weather conditions, market news, and relevant agricultural updates to inform its responses.
- General Agriculture: Answering general farming knowledge questions beyond Sasini-specific content.
8.3 AI Disclaimer — Critical
You expressly acknowledge and agree that:
- AI-generated advice may contain errors, outdated information, or recommendations inappropriate for your specific crop, soil type, or micro-climate;
- You shall not apply any AI-recommended chemical treatment, pesticide, herbicide, or fertilizer application without first consulting a qualified Sasini Extension Officer or certified agronomist;
- Sasini disclaims all liability for crop failure, yield reduction, crop contamination, ecological damage, regulatory violations, or any financial loss arising from reliance on AI-generated advice;
- The AI Assistant interface includes the disclaimer: "Sasini AI may make mistakes, so double-check its responses." You acknowledge having read and accepted this disclaimer.
8.4 AI Data & Privacy
- All text and image data submitted to the AI is transmitted over SSL/TLS 1.3 encrypted connections;
- AI chat sessions are stored within Sasini's session management system;
- You may delete all AI chat history at any time using the Privacy Hard-Delete function (trash icon within the AI module). Deletion is immediate, permanent, and irreversible;
- Sasini does not use your AI chat content for external AI model training without your explicit, separately obtained written consent.
8.5 Prohibited AI Queries
You agree not to submit queries to the Sasini AI Assistant that:
- Involve illegal activities, including queries about illegal pesticide use, crop fraud, or financial misrepresentation;
- Are designed to probe, test, or bypass the AI's safety guardrails;
- Constitute harassment, hate speech, or threats directed at any person or group;
- Involve the extraction of personally identifiable information of other users;
- Are entirely unrelated to agricultural, Sasini operational, or environmental topics to an extent that constitutes abuse of the service.
Article 9E-Commerce & Agri Shop
9.1 Ordering Process and Legal Status
An order submission through the App constitutes a purchase request, not a binding contract of sale. A binding contract of sale is formed only when Sasini confirms and processes the order (transition from Pending to Processing state in the Finite State Machine). Sasini reserves the right to cancel, modify, or reject any order at any time prior to Processing, including for reasons of inventory depletion, logistics constraints, fraudulent payment indicators, or system errors.
Once an order enters the Processing state, it is locked and cannot be modified or cancelled by the User. This is a deliberate design to maintain synchronization between the digital ledger and physical inventory management.
9.2 Credit-Based Payment System
Agri Shop purchases for Verified Farmers are transacted against the farmer's Sasini credit balance, directly linked to and deducted from future Green Leaf Pay earnings. You acknowledge that:
- Agri Shop purchases made on credit will appear as deductions in your Payments module in the next applicable payment period;
- You are responsible for ensuring your credit balance is sufficient for your orders;
- Credit terms, interest (if applicable), and repayment conditions are governed by your Sasini farming contract.
9.3 Reliability Infrastructure
- Backed Cart: Your shopping cart is serialized to an in-memory data store, ensuring cart contents are preserved even if the App crashes or your connection drops mid-session.
- Idempotency Keys: If you tap 'Submit' multiple times due to a slow connection or App lag, the backend recognizes duplicate submissions and processes only one order. You will never be charged twice for a single submit action.
- Asynchronous Order Brokering: During high-traffic periods (such as fertilizer season), orders are queued through an asynchronous message broker to prevent server drops and ensure every order is recorded.
9.4 Order State Machine
| State | Description & Rules |
|---|---|
| Pending | Order submitted; awaiting Sasini processing. The order can be viewed but cannot be cancelled once submitted through the App interface. |
| Processing | Order confirmed and being fulfilled. State is locked — no modifications permitted. Physical inventory is allocated. |
| Completed | Order fulfilled and collected or dispatched. Financial deduction finalized against farmer credit. |
| Cancelled | Order cancelled by Sasini due to inventory, logistics, or payment issues. Sasini will notify you via push notification. |
9.5 Pickup & Delivery of Ordered Inputs
Delivery arrangements for ordered farm inputs are governed by Sasini's logistics scheduling. Sasini does not guarantee specific delivery dates and reserves the right to adjust delivery schedules based on routing, inventory availability, and regional access conditions. You will be notified via the Notifications Centre when your order is ready for collection or dispatched for delivery.
Article 10Pest Reports, Disease Reporting & Produce Pickups
10.1 Pest and Disease Reporting — Biosecurity Obligations
The Pest & Disease Reporting module is a critical biosecurity tool enabling the Sasini Agronomy Desk to map, monitor, and respond to crop health threats in real time.
- Mandatory Fields: All reports must include farm location, crop type (Tea, Coffee, or Macadamia), pest or disease type, severity level (Low, Medium, High, or Extreme), and a photographic attachment. The Submit button is locked until a photo is attached.
- Accuracy Obligation: You are legally obligated to submit accurate, truthful pest reports. Submitting false, exaggerated, or fabricated reports constitutes a material breach of this Agreement and may constitute fraud under Kenyan agricultural law.
- No Guarantee of Treatment: Submission of a pest report does not constitute a guarantee of any specific remediation action by Sasini within any particular timeframe.
- Administrative Use: All pest report data, including your farm location and crop health information, is used by Sasini for regional outbreak mapping, early warning systems, and agronomy resource allocation.
10.2 Produce Pickup Requests
The Produce Pickups module allows Verified Farmers to request factory truck collection of harvested produce.
- Mandatory Fields: All pickup requests must include produce type, estimated weight, preferred pickup date, farm location, and a photograph of the bagged produce ready for collection.
- Ghost Request Prevention: The mandatory photographic requirement exists specifically to prevent ghost requests — fraudulent pickup requests for produce that does not exist — which waste factory truck resources. Submitting a ghost request is a material breach of this Agreement.
- Idempotency: If you accidentally submit the same request multiple times due to connectivity issues, the system uses Idempotency Keys to ensure only one Pickup ID is generated.
- No Guaranteed Pickup: Sasini makes no absolute guarantee of any specific pickup time or date. Fleet availability, route scheduling, and regional conditions may affect pickup scheduling. You will be notified of Accepted or Declined status via the Notifications Centre.
- Immutability on Acceptance: Once a pickup request is accepted, it cannot be modified. If your circumstances change, contact Sasini Support immediately at sasiniapp@sasini.co.ke.
Article 11Acceptable Use Policy
11.1 General Conduct Standards
| Prohibited Category | Specific Prohibited Actions |
|---|---|
| Identity Fraud | Using another farmer's Farmer ID, National ID, or account credentials; creating accounts with fictitious identities; impersonating Sasini staff or other users. |
| System Integrity Attacks | SQL injection, cross-site scripting, CSRF, API abuse, rate limit evasion, session hijacking, or any other technical attack on the App or its supporting infrastructure. |
| False Reporting | Submitting fabricated pest reports, fake pickup requests, false feedback, or any other misleading information that wastes Sasini's administrative or operational resources. |
| Harassment & Abuse | Using any App feature to harass, threaten, defame, or abuse Sasini employees, extension officers, or other users of the Platform. |
| IP Violation | Reproducing, distributing, or commercializing any Sasini-owned content — including agronomy literature, pricing data, UI designs, or brand assets — without prior written permission. |
| Circumvention of Security | Attempting to disable, bypass, or circumvent any App security feature, encryption, access control, or authentication mechanism. |
| Unauthorized Data Access | Attempting to access financial, delivery, or personal data of any other farmer or user on the Platform. |
| Ghost Requests | Requesting produce pickups or deliveries for produce that does not exist or has not been harvested, with the intent to fraudulently claim logistics services. |
| AI Abuse | Submitting queries to the AI Assistant that violate the prohibited categories in Article 8.5. |
11.2 Consequences of Acceptable Use Violations
Sasini reserves the right to take any or all of the following actions in response to an Acceptable Use Policy violation, at its sole discretion and without prior notice:
- Immediate temporary suspension of your account pending investigation;
- Permanent termination of your account;
- Forfeiture of any outstanding credit balances arising from fraudulent transactions;
- Reporting of suspected criminal conduct to the relevant Kenyan law enforcement authorities;
- Civil legal action to recover damages, costs, and losses arising from your violation;
- Blacklisting of your Farmer ID, National ID, email address, and device identifiers to prevent re-registration.
Article 12Intellectual Property Rights
12.1 Sasini Ownership
The Sasini Mobile Application is the exclusive intellectual property of Sasini PLC or its licensors. This includes, without limitation:
- All source code, object code, compiled binaries, and executable files comprising the App;
- All UI/UX screen designs, graphical elements, iconography, color schemes, and visual compositions;
- All proprietary algorithms, including the AI Statistics Engine, Vector Search implementation, FSM logic, RBAC system, and payment calculation engine;
- All agronomy literature, pest management guides, crop advisory content, and educational materials published within the App or the AI knowledge base;
- The Sasini brand name, logo, 'Est. 1952' mark, 'Green Leaf Pay' mark, 'Sasini AI' name, and all associated trademarks and trade dress;
- All market data, pricing algorithms, and proprietary aggregations compiled by Sasini;
- The Sasini factory database schema, API architecture, and backend infrastructure design.
12.2 License to User Content
By submitting User-Generated Content through the App, you grant Sasini a worldwide, royalty-free, perpetual, non-exclusive, sublicensable license to use, process, store, display, and aggregate your submitted content for the following purposes only:
- Providing the core Services you requested (e.g., displaying your pest report to the Agronomy Desk);
- Improving and training Sasini's internal AI and agronomy systems (using anonymized, non-identifiable data only);
- Generating aggregated, anonymized statistical reports for operational and research purposes.
This license does not permit Sasini to sell your identifiable User-Generated Content to third parties or use it for advertising purposes.
12.3 Feedback and Suggestions
If you submit feedback, suggestions, or ideas about the App or Sasini's services, you agree that such submissions are non-confidential and become the property of Sasini. Sasini is free to use, implement, and commercialize such feedback without any obligation to compensate you or attribute the idea to you.
12.4 Third-Party Intellectual Property
The App integrates third-party components (Firebase, Google APIs, open-source libraries) under their respective licenses. Nothing in this Agreement grants you any right to use the intellectual property of Google LLC, Apple Inc., or any other third party beyond what is expressly permitted by their respective license terms.
Article 13Data Privacy & Protection
13.1 Incorporation of Privacy Policy
Sasini's Privacy Policy is incorporated into this Agreement by reference and forms an integral part of this Agreement. To the extent of any conflict between this Agreement and the Privacy Policy on matters of data handling, the Privacy Policy shall prevail.
The Privacy Policy governs in detail: what personal and operational data we collect; how we use, process, and store your data; who we share your data with; your rights as a data subject; how to request deletion of your account and data; our data retention schedule; and our compliance with Google Play, Apple App Store, and the Kenya Data Protection Act, 2019.
13.2 Consent to Data Collection
By accepting this Agreement, you provide your informed consent to the data collection and processing practices described in the Privacy Policy, specifically:
- Collection and validation of your Farmer ID, National ID, and phone number against the Sasini factory database (Verified Farmers only);
- Collection of GPS location data for weather forecasting during active App use;
- Access to your device camera and gallery for mandatory photographic verification;
- Collection of crash logs and performance data by Firebase Crashlytics;
- Receipt of push notifications via Firebase Cloud Messaging.
13.3 Account Deletion Rights
You have the right to request permanent deletion of your account and all associated personal data at any time:
- In-App: Settings > Delete Account (immediate, permanent, irreversible)
- By Email: sasiniapp@sasini.co.ke (processed within 30 days)
Full details of what data is deleted, what is retained, and for how long are provided in the Privacy Policy.
Article 14User-Generated Content
14.1 Your Responsibility for Submitted Content
You are solely responsible for all User-Generated Content (UGC) that you submit through the App. By submitting content, you represent and warrant that:
- You are the owner of the content or have the right to submit it;
- The content is accurate, truthful, and not misleading;
- The content does not infringe the intellectual property rights, privacy rights, or any other rights of any third party;
- The content does not contain any malware, executable code, or harmful content;
- The content complies with all applicable laws and does not violate any Kenyan agricultural, environmental, or data protection regulations.
14.2 Prohibited Content
You must not submit content that:
- Is false, fabricated, or designed to mislead Sasini or its staff;
- Is unlawful under Kenyan law;
- Contains sexually explicit, violent, abusive, or discriminatory material;
- Discloses the personal data of other individuals without their consent;
- Infringes any third-party copyright, trademark, or other intellectual property right;
- Contains images that are irrelevant to the stated purpose of the submission (e.g., uploading non-agricultural images in pest report forms to circumvent submission requirements).
14.3 Content Moderation
Sasini reserves the right to review, moderate, remove, or retain any User-Generated Content at its sole discretion. Sasini is not obligated to moderate content before it is submitted and is not liable for content submitted by any user. If you believe any user's submission is fraudulent or harmful, please report it to sasiniapp@sasini.co.ke.
Article 15Account Suspension, Deactivation & Termination
15.1 Termination by You
You may terminate your account and this Agreement at any time by:
- Deleting your account via Settings > Delete Account (immediate and permanent);
- Requesting account deletion by email to sasiniapp@sasini.co.ke;
- Contacting Sasini Support through the Help & Support module.
Termination by you does not entitle you to any refund of credit balances or deductions already applied to your payment ledger.
15.2 Account Deactivation (User-Initiated)
You may choose to deactivate your account without permanent deletion. Deactivation pauses your account and prevents login, but preserves all your data including delivery records, payment history, and AI chat history. It can be reversed by contacting Sasini Support and completing identity verification, and does not affect your farming contract or continued delivery of produce to Sasini buying centres.
15.3 Suspension or Termination by Sasini
Sasini reserves the right to suspend, restrict, deactivate, or permanently terminate your account, with or without prior notice, in any of the following circumstances:
- Violation of any provision of this Agreement or the Privacy Policy;
- Submission of fraudulent identity information, false reports, or ghost requests;
- Detection of suspicious or anomalous activity by our security systems;
- Failure to pay outstanding balances owed to Sasini;
- Receipt of a valid court order or law enforcement directive;
- Termination of your farming contract with Sasini;
- Where Sasini determines, in good faith, that continued access poses a risk to other users, Sasini's systems, or Sasini's agricultural operations.
15.4 Effect of Termination
Upon termination of your account: your right to access the App and all Services is immediately revoked; all your personal data will be permanently deleted as described in the Privacy Policy; financial obligations accrued prior to termination remain enforceable; and provisions intended to survive termination (including Intellectual Property, Indemnification, Limitation of Liability, and Dispute Resolution) will continue in full force and effect.
15.5 Sasini's Right to Discontinue the App
Sasini reserves the right to modify, suspend, or discontinue the App, any feature thereof, or any Service offered through it, permanently or temporarily, at any time and for any reason, with or without notice. Sasini shall not be liable to you or to any third party for any such modification, suspension, or discontinuation.
Article 16Disclaimer of Warranties
16.1 Specific Disclaimers
- Merchantability: No warranty that the App is of merchantable quality or fit for any particular commercial purpose.
- Fitness for Purpose: No warranty that the App will meet your specific operational, financial, or agronomic requirements.
- Uninterrupted Availability: No warranty that the App will operate without interruption, error, or delay. Scheduled maintenance, unscheduled outages, force majeure events, third-party service failures, and network connectivity issues may cause the App to be unavailable.
- Data Accuracy: No warranty that all delivery, payment, or market data displayed in the App will be error-free, complete, or current at all times.
- Security Impenetrability: No warranty that the App will be entirely free from security vulnerabilities or unauthorized access. While Sasini implements industry-standard security measures, no system can be guaranteed to be completely secure.
- AI Accuracy: No warranty regarding the accuracy, completeness, or fitness for purpose of any advice, diagnosis, or recommendation generated by the Sasini AI Assistant (see Article 8.3).
- Weather Accuracy: No warranty regarding the accuracy of any weather forecast, alert, or meteorological data provided through the App (see Article 6.3).
- Third-Party Services: No warranty regarding the availability, accuracy, or performance of any third-party service integrated within the App, including Firebase, Google Weather API, or Easy Way Web API.
Article 17Limitation of Liability
17.1 Categories of Excluded Damages
The exclusion of liability applies specifically to, but is not limited to:
- Loss of profits, revenue, or anticipated income;
- Crop failure, yield reduction, or agricultural losses of any kind;
- Financial loss arising from reliance on AI-generated advice, weather forecasts, or market rate data;
- Loss of data or data corruption;
- Business interruption or loss of business opportunity;
- Losses arising from unauthorized access to your account due to your failure to secure your credentials;
- Losses arising from inaccurate data displayed in the App due to network latency or synchronization delays;
- Losses arising from your failure to consult a qualified Extension Officer before applying AI-recommended treatments;
- Losses arising from force majeure events affecting App availability;
- Losses arising from third-party service outages (Firebase, Google APIs, Easy Way API).
17.2 Cap on Total Liability
To the extent that any liability of Sasini is not excluded, Sasini's total aggregate liability to you for all claims arising out of or related to this Agreement — regardless of the cause of action or theory of liability — shall not exceed the greater of:
- One thousand Kenyan Shillings (KES 1,000.00); or
- The amount you actually paid to Sasini in the twelve (12) months immediately preceding the event giving rise to the claim (if any).
17.3 Essential Basis of the Bargain
You acknowledge that Sasini has agreed to provide access to the App in reliance upon the limitations of liability set forth in this Article, and that these limitations form an essential part of the basis of the bargain between you and Sasini. These limitations apply even if Sasini has been advised of the possibility of such losses.
Article 18Indemnification
18.1 Your Indemnification Obligation
To the maximum extent permitted by applicable law, you agree to indemnify, defend, and hold harmless Sasini PLC, its parent company, subsidiaries, affiliates, directors, officers, employees, agents, contractors, licensors, and legal representatives (collectively, "Sasini Parties") from and against any and all claims, liabilities, damages, settlements, judgments, losses, costs, and expenses (including reasonable legal fees) arising out of or connected with:
- Your access to or use of the App or any Service, including any violation of applicable law;
- Your violation of any provision of this Agreement or the Privacy Policy;
- Any User-Generated Content submitted by you, including false pest reports, ghost pickup requests, or fraudulent submissions;
- Your violation of any third-party rights, including intellectual property rights or privacy rights;
- Your failure to secure your account credentials, resulting in unauthorized access;
- Your reliance on AI-generated advice without consultation with a qualified agronomist, resulting in crop or financial loss for which a third party seeks to hold Sasini responsible.
18.2 Sasini's Right to Assume Control
Sasini reserves the right, at its own expense, to assume exclusive control of any matter otherwise subject to indemnification by you. In such a case, you agree to cooperate fully with Sasini's legal representatives. You shall not settle any claim that imposes any obligation on any Sasini Party without Sasini's prior written consent.
Article 19Dispute Resolution & Governing Law
19.1 Governing Law
This Agreement and any dispute arising out of or relating to it shall be governed by and construed in accordance with the laws of the Republic of Kenya, including the Kenya Data Protection Act, 2019, the Law of Contract Act (Cap. 23), the Consumer Protection Act, 2012, and the Information Communication Technology Act (Cap. 411A), without reference to any conflict of law principles that would apply the laws of any other jurisdiction.
19.2 Good Faith Negotiation
Before initiating any formal dispute resolution process, you agree to first attempt to resolve any dispute with Sasini through good faith negotiation. You must:
- Submit a written notice of your dispute to sasiniapp@sasini.co.ke, clearly describing the nature of the dispute, the relief sought, and any relevant factual background;
- Allow Sasini thirty (30) calendar days from receipt of the notice to respond and engage in good faith resolution discussions.
Formal proceedings may not be commenced until the 30-day good faith negotiation period has elapsed, unless the nature of the dispute requires emergency relief.
19.3 Binding Arbitration
If a dispute is not resolved through good faith negotiation within thirty (30) days, the following binding arbitration process shall apply:
- Arbitration Body: Any unresolved dispute shall be finally resolved by binding arbitration administered by the Nairobi Centre for International Arbitration (NCIA) in accordance with its applicable rules.
- Seat and Language: The seat of the arbitration shall be Nairobi, Kenya. Proceedings shall be conducted in English.
- Number of Arbitrators: Disputes below KES 5,000,000 shall be resolved by a sole arbitrator. Disputes of KES 5,000,000 or above shall be resolved by a panel of three (3) arbitrators.
- Arbitral Award: The arbitral award shall be final and binding on both parties and may be enforced in any court of competent jurisdiction.
19.4 Exceptions to Arbitration
Notwithstanding Section 19.3, either party may seek emergency injunctive, declaratory, or other equitable relief from any court of competent jurisdiction in Kenya to prevent immediate, irreparable harm to intellectual property rights, to prevent the dissemination of confidential information, or to enforce the account suspension or termination provisions of Article 15.
19.5 Class Action Waiver
To the fullest extent permitted by applicable Kenyan law, you agree that any dispute resolution proceeding will be conducted solely on an individual basis and not as a class, collective, or representative action. You waive any right to bring or participate in any class action lawsuit or class-wide arbitration against Sasini.
19.6 Time Limit for Claims
Any claim or cause of action arising out of or related to this Agreement or your use of the App must be initiated within one (1) year from the date on which the claim accrued. Claims not initiated within this period are permanently time-barred, regardless of any applicable statute of limitations.
Article 20App Store — Specific Terms & Compliance
20.1 Google Play Store — Additional Terms
If you downloaded the App from the Google Play Store:
- You acknowledge that Google LLC is not a party to this Agreement and has no obligation to provide any maintenance, support, or warranty for the App.
- Google LLC is not responsible for addressing any claims by you or any third party relating to the App, including product liability claims, consumer protection claims, or intellectual property infringement claims.
- In the event of a conflict between this Agreement and Google Play's Terms of Service, Google Play's Terms shall prevail to the extent of the conflict.
- Account Deletion: In compliance with Google Play's User Data Policy, users can delete their account and all personal data directly within the App (Settings > Delete Account) or by emailing sasiniapp@sasini.co.ke. Deletion is permanent and irreversible.
20.2 Apple App Store — Additional Terms
If you downloaded the App from the Apple App Store:
- You acknowledge that Apple Inc. is not a party to this Agreement and has no obligation to provide any maintenance, support, or warranty for the App.
- In the event of any failure of the App to conform to any applicable warranty, you may notify Apple Inc., and Apple Inc. will refund you the purchase price (if any) for the App. Apple Inc. will have no other warranty obligation with respect to the App.
- Apple Inc. and its subsidiaries are third-party beneficiaries of this Agreement. Upon your acceptance of this Agreement, Apple Inc. will have the right to enforce this Agreement against you as a third-party beneficiary.
- You represent and warrant that you are not located in a country subject to a U.S. Government embargo or designated as a 'terrorist supporting' country, and that you are not listed on any U.S. Government list of prohibited or restricted parties.
- Account Deletion: In compliance with App Store Review Guideline 5.1.1(v), users can delete their account directly within the App without requiring external contact.
Article 21General Provisions
21.1 Entire Agreement
This Agreement, together with the Privacy Policy and any other policies, notices, or guidelines published within the App, constitutes the entire agreement between you and Sasini with respect to the subject matter hereof and supersedes all prior and contemporaneous agreements, representations, communications, and understandings relating to such subject matter.
21.2 Severability
If any provision of this Agreement is held by a court or arbitrator of competent jurisdiction to be invalid, illegal, or unenforceable, such provision shall be modified to the minimum extent necessary to make it valid and enforceable, or if such modification is not possible, shall be severed from this Agreement. All other provisions shall remain in full force and effect.
21.3 Waiver
No failure or delay by Sasini in exercising any right, power, or remedy under this Agreement shall operate as a waiver of that right. No single or partial exercise shall prevent any other or further exercise of any right. A waiver of any default shall not be construed as a waiver of any subsequent default of the same or a different kind.
21.4 Assignment
You may not assign, transfer, delegate, or sublicense any of your rights or obligations under this Agreement without Sasini's prior written consent. Any purported assignment in violation of this provision is null and void. Sasini may assign its rights and obligations without your consent in connection with a merger, acquisition, corporate reorganization, or sale of substantially all of Sasini's assets.
21.5 Force Majeure
Sasini shall not be liable for any delay or failure to perform any obligation under this Agreement to the extent caused by a Force Majeure Event, including:
- Acts of God, natural disasters, extreme weather events;
- War, terrorism, civil unrest, riots, or armed conflict;
- Government actions, regulations, embargoes, sanctions, or court orders;
- Epidemics, pandemics, or public health emergencies declared by government authorities;
- Major internet or telecommunications outages, including failures by backbone providers;
- Attacks on Sasini's infrastructure by malicious third parties (DDoS, ransomware) that are not attributable to Sasini's failure to maintain industry-standard security.
Sasini will use commercially reasonable efforts to notify you of a Force Majeure Event and to resume normal service as promptly as possible.
21.6 Notices
21.7 Relationship of Parties
Nothing in this Agreement shall be construed to create any partnership, joint venture, agency, franchise, employment, or fiduciary relationship between you and Sasini. You are an independent user of the App, and neither party has the authority to bind the other.
21.8 No Third-Party Beneficiaries
Except as expressly provided in Article 20 with respect to Apple Inc., this Agreement does not create any third-party beneficiary rights or obligations. Nothing in this Agreement is intended to confer upon any person other than the parties any legal or equitable right, benefit, or remedy of any nature.
21.9 Language
This Agreement is written in English. If a translation is provided, the English version shall prevail in all cases of conflict or ambiguity. The Swahili language interface within the App is a convenience user interface and does not constitute a legally authoritative version of this Agreement.
21.10 Headings and Structure
Article headings and subheadings are included for convenience of reference only and shall not affect the interpretation of any provision of this Agreement.
Article 22Comprehensive Glossary of Terms
Acceptance of Terms
By installing the Sasini Mobile Application, creating an account, or using any feature of the App, you confirm that you have read this End-User License Agreement and Terms of Service in its entirety, that you understand it, and that you agree to be legally bound by all of its terms and conditions.
If you do not agree with any part of this Agreement, you must not install, access, or use the App, and must delete any installed copy of it from your device.
For any questions about this Agreement, contact: sasiniapp@sasini.co.ke | © 2026 Sasini PLC. All rights reserved. | EULA & ToS Version 1.0.0















