PHPackages                             dohone/payment - 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. dohone/payment

ActiveLibrary[Payment Processing](/categories/payments)

dohone/payment
==============

Pay-out API To charge a customer, this means to send this form to DOHONE duly filled in by your system.

1.0.7(8mo ago)11571MITPHP

Since Apr 15Pushed 8mo ago1 watchersCompare

[ Source](https://github.com/yann-yvan/dohone-paiment)[ Packagist](https://packagist.org/packages/dohone/payment)[ RSS](/packages/dohone-payment/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (7)Dependencies (2)Versions (10)Used By (1)

DOHONE PAYOUT, PAYIN API AND WEB
================================

[](#dohone-payout-payin-api-and-web)

If you wish to make your customers pay by Orange Money, MTN Mobile Money, Express Union Mobile or DOHONE transfert, on your mobile application and your website with or without a DOHONE graphic interface, the principle is simple.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

[](#if-you-wish-to-make-your-customers-pay-by-orange-money-mtn-mobile-money-express-union-mobile-or-dohone-transfert-on-your-mobile-application-and-your-website-with-or-without-a-dohone-graphic-interface-the-principle-is-simple)

Features
--------

[](#features)

1. Make Quotation
2. Make Payment with Web interface
3. Make Payment without Web interface
4. Make SMS verification
5. Make payment verification
6. Make payout to mobile phone
7. Make payout to back account

Usage
-----

[](#usage)

### Step 1:

[](#step-1)

#### Installation (with Composer)

[](#installation-with-composer)

```
composer require dohone/payment

```

### Step 2:

[](#step-2)

#### Configuration

[](#configuration)

```
$ php artisan vendor:publish --provider="Dohone\DohonePayServiceProvider"
```

### Step 3:

[](#step-3)

#### Update your `config/dohone.php` config with your merchand hashcode

[](#update-your-configdohonephp-config-with-your-merchand-hashcode)

```
return [
   'merchantToken' => 'XXXXXXXX',
    'currency' => 'XAF',
    'projectName' => env('APP_NAME', "Dohone"),
    'projectLogo' => 'http://localhost/assets/images/logo.png',
    'endPage' => env('APP_URL', "http://localhost"),
    'payInNotifyPage' => env('APP_URL', "http://localhost"),
    'cancelPage' => env('APP_URL', "http://localhost"),
    'language' => 'fr',
    'method' => '1, 2, 3, 10, 17',
    'numberNotifs' => 5,
    'payInUrl' => env("DOHONE_SANDBOX",false) ? 'https://www.my-dohone.com/dohone-sandbox/pay' : 'https://www.my-dohone.com/dohone/pay',

    'payOutHashCode' => 'XXXXXXXX',
    'payOutPhoneAccount' => 'XXXXXXXX',
    'payOutNotifyPage' => env('APP_URL', "http://localhost"),
    'payOutUrl' => env("DOHONE_SANDBOX",false) ? 'https://www.my-dohone.com/dohone-sandbox/transfert' : 'https://www.my-dohone.com/dohone/transfert',
   ];
```

### Step 4: (optional)

[](#step-4-optional)

#### Enable debugger mode by using sandbox account (Please make sure to delete the line or set it to false in production)

[](#enable-debugger-mode-by-using-sandbox-account-please-make-sure-to-delete-the-line-or-set-it-to-false-in-production)

```
DOHONE_SANDBOX=true
```

PAYIN API AND WEB
=================

[](#payin-api-and-web)

### 1. Make Quotation

[](#1-make-quotation)

```
$response = DohonePayIn::quotation()
        ->setAmount(123)
        ->setFeedsLevel(4)
        ->setMethod(DohonePayIn::quotation()::MTN)
        ->get();
     if ($response->isSuccess()) {
    //success code goes here
        echo $response->getMessage();
    } else {
    //error code goes here
        echo $response->getMessage();
    }
```

### 2. Make Payment using Web interface

[](#2-make-payment-using-web-interface)

```
 $builder = DohonePayIn::payWithUI()
        ->setAmount(123)
        ->setClientPhone("695499969")
        ->setClientEmail("yann@email.com")
        ->setCommandID("aazertyuiop");
    try {
         return   $builder->getView();
    }catch (Exception $exception){
        //Return error view
        return $builder->getErrors();
    }
```

### 3. Make Payment with API REST (You need authorization to use this method)

[](#3-make-payment-with-api-rest-you-need-authorization-to-use-this-method)

```
$response = DohonePayIn::payWithAPI()
        ->setAmount(123)
        ->setClientPhone("the phone of the user")
        ->setClientEmail("the email of the user")
        ->setCommandID("your order unique id")
        ->setOTPCode(123456)
        ->setMethod(DohonePayIn::quotation()::ORANGE)
        ->get();
     if ($response->isSuccess()) {
    //success code goes here
        echo $response->getMessage();
    } else {
    //error code goes here
        echo $response->getMessage();
    }
```

### 4. Make SMS verification

[](#4-make-sms-verification)

```
$response = DohonePayIn::sms()
        ->setCode("the code receive by SMS")
        ->setPhone("the phone which has receive the SMS")
        ->get();
    if ($response->isSuccess()) {
    //success code goes here
        echo $response->getMessage();
    } else {
    //error code goes here
        echo $response->getMessage();
    }
```

### 5. Make payment verification

[](#5-make-payment-verification)

```
$response = DohonePayIn::verify()
        ->setAmount(6546545)
        ->setCommandID("your command unique id")
        ->setPaymentToken("the ttoken receive after the successful payment")
        ->get();
    if ($response->isSuccess()) {
    //success code goes here
        echo $response->getMessage();
    } else {
    //error code goes here
        echo $response->getMessage();
    }
```

PAYOUT API
==========

[](#payout-api)

### 1. Make payout to mobile phone

[](#1-make-payout-to-mobile-phone)

```
$response = DohonePayOut::mobile()
        ->setAmount("amount to send")
        ->setMethod(6)
        ->setReceiverAccount('receiver phone number with country country code ex:237XXXXXX')
        ->setReceiverCity("city")
        ->setReceiverCountry("country name")
        ->setReceiverName("receiver name")
        ->post();
    if ($response->isSuccess()) {
    //success code goes here
        echo $response->getMessage();
    } else {
    //error code goes here
        echo $response->getMessage();
    }
```

Response object method return by each
-------------------------------------

[](#response-object-method-return-by-each)

*Method**Description*isSuccess()Is true when there is no errorgetMessage()Content a description of the responseshouldVerifySMS()Return true if a SMS has been send to user for confirmation. Use this method to allow user to enter the codegetPaymentUrl()This method return the link generate by `DohonePayOut::payWithUI()`getErrors()Get all errors catch during execution such as data validation

###  Health Score

38

—

LowBetter than 83% of packages

Maintenance61

Regular maintenance activity

Popularity12

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity58

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 ~237 days

Recently: every ~387 days

Total

8

Last Release

247d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/d46eefacf6eb9db2a88486e899e9b9310b593b660860d96bbf777cf1780ab7eb?d=identicon)[Yann-Yvan](/maintainers/Yann-Yvan)

---

Top Contributors

[![yann-yvan](https://avatars.githubusercontent.com/u/31866892?v=4)](https://github.com/yann-yvan "yann-yvan (4 commits)")

---

Tags

dohonepaymentpayment-gatewaypayments

### Embed Badge

![Health badge](/badges/dohone-payment/health.svg)

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

###  Alternatives

[aws/aws-sdk-php

AWS SDK for PHP - Use Amazon Web Services in your PHP project

6.3k543.5M2.6k](/packages/aws-aws-sdk-php)[neuron-core/neuron-ai

The PHP Agentic Framework.

2.0k656.1k38](/packages/neuron-core-neuron-ai)[tencentcloud/tencentcloud-sdk-php

TencentCloudApi php sdk

3741.3M47](/packages/tencentcloud-tencentcloud-sdk-php)[chargebee/chargebee-php

ChargeBee API client implementation for PHP

758.5M9](/packages/chargebee-chargebee-php)[tempest/framework

The PHP framework that gets out of your way.

2.2k34.4k15](/packages/tempest-framework)[imdhemy/google-play-billing

Google Play Billing

491.5M5](/packages/imdhemy-google-play-billing)

PHPackages © 2026

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