PHPackages                             cyvelnet/laravel-billplz - 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. [Payment Processing](/categories/payments)
4. /
5. cyvelnet/laravel-billplz

ActiveLibrary[Payment Processing](/categories/payments)

cyvelnet/laravel-billplz
========================

Flexible billing and payment solution from Billplz for laravel

v0.1.0(9y ago)87016[3 issues](https://github.com/Cyvelnet/laravel-billplz/issues)MITPHPPHP &gt;=5.5.9

Since Sep 20Pushed 8y ago3 watchersCompare

[ Source](https://github.com/Cyvelnet/laravel-billplz)[ Packagist](https://packagist.org/packages/cyvelnet/laravel-billplz)[ RSS](/packages/cyvelnet-laravel-billplz/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (3)Versions (2)Used By (0)

laravel-billplz
===============

[](#laravel-billplz)

[![StyleCI](https://camo.githubusercontent.com/a894f76028b5c37743735332ad4b2a045c273d8ac0d46d5c777328d6f50aa44b/68747470733a2f2f7374796c6563692e696f2f7265706f732f36383538373934372f736869656c643f6272616e63683d6d6173746572)](https://styleci.io/repos/68587947)[![Build Status](https://camo.githubusercontent.com/9a14531e17244464921dcfaf8c4b62b4899b1c60c8822c751f51782d5fe0beec/68747470733a2f2f7472617669732d63692e6f72672f437976656c6e65742f6c61726176656c2d62696c6c706c7a2e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/Cyvelnet/laravel-billplz)[![Latest Stable Version](https://camo.githubusercontent.com/378d8ecd191a9b639b7bd2cbef0c1e1aa05b02d0611f709210460fd94793ed79/68747470733a2f2f706f7365722e707567782e6f72672f637976656c6e65742f6c61726176656c2d62696c6c706c7a2f762f737461626c65)](https://packagist.org/packages/cyvelnet/laravel-billplz)[![Latest Unstable Version](https://camo.githubusercontent.com/9265e39103e5903b56fa5c64fae58dececb4eaea542c57beb11a3da1b0438641/68747470733a2f2f706f7365722e707567782e6f72672f637976656c6e65742f6c61726176656c2d62696c6c706c7a2f762f756e737461626c65)](https://packagist.org/packages/cyvelnet/laravel-billplz)[![License](https://camo.githubusercontent.com/b9441d8f528979fdb1a6fd4e19acd2861b4249cf63c612518f6e1dfd34a0dec8/68747470733a2f2f706f7365722e707567782e6f72672f637976656c6e65742f6c61726176656c2d62696c6c706c7a2f6c6963656e7365)](https://packagist.org/packages/cyvelnet/laravel-billplz)

Laravel-billplz is a simple service providers and generator to connect your laravel powered app to Billplz api v3.

Before you getting started, kindly visit  to register an acount and read  for better understanding.

### Install

[](#install)

Require this package with composer using the following command:

```
composer require cyvelnet/laravel-billplz
```

After updating and installed, add the service provider to the `providers` array in `config/app.php` file

```
Cyvelnet\LaravelBillplz\LaravelBillplzServiceProvider::class
```

And finally add the facade to the `aliases` array section in `config/app.php`

```
Cyvelnet\LaravelBillplz\Facades\Billplz::class
```

### How to use

[](#how-to-use)

#### Bills api

[](#bills-api)

##### Create a bill

[](#create-a-bill)

###### To create a billplz bill

[](#to-create-a-billplz-bill)

```
\Billplz::issue(function (Cyvelnet\LaravelBillplz\Messages\BillMessage $bill)
    {
        // bill with a amount RM50
        $bill->to('name', 'email', 'mobile')
             ->amount(50) // will multiply with 100 automatically, so a RM500 bill, you just pass 500 instead of 50000
             ->callbackUrl('http://foorbar.com/foo/bar/webhook/')
             ->description('description');
    });
```

An UnacceptableRequestException will be throw for any call with any missing parameter.

Alternatively, you may generate reusable bill with artisan command `php artisan make:bill MonthlyManagementBill`

```
\Billplz::send(new MonthlyManagementBill())
        ->to('foobar')
        ->viaEmail('foo@bar.com') // you may use viaSms('mobile no') or viaEmailAndSms('email', 'mobile no')
```

##### To delete an existing bill

[](#to-delete-an-existing-bill)

```
$request = \Billplz::delete('bill_id');

if($request->isSuccess())
{
    // perform after deletion operation
}
```

##### To retrieves a bill

[](#to-retrieves-a-bill)

```
$bill = \Billplz::get('bill_id')->toArray();
```

A BillNotFoundException will be throw for any missing bill.

#### Collections api

[](#collections-api)

##### To create a collection

[](#to-create-a-collection)

```
    $request = \Billplz::collection('collection title');

    if($request->isSuccess())
    {
        $collection = $request->toArray() // you can call getRawBillplzResponse(false) to get response in POPO
    }
```

to customize your collection more, pass in an anonymous function as the second parameter

```
    $request = \Billplz::collection('collection title', function (\Cyvelnet\LaravelBillplz\Messages\CollectionMessage $collection) {

        // split a payment by RM50
        $collection->logo(storage_path('/billplz/my-logo.jpg'))
                   ->splitPaymentByFixed('foo@bar.com', 50)     // will convert into 5000 cents automatically
    });
```

##### To create an open collection with fixed amount

[](#to-create-an-open-collection-with-fixed-amount)

```
    // create a open collection with a fixed amount RM500
    $request = \Billplz::openCollection('collection title', 'collection description', 500);

    if($request->isSuccess())
    {
        $collection = $request->toArray() // you can call getRawBillplzResponse(false) to get response in POPO
    }
```

##### To create an open collection with any amount and any quantity pass a closure as third parameter

[](#to-create-an-open-collection-with-any-amount-and-any-quantity-pass-a-closure-as-third-parameter)

```
    // create a open collection with a fixed amount RM500
    $request = \Billplz::openCollection('collection title', 'collection description', function (\Cyvelnet\LaravelBillplz\Messages\OpenCollectionMessage $collection) {

        $collection->anyAmountAndQty();
        //         ->splitPaymentByVariable('foo@bar.com', 50);  // split payment by 50%
        //         ->tax(6)   // 6% tax
        //         ->photo(storage_path('/billplz/my-photo.jpg'))
        //         ->reference1('your references')

    });

    if($request->isSuccess())
    {
        $collection = $request->toArray() // you can call getRawBillplzResponse(false) to get response in POPO
    }
```

### Sandbox

[](#sandbox)

Billplz api v3, enabled sandbox functionality where developers are allowed to isolates api request to a sandbox and trigger payment completion on demand.

By default sandbox is disabled, to enable sandbox mode add a `BILLPLZ_ENABLE_SANDBOX = true` entry to .env and ensure you have proper configured api\_key and collection\_id for both production and sandbox.

###  Health Score

26

—

LowBetter than 41% of packages

Maintenance13

Infrequent updates — may be unmaintained

Popularity22

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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

Unknown

Total

1

Last Release

3570d ago

### Community

Maintainers

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

---

Top Contributors

[![Cyvelnet](https://avatars.githubusercontent.com/u/11516087?v=4)](https://github.com/Cyvelnet "Cyvelnet (34 commits)")

---

Tags

laravelbillplz

### Embed Badge

![Health badge](/badges/cyvelnet-laravel-billplz/health.svg)

```
[![Health](https://phpackages.com/badges/cyvelnet-laravel-billplz/health.svg)](https://phpackages.com/packages/cyvelnet-laravel-billplz)
```

###  Alternatives

[craftcms/cms

Craft CMS

3.6k3.6M2.9k](/packages/craftcms-cms)[spatie/laravel-health

Monitor the health of a Laravel application

87411.3M154](/packages/spatie-laravel-health)[venturedrake/laravel-crm

A free open source CRM built as a package for laravel projects

42010.0k](/packages/venturedrake-laravel-crm)[sebdesign/laravel-viva-payments

A Laravel package for integrating the Viva Payments gateway

4849.3k](/packages/sebdesign-laravel-viva-payments)[simplestats-io/laravel-client

Analytics for Laravel. Track visitors, registrations, and payments. Discover which channels actually drive revenue, not just traffic. Server-side, GDPR compliant, ad-blocker proof.

5019.3k](/packages/simplestats-io-laravel-client)

PHPackages © 2026

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