Join Fintech Sacco

This handles the Joining of Fintech Sacco and membership activation to the Sacco.

Joining the Fintech Sacco

The Fintech Sacco is designed to empower users by providing access to saving and loan services. Membership requires submitting user details, paying a registration fee, and passing KYC validation. Once a user becomes a member, they can save funds, view loan limits, and access Sacco benefits.

Joining Process Overview

  1. Retrieve Sacco Terms and Conditions: Users must review the Sacco's terms and conditions before proceeding with registration.

  2. Accept Terms and Conditions: Users must explicitly agree to the Sacco’s terms to continue.

  3. Pay Registration Fee: Membership requires a one-time fee of Kes 1000 (or app-specific fees).

  4. Submit Application: Details from the user’s KYC profile are used to process the application.

  5. Approval: The Sacco reviews the application and approves or rejects it.

  6. Access Membership Benefits: Approved members can start saving, view loan limits, and download the Sacco manual.


Endpoints


1. Retrieve Sacco Terms and Conditions

Provide members with the Sacco's terms and conditions to review before registration.

Endpoint:

http GET /api/v1/sacco/terms

Response:

{
  "success": true,
  "data": {
    "terms": "By joining the Fintech Sacco, you agree to abide by all the rules and regulations, including timely repayment of loans and adherence to saving policies..."
  }
}

2. Accept Sacco Terms

Allow members to accept the terms and conditions of the Sacco as part of the registration process.

Endpoint:

http POST /api/v1/sacco/terms/accept

Request Body:

Field
Type
Required
Description

user_id

string

Yes

The unique identifier of the user.

app_id

string

Yes

The unique identifier of the app.

Response:

{
  "success": true,
  "message": "Terms and conditions accepted successfully."
  "timestamp: "Store the time they accepted the terms"
}

3. Pay Registration Fee

Enable users to pay the Sacco registration fee. This payment must be completed before the application is submitted.

Endpoint:

http POST /api/v1/sacco/register/fee

Request Body:

Field
Type
Required
Description

user_id

string

Yes

The unique identifier of the user.

app_id

string

Yes

The unique identifier of the app.

payment_method

string

Yes

The payment method (e.g., "Mpesa").

Response:

{
  "success": true,
  "message": "Registration fee paid successfully.",
  "data": {
    "transaction_id": "txn_12345",
    "amount_paid": 1000
  }
}

4. Submit Membership Application

Allow users to submit their membership application to the Sacco. Details from the user’s existing KYC profile will be used.

Endpoint:

http POST /api/v1/sacco/register

Request Body:

Field
Type
Required
Description

user_id

string

Yes

The unique identifier of the user.

app_id

string

Yes

The unique identifier of the app.

terms_accepted

boolean

Yes

Indicates if terms are accepted.

fee_paid

boolean

Yes

Indicates if the registration fee is paid.

Response:

{
  "success": true,
  "message": "Membership application submitted successfully.",
  "data": {
    "application_id": "sacco_app_6789",
    "status": "pending"
  }
}

5. Check Membership Status

Allow users to check the status of their membership application.

Endpoint:

http GET /api/v1/sacco/status/{application_id}

Response:

{
  "success": true,
  "data": {
    "application_id": "sacco_app_6789",
    "status": "approved",
    "membership_number": "FINTECH123456"
  }
}

6. Download Sacco Manual

Allow users to download the Sacco manual, which includes detailed information on Sacco rules, saving guidelines, and loan policies.

Endpoint:

http GET /api/v1/sacco/manual

Response: Headers:

  • Content-Type: application/pdf

  • Content-Disposition: attachment; filename="Fintech_Sacco_Manual.pdf"

Response Body (if applicable):

{
  "success": true,
  "message": "Sacco manual downloaded successfully.",
  "data": {
    "url": "https://cdn.tukupay.com/sacco/manual/Fintech_Sacco_Manual.pdf"
  }
}

This structured approach ensures a smooth and transparent process for users joining the Sacco while meeting compliance and operational standards.