PHPackages                             idmahbub/ppob - 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. idmahbub/ppob

ActiveLibrary[API Development](/categories/api)

idmahbub/ppob
=============

PPOB Multi Pulsa API PHP Library.

1.8(2y ago)9371GPL-3.0-or-laterPHPPHP ^7.1|^8.0CI failing

Since Feb 21Pushed 2mo ago1 watchersCompare

[ Source](https://github.com/idmahbub/ppobcurl)[ Packagist](https://packagist.org/packages/idmahbub/ppob)[ RSS](/packages/idmahbub-ppob/feed)WikiDiscussions master Synced 3w ago

READMEChangelogDependencies (3)Versions (4)Used By (0)

PPOB Package for Laravel 6.x
============================

[](#ppob-package-for-laravel-6x)

The purpose of this package is to allow your website to purchase many prepaid digital products like Token PLN, Pulsa, Paket Data and more in Indonesia.

Right now, the following providers are supported:

- MobilePulsa
- PortalPulsa
- Tripay
- IndoH2H
- DIGIFLAZZ

Installation
------------

[](#installation)

To get started with PPOB, run this command or add the package to your `composer.json`

```
composer require idmahbub/ppob

```

Configuration
-------------

[](#configuration)

The PPOB package use Laravel autodiscovery so it will be loaded automatically. Copy the `config` file with the following command: `php artisan vendor:publish --provider="Idmahbub\PPOB\PPOBServiceProvider"`

Finally add your provider's account in the `.env` file:

```
MOBILEPULSA_USERNAME=
MOBILEPULSA_APIKEY=

PORTALPULSA_USERNAME=
PORTALPULSA_APIKEY=
PORTALPULSA_SECRET=

TRIPAY_APIKEY=
TRIPAY_PIN=

INDOH2H_USERNAME=
INDOH2H_APIKEY=

DIGIFLAZZ_USERNAME=
DIGIFLAZZ_DEV_APIKEY=
DIGIFLAZZ_PROD_APIKEY=

```

To add more accounts in a single provider, add those accounts in `config/ppob.php`

```
...
'accounts' => [
    'account-A' => [
        'provider' => 'mobile-pulsa',
        'username' => 'usernameA',
        'apikey' => 'apikeyA'
    ],
    'account-B' => [
        'provider' => 'mobile-pulsa',
        'username' => 'usernameB',
        'apikey' => 'apikeyB'
    ],
]
...
```

How To Use
----------

[](#how-to-use)

After all sets, use the PPOB as follows:

```
use Idmahbub\PPOB\Products\Pulsa;
use Idmahbub\PPOB\Products\TokenPLN;
use Idmahbub\PPOB\Products\GenericProduct;

// Topup Pulsa
$status = PPOB::topup(new Pulsa('082112345678', 50000), 'ref123');

// Check your deposit balance
$balance = PPOB::balance();

// Check status of a transaction
$status = PPOB::status('ref123');

// Use another account
$status = PPOB::account('account-portalpulsa')->topup(
  new TokenPLN('no-meter', 'no-hp', 100000), 'ref456'
);

// Purchase other products
$status = PPOB::account('account-tripay')->topup(
  new GenericProduct('subscriber-id', 'no-hp', 'product-code'), 'ref789'
);

//add method Pricelist as pre or pasca
$json += array("df" => PPOB::account('account-jh2h')->pricelist($request->category));
```

Bugs &amp; Improvements
-----------------------

[](#bugs--improvements)

Feel free to report me any bug you found.

###  Health Score

34

—

LowBetter than 75% of packages

Maintenance56

Moderate activity, may be stable

Popularity14

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity49

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

Every ~0 days

Total

3

Last Release

864d ago

PHP version history (2 changes)1.8PHP ^7.1|^8.0

1.0PHP ^7.4

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/2823242?v=4)[Mahbub H](/maintainers/idmahbub)[@idmahbub](https://github.com/idmahbub)

---

Top Contributors

[![idmahbub](https://avatars.githubusercontent.com/u/2823242?v=4)](https://github.com/idmahbub "idmahbub (16 commits)")

### Embed Badge

![Health badge](/badges/idmahbub-ppob/health.svg)

```
[![Health](https://phpackages.com/badges/idmahbub-ppob/health.svg)](https://phpackages.com/packages/idmahbub-ppob)
```

###  Alternatives

[craftcms/cms

Craft CMS

3.6k3.6M3.1k](/packages/craftcms-cms)[tencentcloud/tencentcloud-sdk-php

TencentCloudApi php sdk

3741.3M46](/packages/tencentcloud-tencentcloud-sdk-php)[spatie/laravel-export

Create a static site bundle from a Laravel app

674146.0k6](/packages/spatie-laravel-export)[simplestats-io/laravel-client

Server-side analytics for Laravel that follows the full funnel from visit to registration to payment, attributed to the channel that drove it. Revenue, MRR, churn and ad-spend profit (ROAS/CAC) per channel. GDPR compliant, ad-blocker proof.

5021.9k](/packages/simplestats-io-laravel-client)[eslazarev/wildberries-sdk

Wildberries OpenAPI clients (generated).

273.0k](/packages/eslazarev-wildberries-sdk)[jasara/php-amzn-selling-partner-api

A fluent interface for Amazon's Selling Partner API in PHP

1348.7k1](/packages/jasara-php-amzn-selling-partner-api)

PHPackages © 2026

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