PHPackages                             gabebritto/laravel-simple-sqs - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Queues &amp; Workers](/categories/queues)
4. /
5. gabebritto/laravel-simple-sqs

ActiveLibrary[Queues &amp; Workers](/categories/queues)

gabebritto/laravel-simple-sqs
=============================

A Laravel package for asynchronous microservice communication via SQS with raw JSON payloads.

v0.1.2(2w ago)14MITPHPPHP ^8.0

Since May 20Pushed 2w agoCompare

[ Source](https://github.com/gabebritto/laravel-simple-sqs)[ Packagist](https://packagist.org/packages/gabebritto/laravel-simple-sqs)[ RSS](/packages/gabebritto-laravel-simple-sqs/feed)WikiDiscussions master Synced 1w ago

READMEChangelog (3)Dependencies (3)Versions (4)Used By (0)

Laravel Simple SQS Messenger
============================

[](#laravel-simple-sqs-messenger)

This Laravel package is designed to facilitate asynchronous microservices communication via AWS SQS using **pure JSON** payloads (without Laravel's native PHP serialization).

With this library, you can integrate and map incoming external JSON messages directly to **standard Laravel Jobs**, maintaining full compatibility with Laravel's native queue workers (`php artisan queue:work`).

---

JSON Payload Structure
----------------------

[](#json-payload-structure)

All messages sent and received must strictly adhere to this flat format:

```
{
  "job": "external-event",
  "data": {
    "event": "OrderCreated",
    "order_id": 123,
    "total": 150.00
  }
}
```

---

Installation &amp; Setup
------------------------

[](#installation--setup)

### 1. Requirements

[](#1-requirements)

Ensure that the `sqs` queue driver and the AWS SDK are already configured in your host Laravel application (`config/queue.php`).

### 2. Registering the Package

[](#2-registering-the-package)

In your main Laravel application's `composer.json`, add the local path repository:

```
"repositories": [
    {
        "type": "path",
        "url": "../laravel-simple-sqs"
    }
],
```

Then, install the package using:

```
composer require gabebritto/laravel-simple-sqs
```

### 3. Publish Configurations

[](#3-publish-configurations)

Publish the package configuration file using the artisan publish command:

```
php artisan vendor:publish --tag=sqs-messenger-config
```

This will generate the `config/sqs-messenger.php` file:

```
