Skip to content

Commit

Permalink
V1x (#8)
Browse files Browse the repository at this point in the history
* First Draft v1x API

* Code Cleanup (PHP-CS-Fixer)

* Added Tests & Docs

* Updated README & LICENSE
  • Loading branch information
abdulmueid committed Feb 15, 2020
1 parent 0a56cf8 commit 908ccc1
Show file tree
Hide file tree
Showing 47 changed files with 1,095 additions and 667 deletions.
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2018 Abdul Mueid Akhtar
Copyright (c) 2020 Abdul Mueid Akhtar

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
34 changes: 15 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,39 +26,35 @@ composer require abdulmueid/mpesa

(See Class documentation in docs/ folder for parameter details.)

1. Initiate a payment.
1. Initiate a C2B payment collection.
```php
$payment = $transaction->payment(...);
$c2b = $transaction->c2b(...);
```
2. Initiate a B2C payment.
```php
$b2c = $transaction->b2c(...);
```
3. Initiate a B2B payment.
```php
$b2b = $transaction->b2b(...);
```

2. Initiate a refund.
2. Initiate a reversal.
```php
$refund = $transaction->refund(...);
$reversal = $transaction->reversal(...);
```

3. Query a transaction.
```php
$query = $transaction->query(...);
```
## Testing
1. Update tests/config.test.php with required parameters
2. Enter the test MSISDN in tests/MPesaTest.php on line 35
3. Run **PHPUnit 7** phar archive in the project folder (https://phar.phpunit.de/phpunit-7.phar)
4. Check the phone for M-Pesa payment requests

The test case currently creates a new transaction, queries the transaction status and refunds the transaction.
**Tests may be billable when running on production.**

## Generating Docs
1. Run **phpDocumentor 2.9** phar archive in the project folder (http://phpdoc.org/phpDocumentor.phar)

## License

This library is release under the MIT License. See LICENSE file for details.

## TODO

1. Improve documentation
2. Add more examples
3. Improve test suite and test automation
1. Add more examples
7 changes: 6 additions & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,16 @@
}
],
"require": {
"php": "^7.0"
"php": "^7.2",
"ext-curl": "*",
"ext-json": "*",
"ext-openssl": "*"
},
"autoload": {
"psr-4": {
"abdulmueid\\mpesa\\": "src/"
}
},
"require-dev": {
}
}
7 changes: 5 additions & 2 deletions composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

File renamed without changes.
90 changes: 45 additions & 45 deletions docs/classes/abdulmueid.mpesa.Config.html

Large diffs are not rendered by default.

169 changes: 144 additions & 25 deletions docs/classes/abdulmueid.mpesa.Transaction.html

Large diffs are not rendered by default.

24 changes: 12 additions & 12 deletions docs/classes/abdulmueid.mpesa.TransactionResponse.html
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@
<ul class="dropdown-menu">
<li>
<a href="../reports/errors.html">
<i class="icon-list-alt"></i>&#160;Errors <span class="label label-info pull-right">6</span>
<i class="icon-list-alt"></i>&#160;Errors <span class="label label-info pull-right">0</span>
</a>
</li>
<li>
Expand Down Expand Up @@ -144,37 +144,37 @@
<div class="accordion" style="margin-bottom: 0">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-88494392"></a>
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-1209659422"></a>
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
</div>
<div id="namespace-88494392" class="accordion-body collapse in">
<div id="namespace-1209659422" class="accordion-body collapse in">
<div class="accordion-inner">

<div class="accordion" style="margin-bottom: 0">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-770503260"></a>
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-151877349"></a>
<a href="../namespaces/abdulmueid.html" style="margin-left: 30px; padding-left: 0">abdulmueid</a>
</div>
<div id="namespace-770503260" class="accordion-body collapse ">
<div id="namespace-151877349" class="accordion-body collapse ">
<div class="accordion-inner">

<div class="accordion" style="margin-bottom: 0">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-2135609044"></a>
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1222394805"></a>
<a href="../namespaces/abdulmueid.mpesa.html" style="margin-left: 30px; padding-left: 0">mpesa</a>
</div>
<div id="namespace-2135609044" class="accordion-body collapse ">
<div id="namespace-1222394805" class="accordion-body collapse ">
<div class="accordion-inner">

