KoryHub
Payments · @moussa

@moussa/mobile-money-resilient

Encaissement Mobile Money résistant aux coupures réseau, sans double débit.

Published · 1.2.0
Verified in Prod
MIT
php
kory.json 4 KB · SHA-256 9a8f51da2e99…
{
    "name": "@moussa/mobile-money-resilient",
    "version": "1.2.0",
    "description": "Encaissement Mobile Money résistant aux coupures réseau, sans double débit.",
    "license": "MIT",
    "language": "php",
    "tags": [
        "mobile-money",
        "airtel-money",
        "moov-money",
        "offline",
        "laravel"
    ],
    "files": [
        "src/PaymentService.php",
        "src/Contracts/PaymentGateway.php",
        "src/Gateways/AirtelMoneyGateway.php",
        "src/Gateways/MoovMoneyGateway.php",
        "src/PaymentStatus.php",
        "src/PendingPaymentQueue.php",
        "src/RetryPendingPayments.php",
        "src/WebhookHandler.php"
    ],
    "architecture": {
        "components": [
            {
                "id": "PaymentService",
                "file": "src/PaymentService.php",
                "kind": "class"
            },
            {
                "id": "PaymentGateway",
                "file": "src/Contracts/PaymentGateway.php",
                "kind": "interface"
            },
            {
                "id": "AirtelMoneyGateway",
                "file": "src/Gateways/AirtelMoneyGateway.php",
                "kind": "class"
            },
            {
                "id": "MoovMoneyGateway",
                "file": "src/Gateways/MoovMoneyGateway.php",
                "kind": "class"
            },
            {
                "id": "PaymentStatus",
                "file": "src/PaymentStatus.php",
                "kind": "enum"
            },
            {
                "id": "PendingPaymentQueue",
                "file": "src/PendingPaymentQueue.php",
                "kind": "class"
            },
            {
                "id": "RetryPendingPayments",
                "file": "src/RetryPendingPayments.php",
                "kind": "class"
            },
            {
                "id": "WebhookHandler",
                "file": "src/WebhookHandler.php",
                "kind": "class"
            }
        ],
        "links": [
            {
                "from": "PaymentService",
                "to": "PaymentGateway",
                "kind": "uses"
            },
            {
                "from": "PaymentService",
                "to": "PendingPaymentQueue",
                "kind": "uses"
            },
            {
                "from": "PaymentService",
                "to": "PaymentStatus",
                "kind": "uses"
            },
            {
                "from": "AirtelMoneyGateway",
                "to": "PaymentGateway",
                "kind": "implements"
            },
            {
                "from": "MoovMoneyGateway",
                "to": "PaymentGateway",
                "kind": "implements"
            },
            {
                "from": "RetryPendingPayments",
                "to": "PendingPaymentQueue",
                "kind": "uses"
            },
            {
                "from": "RetryPendingPayments",
                "to": "PaymentService",
                "kind": "calls"
            },
            {
                "from": "WebhookHandler",
                "to": "PaymentGateway",
                "kind": "uses"
            },
            {
                "from": "WebhookHandler",
                "to": "PendingPaymentQueue",
                "kind": "calls"
            }
        ]
    },
    "requires": [
        {
            "ecosystem": "composer",
            "name": "php",
            "version": ">=8.3"
        },
        {
            "ecosystem": "composer",
            "name": "laravel/framework",
            "version": "^13.0"
        }
    ]
}