PHPackages                             codebuglab/noon-payment-laravel - 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. [API Development](/categories/api)
4. /
5. codebuglab/noon-payment-laravel

ActiveLibrary[API Development](/categories/api)

codebuglab/noon-payment-laravel
===============================

Integrate noon payment API with Laravel

v0.0.8(4y ago)158.1k↑120%2[1 issues](https://github.com/codebuglab/noon-payment-laravel/issues)MITPHPPHP &gt;=7.0

Since May 25Pushed 4y ago2 watchersCompare

[ Source](https://github.com/codebuglab/noon-payment-laravel)[ Packagist](https://packagist.org/packages/codebuglab/noon-payment-laravel)[ RSS](/packages/codebuglab-noon-payment-laravel/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (8)Dependencies (2)Versions (10)Used By (0)

⚡⚡⚡ Noon Payment with Laravel
=============================

[](#-noon-payment-with-laravel)

Integrate [NoonPayment](https://www.noonpayments.com/) API with Laravel

[![Issues](https://camo.githubusercontent.com/ea3765f12ed122639e26b0df214e9f65ec1c4611c46f8a8b990575c3e0853946/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732f636f64656275676c61622f6e6f6f6e2d7061796d656e742d6c61726176656c)](https://github.com/codebuglab/noon-payment-laravel/issues)[![Forks](https://camo.githubusercontent.com/71ed150683ba086303c6a3ac329f6717558cdb2441fe0f892fc2fe06b654f16e/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f666f726b732f636f64656275676c61622f6e6f6f6e2d7061796d656e742d6c61726176656c)](https://github.com/codebuglab/noon-payment-laravel/network/members)[![Stars](https://camo.githubusercontent.com/e6a16b0aa65b751a47046abc3b33d6e16452c18029b2e1943dfed65b6c34694a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f636f64656275676c61622f6e6f6f6e2d7061796d656e742d6c61726176656c)](https://github.com/codebuglab/noon-payment-laravel/stargazers)[![Stars](https://camo.githubusercontent.com/b953bb454142fc78a3e9fbba17a1acdd9081413cd0f7ad02b0fef031c753f296/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f636f64656275676c61622f6e6f6f6e2d7061796d656e742d6c61726176656c)](https://packagist.org/packages/codebuglab/noon-payment-laravel)

[![Noon Payment with laravel](banner.png)](banner.png)

Table of contents
------------------

[](#table-of-contents-)

- [⚡⚡⚡ Noon Payment with Laravel](#-noon-payment-with-laravel)
    - [Setup](#setup)
        - [Installation](#installation)
        - [Config](#config)
    - [Publish (optional)](#publish-optional)
    - [Routes (optional)](#routes-optional)
    - [Test Card](#test-card)
    - [Available API Methods](#available-api-methods)
        - [Initiate](#initiate)
        - [Get Order](#get-order)
    - [Notices](#notices)
    - [License](#license)

Setup
-----

[](#setup)

### Installation

[](#installation)

To install this package through composer run the following command in the terminal

```
composer require codebuglab/noon-payment-laravel
```

### Config

[](#config)

Refer to [Noon docs](https://docs.noonpayments.com/start/authorization) to get your info then add them to `.env` file

```
NOON_PAYMENT_BUSINESS_ID=
NOON_PAYMENT_APP_NAME=
NOON_PAYMENT_APP_KEY=
NOON_PAYMENT_TOKEN_IDENTIFIER=
NOON_PAYMENT_RETURN_URL=http://127.0.0.1:8000/noon_payment_response
# Change the mode to Live for the Production or set it as Test
NOON_PAYMENT_MODE=Test
# Pre-configured order route categories (the categories will be mentioned also in the initial setup email)
NOON_PAYMENT_ORDER_CATEGORY=
# Channels are pre-defined and limited to Web / Mobile (the channels will be mentioned also in the initial setup email)
NOON_PAYMENT_CHANNEL=web
# Default value - Payment API Endpoint - Chooses
# https://api.noonpayments.com/payment/v1/
# https://api-test.noonpayments.com/payment/v1/
NOON_PAYMENT_PAYMENT_API=https://api-test.noonpayments.com/payment/v1/

```

Publish (optional)
------------------

[](#publish-optional)

Run this command in terminal to publish package files in your app

```
php artisan vendor:publish --provider="CodeBugLab\NoonPayment\NoonPaymentServiceProvider"
```

This will publish 2 files

```
1- App/Http/Controllers/NoonPaymentController.php
2- config/noon_payment.php
```

- Feel free to change `noon_payment.php` config file and set package configuration on this file instead of `.env` if you want
- If you don't need the config file you can run this command instead

```
php artisan vendor:publish --provider="CodeBugLab\NoonPayment\NoonPaymentServiceProvider" --tag=controller
```

- `NoonPaymentController.php` is a simple example to use it in your project, consider it as a demo.

Routes (optional)
-----------------

[](#routes-optional)

This package has two routes using `NoonPaymentController.php` file

- Create payment page:

```
http://yourwebsite/noon_payment
```

Which call function ( `NoonPaymentController@index` ) by `GET` Request

- Receiving response

```
http://yourwebsite/noon_payment_response
```

Which receive a `GET` response through function ( `NoonPaymentController@response` )

Test Card
---------

[](#test-card)

the link for test cards by official documentation =&gt; [Test Cards](https://docs.noonpayments.com/test/cards)

Available API Methods
---------------------

[](#available-api-methods)

### Initiate

[](#initiate)

- This will initiate new order.

```
$data =[
    "order" => [
        "reference" => "1",
        "amount" => "10",
        "currency" => "SAR",
        "name" => "Sample order name",
    ],
    "configuration" => [
        "locale" => "en"
     ]
]
$response = NoonPayment::getInstance()->initiate($data);
```

- Simply you can use response and redirect to pay page through this code

```
if ($response->resultCode == 0) {
    return redirect($response->result->checkoutData->postUrl);
}
```

- After sitting your payment information or cancel the process you will go to response page
- Remember you set it up earlier in `.env` file like this

```
NOON_PAYMENT_RETURN_URL=http://127.0.0.1:8000/noon_payment_response
```

- For more information about request and response for initiate visit documentation ( [Payment Initiate](https://docs.noonpayments.com/payment-api/reference/initiate) )

### Get Order

[](#get-order)

- This will get your order information by order id that retrieved by initiate function

```
 $response = NoonPayment::getInstance()->getOrder($orderId);
```

- Simply you can check if transaction is success by using `$response` variable like this

```
if (
    $response->result->transactions[0]->type == "SALE" &&
    $response->result->transactions[0]->status == "SUCCESS"
) {
    //success Message
}
```

- For more information about response and request for initiate visit documentation ( [Payment Get Order](https://docs.noonpayments.com/payment-api/reference/get-order) )

Notices
-------

[](#notices)

- If you facing any problems using this package try use [Publish](#publish) and [Routes](#routes) this will give you a simple example in `NoonPaymentController.php` file.
- If you want to make `Refund` or `Cancel` for order then this package doesn't provide these methods yet, So we highly recommend to read full [Documentation](https://docs.noonpayments.com/start/introduction) before try this and making a pull request.

License
-------

[](#license)

This package is a free software distributed under the terms of the MIT license.

###  Health Score

29

—

LowBetter than 59% of packages

Maintenance19

Infrequent updates — may be unmaintained

Popularity32

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity42

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 52.9% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~44 days

Recently: every ~77 days

Total

8

Last Release

1512d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/1b739843a13277460d1b33db36cacdd3fe8c5c5942f458ed26284aba28c16849?d=identicon)[CodeBugLab](/maintainers/CodeBugLab)

![](https://www.gravatar.com/avatar/c933185e0cb76b98ed1896622a2128f20e5dd92a305f8e5d7253b7f4e39aa84b?d=identicon)[moelkomy](/maintainers/moelkomy)

---

Top Contributors

[![moelkomy](https://avatars.githubusercontent.com/u/70802292?v=4)](https://github.com/moelkomy "moelkomy (9 commits)")[![amrography](https://avatars.githubusercontent.com/u/9614340?v=4)](https://github.com/amrography "amrography (7 commits)")[![CommentakMedia](https://avatars.githubusercontent.com/u/70331129?v=4)](https://github.com/CommentakMedia "CommentakMedia (1 commits)")

---

Tags

phpapilaravelonlinenoon payment

### Embed Badge

![Health badge](/badges/codebuglab-noon-payment-laravel/health.svg)

```
[![Health](https://phpackages.com/badges/codebuglab-noon-payment-laravel/health.svg)](https://phpackages.com/packages/codebuglab-noon-payment-laravel)
```

###  Alternatives

[joisarjignesh/bigbluebutton

BigBlueButton Server API Library for Laravel

162145.5k1](/packages/joisarjignesh-bigbluebutton)[jeroen-g/flickr

Modern PHP package to make Flickr API calls. Ships with Laravel implementation.

2559.9k2](/packages/jeroen-g-flickr)[exlo89/laravel-sevdesk-api

A helpful Sevdesk API client for Laravel.

1116.5k](/packages/exlo89-laravel-sevdesk-api)[dystcz/lunar-api

Dystore API layer for Lunar e-commerce package

411.1k3](/packages/dystcz-lunar-api)[yxx/laravel-quick

agile development

145.3k](/packages/yxx-laravel-quick)[gufy/whmcs

WHMCS API for Laravel 5

201.7k](/packages/gufy-whmcs)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
