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.0

Since Feb 21Pushed 1mo ago1 watchersCompare

[ Source](https://github.com/idmahbub/ppobcurl)[ Packagist](https://packagist.org/packages/idmahbub/ppob)[ RSS](/packages/idmahbub-ppob/feed)WikiDiscussions master Synced 5d 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

35

—

LowBetter than 79% of packages

Maintenance61

Regular maintenance activity

Popularity15

Limited adoption so far

Community8

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

Every ~0 days

Total

3

Last Release

816d ago

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

1.0PHP ^7.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/97b57899f003e287f07ad69de29bfef70cb031130e53a2e218cc48db1daecda0?d=identicon)[idmahbub](/maintainers/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

[skagarwal/google-places-api

Google Places Api

1913.0M8](/packages/skagarwal-google-places-api)[dcblogdev/laravel-microsoft-graph

A Laravel Microsoft Graph API (Office365) package

168285.5k1](/packages/dcblogdev-laravel-microsoft-graph)[vluzrmos/slack-api

Wrapper for Slack.com WEB API.

102589.1k3](/packages/vluzrmos-slack-api)[smodav/mpesa

M-Pesa API implementation

16363.7k1](/packages/smodav-mpesa)[jasara/php-amzn-selling-partner-api

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

1344.8k1](/packages/jasara-php-amzn-selling-partner-api)[grantholle/powerschool-api

A Laravel package to make interacting with PowerSchool less painful.

1715.6k1](/packages/grantholle-powerschool-api)

PHPackages © 2026

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