---
tags: [inventory, controller]
module: Inventory
---

# [Controller]RequisitionsController

## Connections
[[_Inventory]] · [[[Model]Requisition]] · [[[Model]Warehouse]] · [[[Service]RequisitionServices]] · [[[Repo]Repositories]] · [[[Routes]Routes]] · [[[Policy]Policies]] · [[[Cross]CrossModuleDependencies]]

## Source
`Modules/Inventory/Http/Controllers/RequisitionsController.php`

## Responsibilities
- Full CRUD for requisitions (INBOUND / OUTBOUND / TRANSFER)
- Status change: ACCEPT validates stock (OUTBOUND), transfers quantities (TRANSFER), applies stock movement
- Convert requisition → Invoice (Sales) or PurchaseBill (Purchases)
- Create requisition bulk from Invoice
- PDF export + print via ExportingRequisitionController

## Key Methods
| Method | Route | Permission |
|---|---|---|
| store | POST /inventory/requisitions/store | requisitions.create |
| changeRequisitionStatus | PUT /{req}/update-status/{status} | requisitions.edit |
| createInvoiceFromRequisition | GET /create-invoice-from-requisition/{req} | requisitions.create |
| createBillFromRequisition | GET /create-bill-from-requisition/{req} | requisitions.create |
| createFromInvoice | — (Invoice → Requisition bulk) | requisitions.create |
