# Backend Architecture Service Layer

> Service layer pattern, business logic organization.

- Skill: `valec3/backend-architecture-service-layer` (Agent Skill)
- Install (CLI): `npx skillmds add valec3/backend-architecture-service-layer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/valec3/backend-architecture-service-layer/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: valec3 (https://skillmd.com/u/valec3)
- Updated: 2026-09-10
- Page: https://skillmd.com/skills/valec3/backend-architecture-service-layer

---


# Backend Architecture Service Layer

## When to use this skill
- Complex business logic
- Reusable operations
- Keeping controllers thin
- Testing business logic

## Workflow
- [ ] Create service classes
- [ ] Inject dependencies
- [ ] Keep one responsibility per service
- [ ] Return DTOs or entities
-[ ] Handle business rules

## Instructions

### Service Class
```php
<?php

namespace App\Services;

use App\Models\OrderModel;
use App\Entities\Order;

class OrderService
{
    public function __construct(
        private OrderModel $orderModel,
        private PaymentService $paymentService,
        private EmailService $emailService
    ) {}

    public function createOrder(array $data): Order
    {
        $order = $this->orderModel->insert($data);
        $this->paymentService->process($order);
        $this->emailService->sendConfirmation($order);
        return $order;
    }
}
```

## Resources
- Services encapsulate business logic
- Inject all dependencies
- Keep services focused

