lido-nation/laravel-adapayments

A laravel package to process ada payments.

1.0.4 2024-08-17 08:09 UTC

This package is not auto-updated.

Last update: 2024-11-09 09:13:47 UTC


README

Latest Version on Packagist Packagist Downloads GitLab Tag

Support us

LIDO Nation

Installation and Configuration

(i) Package and dependencies installation

You can install the package via composer:

composer require lido-nation/laravel-adapayments

Next, install the package dependencies via composer:

composer require lido-nation/adapayments

(ii) Publishing config and service provides

Publish configurations and service providers via artisan command:

php artisan adapayments:install

php artisan adapayments:install command will create the following files within laravel root directory;

  • config/adapayments.php
  • app/Providers/AdapaymentsServiceProvider.php

Register AdapaymentsServiceProvider by copying it's class reference in config/app.php within the providers key. Below is the class reference;

    return [
        'providers' => ServiceProvider::defaultProviders()->merge([
            App\Providers\AdapaymentsServiceProvider::class,
        ])->toArray(),
    ]

(iii) configuration (.env)

The published config/adapayments.php will make use of certain environment variables that we will need to configure. Below is a list of variables we will need to configure in our .env file.

//  Ada wallet address to receive payments
PAYMENT_ADDRESS=
PAYMENT_ADDRESS_QR_IMAGE=

// Blockfrost service url and project_id
BLOCKFROST_URL=
BLOCKFROST_PROJECT_ID=

// API Keys for coinapi, coinbase and coinmarketcap
COINAPI_API_KEY=
COINBASE_API_KEY=           // optional
COINMARKETCAP_API_KEY=

Usage

Here are a few short examples of what you can do:

(i) Converting currencies

Note that all the functions presented below will take a parameter of amounts being converted. By default the value is set to 1, hence equates represents live exchange rate.

  • from global helpers

    $usdAmount = ada_to_usd(7);
    $adaAmount = usd_to_ada(7);
    
  • from class instance

    use Lidonation\AdapaymentsLaravel\Adapayments;
    

$adaPayments = new Adapayments();

$usdAmount = $adaPayments->adaToUsd(10); $adaAmount = $adaPayments->usdToAda(10);


- #### from the serivce container

$adaPayments = app()->adapayments;

$usdAmount = $adaPayments->adaToUsd(5); $adaAmount = $adaPayments->usdToAda(5);



## Testing

Test via composer command;

composer test


## Credits

- [Emmanuel Titi](https://github.com/Emmanuel-SE)
- [All Contributors](./contributors)