zgabievi / e-money
This package is abandoned and no longer maintained.
No replacement package was suggested.
eMoney Payment System
0.1.0
2016-01-14 12:12 UTC
Requires
- php: >=5.3.0
- illuminate/support: ~5.1
Requires (Dev)
- phpunit/phpunit: 4.*
- scrutinizer/ocular: ~1.1
- squizlabs/php_codesniffer: ~2.3
This package is not auto-updated.
Last update: 2021-02-05 22:50:38 UTC
README
Some great updates are comming soon...
eMoney | |
---|---|
eMoney payment system integration for Laravel 5.* 😎 Trying to make it perfect, easy to use and awesome package 🎉 Pull requests are welcome. |
Table of Contents
Installation
Composer
Run composer command in your terminal.
composer require zgabievi/e-money
Laravel
Open config/app.php
and find the providers
key. Add eMoneyServiceProvider
to the array.
Gabievi\eMoney\eMoneyServiceProvider::class
Find the aliases
key and add Facade
to the array.
'eMoney' => Gabievi\eMoney\eMoneyFacade::class
Usage
There is main method with will call method by first parameter. And it will return the result of the request:
eMoney::GetResult($method, ...$args);
Example:
return eMoney::GetResult('GetBalance');
Outputs:
{ "Code": 1, "ExtraInfo": null, "ID": "374E9088F2FA45F5ABF411DFE9B06D36", "Message": "Success", "SystemCode": "OK", "Value": { "AccountBalance": { "Account": 110100015, "Balance": "0", "Currency": "GEL" } } }
Behind the scene it does something like this:
return (array)eMoney::GetBalance(...$args)->GetBalanceResult;
This is the list of all methods:
GetServiceGroups();
GetServices($group_id);
GetServiceProperties($service_id);
GetServiceParameterReferences($service_parameter_id);
GetInfo($service_id, $parameters);
Pay($service_id, $amount, $currency, $txn_id, $parameters);
GetTransactionDetails($txn_id);
GetTransactionInfo($txn_id);
GetStatement($start_date, $end_date);
GetBalance();
ConfirmPayment($txn_id, $amount, $currency, $parameters);
Example
return eMoney::GetResult('GetStatement', '01/01/2016', '01/14/2016');
Outputs:
{ "Code": 1, "ExtraInfo": null, "ID": "3D3FFA52900E468CA3E3F39CD6819E44", "Message": "Success", "SystemCode": "OK", "Value": { "StatementEntry": [ { "Amount": "15", "Code": 866730178, "Credit": 110100052, "Currency": "GEL", "Date": "2016-01-12T00:00:00", "Debit": 110100015, "Description": "12345678910, 02.04.1994, Test #1", "ID": 16673017, "Status": "Canceled", "Type": "Test transaction" }, { "Amount": "1", "Code": 866730178, "Credit": 800000003, "Currency": "GEL", "Date": "2016-01-12T00:00:00", "Debit": 110100015, "Description": "Test transaction", "ID": 16673019, "Status": "Canceled", "Type": "Test transaction" } ] } }
Codes
Key | Value | Description |
---|---|---|
1 | Success | OK |
11 | Unknown | Unknown error |
12 | InvalidHash | Invalid hash |
13 | InvalidParameters | Some of the input parameters are invalid |
14 | InvalidDistributor | Invalid distributor name |
16 | ServicesProviderNotFound | Service provider not found |
17 | AbonentNotFound | Abonent not found |
19 | ParameterNotFound | Parameter not found |
20 | ParameterValueNotFound | Parameter value not found |
30 | Error | General error |
31 | ServiceNotFound | Service not found |
34 | ServiceInternalError | Service internal error |
40 | WrongAmount | Wrong amount |
41 | ServiceTimeout | Operation timeout |
42 | PaymentWontBeAccepted | Payment wont be accepted. Your company has not enough balance in eMoney |
43 | AccountOperationDenied | Account operation denied |
44 | AmountLessThanMin | Amount is less than acceptable minumum |
45 | AmountMoreThanMax | Amount is more than acceptable maximum |
46 | TransactionLimitExceeded | Transaction limit exceeded |
Config
Publish eMoney config file using command:
php artisan vendor:publish
Created file config\eMoney.php
. Inside you can change configuration as you wish.
License
laravel-emoney is licensed under a MIT License.
TODO
- Create tests to check funtionality
- Create separated file for response codes
- Make artisan command that will write this response codes in php file
- Make eMoney object more Model like