<div class="accordion" style="margin-bottom: 0">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1397806453"></a>
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-169419044"></a>
<a href="../namespaces/abdulmueid.mpesa.helpers.html" style="margin-left: 30px; padding-left: 0">helpers</a>
</div>
<div id="namespace-1397806453" class="accordion-body collapse ">
<div id="namespace-169419044" class="accordion-body collapse ">
<div class="accordion-inner">


Expand All @@ -189,10 +189,10 @@
<div class="accordion" style="margin-bottom: 0">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-152062538"></a>
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1878071348"></a>
<a href="../namespaces/abdulmueid.mpesa.interfaces.html" style="margin-left: 30px; padding-left: 0">interfaces</a>
</div>
<div id="namespace-152062538" class="accordion-body collapse ">
<div id="namespace-1878071348" class="accordion-body collapse ">
<div class="accordion-inner">


Expand Down Expand Up @@ -747,7 +747,7 @@ <h1><i class="icon-pushpin"></i></h1>
<section class="span10 offset1">
<hr />
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
on January 5th, 2019 at 11:38.
on January 21st, 2020 at 21:52.
</section>
</section>
</section>
Expand Down
24 changes: 12 additions & 12 deletions docs/classes/abdulmueid.mpesa.helpers.ValidationHelper.html
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@
<ul class="dropdown-menu">
<li>
<a href="../reports/errors.html">
<i class="icon-list-alt"></i>&#160;Errors <span class="label label-info pull-right">6</span>
<i class="icon-list-alt"></i>&#160;Errors <span class="label label-info pull-right">0</span>
</a>
</li>
<li>
Expand Down Expand Up @@ -144,37 +144,37 @@
<div class="accordion" style="margin-bottom: 0">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-48632279"></a>
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-51688008"></a>
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
</div>
<div id="namespace-48632279" class="accordion-body collapse in">
<div id="namespace-51688008" class="accordion-body collapse in">
<div class="accordion-inner">

<div class="accordion" style="margin-bottom: 0">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-995709498"></a>
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-647058105"></a>
<a href="../namespaces/abdulmueid.html" style="margin-left: 30px; padding-left: 0">abdulmueid</a>
</div>
<div id="namespace-995709498" class="accordion-body collapse ">
<div id="namespace-647058105" class="accordion-body collapse ">
<div class="accordion-inner">

<div class="accordion" style="margin-bottom: 0">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1389942582"></a>
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-408782390"></a>
<a href="../namespaces/abdulmueid.mpesa.html" style="margin-left: 30px; padding-left: 0">mpesa</a>
</div>
<div id="namespace-1389942582" class="accordion-body collapse ">
<div id="namespace-408782390" class="accordion-body collapse ">
<div class="accordion-inner">

<div class="accordion" style="margin-bottom: 0">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1676945510"></a>
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-19041756"></a>
<a href="../namespaces/abdulmueid.mpesa.helpers.html" style="margin-left: 30px; padding-left: 0">helpers</a>
</div>
<div id="namespace-1676945510" class="accordion-body collapse ">
<div id="namespace-19041756" class="accordion-body collapse ">
<div class="accordion-inner">


Expand All @@ -189,10 +189,10 @@
<div class="accordion" style="margin-bottom: 0">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-69636253"></a>
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1368991637"></a>
<a href="../namespaces/abdulmueid.mpesa.interfaces.html" style="margin-left: 30px; padding-left: 0">interfaces</a>
</div>
<div id="namespace-69636253" class="accordion-body collapse ">
<div id="namespace-1368991637" class="accordion-body collapse ">
<div class="accordion-inner">


Expand Down Expand Up @@ -430,7 +430,7 @@ <h1><i class="icon-pushpin"></i></h1>
<section class="span10 offset1">
<hr />
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
on January 5th, 2019 at 11:38.
on January 21st, 2020 at 21:52.
</section>
</section>
</section>
Expand Down
Loading

0 comments on commit 908ccc1

Please sign in to comment.