{
    "api_version": "1.0",
    "environment": "sandbox",
    "status": "active",
    "endpoints": [
        {
            "path": "\/api\/v1\/payin\/create",
            "method": "POST",
            "description": "Create a sandbox payment\/deposit request",
            "required_fields": [
                "trx_id",
                "amount",
                "method_code",
                "customer_name",
                "callback_url",
                "return_url"
            ],
            "optional_fields": [
                "customer_email",
                "customer_phone",
                "customer_address",
                "description"
            ]
        },
        {
            "path": "\/api\/v1\/payout\/create",
            "method": "POST",
            "description": "Create a sandbox withdrawal\/payout request",
            "required_fields": [
                "trx_id",
                "amount",
                "method_code",
                "account_number",
                "account_name",
                "notify_url"
            ],
            "optional_fields": [
                "bank_name",
                "branch_name",
                "routing_number",
                "description"
            ]
        },
        {
            "path": "\/api\/v1\/transaction\/status",
            "method": "POST",
            "description": "Check sandbox transaction status",
            "required_fields": [
                "transaction_id OR trx_id"
            ]
        }
    ],
    "method_codes": {
        "101": "bKash",
        "102": "Nagad",
        "103": "Rocket"
    },
    "authentication": {
        "headers": {
            "X-API-Key": "Sandbox API key (pk_test_...)",
            "X-Merchant-ID": "Sandbox Merchant ID",
            "Content-Type": "application\/json"
        }
    },
    "demo_credentials": {
        "merchant_id": "M-SANDBOX",
        "api_key": "pk_test_demo1234567890ab",
        "secret_key": "sk_test_demo1234567890ab"
    },
    "note": "No real money is moved. Payins return a hosted checkout page where you can simulate success\/failure; the result is sent to your callback_url."
}