> ## Documentation Index
> Fetch the complete documentation index at: https://docs.monieswitch.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Maker-Checker System

## What is Maker-Checker?

The Maker-Checker (Four-Eyes Principle) is a critical security control mechanism designed to enhance financial transaction safety and prevent unauthorized or fraudulent transactions. It introduces a two-step verification process for sensitive financial operations.

```mermaid theme={"system"}
flowchart TD
    A[Maker] -->|Creates Transaction| B{Transaction}
    
    B -->|Submits| C[Checker]
    C -->|Approves| D[Transaction Processed]
    C -->|Declines| E[Transaction Rejected]

    style A fill:#4CAF50,color:white
    style C fill:#2196F3,color:white
    style D fill:#8BC34A,color:white
    style E fill:#F44336,color:white

```

## Core Concept <Icon icon="arrows-split-up-and-left" iconType="solid" />

### Basic Workflow

1. **Maker**: Creates the initial transaction
2. **Checker**: Reviews and approves/declines the transaction

## Scope of Application

### Applicable Transactions

* Payout transactions
* Bulk payout transactions

### Activation

#### How to Enable

1. Navigate to Settings > Security
2. Toggle the Maker-Checker option
   <Frame>
     <img src="https://mintcdn.com/monieswitch-a80c7231/b9VCGopr8ctPliW8/images/marker-checker.png?fit=max&auto=format&n=b9VCGopr8ctPliW8&q=85&s=3cf62ea8c779a727263ff8387e805c53" width="2226" height="1062" data-path="images/marker-checker.png" />
   </Frame>

## Roles and Permissions

<CardGroup cols={2}>
  <Card title="Manage Maker-Checker" icon="user-gear">
    **Comprehensive Permissions:**

    * View maker-checker
    * View transaction approval
    * Manage maker-checker settings
    * Approve transactions
    * Decline transactions
    * View analytics

    **Key Capabilities:**

    * Full system configuration
    * Complete transaction control
    * Comprehensive reporting access
  </Card>

  <Card title="View Maker-Checker" icon="eye">
    **Limited Permissions:**

    * View maker-checker
    * View transaction approval

    **Key Characteristics:**

    * Read-only access
    * No modification rights
    * No approval capabilities
  </Card>
</CardGroup>

## Permission Matrix

| Permission                | Manage Role                            | View Role                              |
| ------------------------- | -------------------------------------- | -------------------------------------- |
| View Maker-Checker        | <Icon icon="check" iconType="solid" /> | <Icon icon="check" iconType="solid" /> |
| View Transaction Approval | <Icon icon="check" iconType="solid" /> | <Icon icon="check" iconType="solid" /> |
| Manage Maker-Checker      | <Icon icon="check" iconType="solid" /> | <Icon icon="x" iconType="solid" />     |
| Approve Transactions      | <Icon icon="check" iconType="solid" /> | <Icon icon="x" iconType="solid" />     |
| Decline Transactions      | <Icon icon="check" iconType="solid" /> | <Icon icon="x" iconType="solid" />     |
| View Analytics            | <Icon icon="check" iconType="solid" /> | <Icon icon="x" iconType="solid" />     |

## Transaction Lifecycle

```mermaid theme={"system"}
stateDiagram-v2
    [*] --> Initiated : Maker Creates
    Initiated --> Pending : Submit for Approval
    Pending --> Approved : Checker Approves
    Pending --> Declined : Checker Declines
    Approved --> Processed
    Declined --> [*]
    Processed --> [*]

    state Processed {
        [*] --> Completed
        Completed --> [*]
    }
```

1. **Initiation (Maker)**

   * Create transaction
   * Submit for approval
   * Transaction status: Pending

2. **Review (Checker)**

   * Examine transaction details
   * Options:
     * Approve transaction
     * Decline transaction

3. **Outcome**
   * Approved: Transaction processed
   * Declined: Transaction rejected
   * Pending: Awaiting review

## Best Practices

1. **Segregation of Duties**

   * Makers cannot approve their own transactions
   * Checkers must be different from makers

2. **Security Measures**
   * Implement multi-factor authentication
   * Maintain comprehensive audit logs
   * Regularly review role assignments

## Troubleshooting

* **Transaction Stuck**: Contact system administrator
* **Permission Issues**: Review role configuration
* **Approval Delays**: Check checker availability
