Download the PHP package levizoesch/teller-sdk without Composer
On this page you can find all versions of the php package levizoesch/teller-sdk. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download levizoesch/teller-sdk
More information about levizoesch/teller-sdk
Files in levizoesch/teller-sdk
Package teller-sdk
Short Description A simple SDK to consume Teller.io for Laravel.
License MIT
Homepage https://github.com/levizoesch/teller-sdk
Informations about the package teller-sdk
Teller API SDK
An open source PHP SDK to interact with Teller.io on the Laravel framework.
Version Compatibility
If you can help make this package stable for Laravel 6 & 7 please submit a PR.
Laravel | TellerSDK | PHP Version | Tests |
---|---|---|---|
11.x | ^2.0.16 | 8.2 | |
10.x | 2.x | 8.1 - 8.2 | |
9.x | 2.x | 8.0 - 8.1 | |
8.x | 2.x | 7.3 - 8.1 | |
7.x | 7.2 - 8.0 | ||
6.x | 7.2 - 8.0 |
Goals & Plans
API Endpoints.
Capture all available endpoints by teller.io.
Remaining to do are around payments / zelle enabled institutions.
Exceptions & Error Reporting
Expand the exceptions thrown to better help contain edge cases that may be present in production.
Unit Tests - In progress ( )
Unit testing is very important to me, as I do not want to introduce bugs to package users. Goal is to expand unit testing to 90% or greater.
Setup Codecov.com ✓ Completed
webhook verification (only consume data strictly from Teller.io)
Blade Views & Templates:
Create a set of blade views and templates that are easy to use and integrate into a user's application.
Models & Migrations:
Develop models and migrations that are essential for the functionality of the package.
Add Livewire capabilities with Laravel Livewire Tables by Rappasoft driven tables.
Contributions & Community
I encourage others to contribute to this package ❤
To join the discord for discussions and help, please join us at Teller SDK Discord Server
Installation
composer require levizoesch/teller-sdk
Configuration File
You will need to publish the configuration file.
php artisan vendor:publish --tag=teller-sdk-config
Environment Configuration
You will also need to add the following to your .env
file.
Included Helper Command (Laravel Set Environment)
This is helpful for automating your repository to push to local, staging, or production servers using a CLI like Bitbucket Pipeline, or Github.
You may use to create, or update environment keys.
Available Teller.io Environments.
The available environments are
sandbox
, development
, and production
for your TELLER_ENVIRONMENT
.
The environment to use for enrolling the user's accounts. Valid values are sandbox
, development
and production
. The sandbox
environment never communicates with a real institution, it is used to create sandbox enrollments, accounts and tokens. The development
environment is the same as production
but is not billed and has a hard limit of 100 enrollments.
Teller Certificates
This package requires that you have the teller provided private key, and certificate .pem file present within your main directory. This is provided to you when you create a https://teller.io/ developer account.
Alternatively, you may alter the teller
configuration file and define the path to the file location.
Note The name of the file is irrelevant, you may define your own naming convention for the .pem
files.
Teller.io Documentation
For more context, and up-to-date teller API information see
Included Endpoints
Teller.io will provide you with an access token. You will initiate the TellerClient with this provided token.
List Accounts
Returns a list of all accounts the end-user granted access to during enrollment in Teller Connect.
List Accounts Count
Returns a numeral count of the accounts linked to the given access token.
Destroy Account
This deletes your application's authorization to access the given account as addressed by its id. This does not delete the account itself.
Get Account Details
Retrieve a specific account by it's id.
Get Account Balances
Retrieves live, real-time account balances.
List All Account Transactions
Returns a list of all transactions belonging to the account.
Get the specific account transaction details
Returns an individual transaction details.
Identity
Identity provides you with all the accounts the end-user granted your application access authorization along with beneficial owner identity information for each of them. Beneficial owner information is attached to each account as it's possible the end-user is not the beneficial owner, e.g. a corporate account, or there is more than one beneficial owner, e.g. a joint account the end-user shares with their partner.
Zelle *Limited
Depending on the banking institution, you may or may not have access to zelle features. For those institutions that have this feature.
List Account Payees
Payments
This section is still in development. Contribute to help finish it...
Create Account Payee
Create a beneficiary for sending payments from the given account.
Webhooks
You may want to consume the teller.io webhook. To do so, you will need to create a TellerWebhookController.
this will create a new controller in your Controllers directory
To configure your new controller add the store method below.
Add the route to the web.php
file.
Now update your Teller.io developer dashboard and point the webhook to your project. See Application
menu button on Teller
Quick & Dirty Example:
I will update this more in the future...
To initiate
Add the button.
Add the javascript.
Exceptions
Exceptions will be thrown for various reasons. The exceptions are as follows:
MissingTellerConfigurationException
EnvironmentNullException
This is thrown if the .env is not correctly defined. The configuration file looks for the TELLER_ENVIRONMENT
. If it cannot locate it, this exception will be thrown.
InvalidEnvironmentException
The only accepted values are sandbox
, development
, or production
. Any other values detected this exception will be thrown.
MissingAccessTokenException
This is thrown if the access token for the user's banking institution is null, or invalid.
MissingTellerCertException & MissingTellerKeyException
Each exception will show you which one you are missing, the certificate or the private key.pem
file. Please see your teller.php
config file to define their path.
UnexpectedErrorResponseException
This is thrown if the error being produced was unexpected. Please let me know if you experience this exception as error reporting may need to be expanded further to catch these discrepancies.
Credits
License
All versions of teller-sdk with dependencies
ext-curl Version *
illuminate/contracts Version ^8.0|^9.0|^10.0|^11.0
levizoesch/laravel-set-environment Version ^1.0
spatie/laravel-package-tools Version ^1.0 | ^1.16.2