bee-delivery / bank-account-validator
A bank account validator for brazilian bank accounts
Installs: 13 483
Dependents: 0
Suggesters: 0
Security: 0
Stars: 8
Watchers: 3
Forks: 0
Open Issues: 0
Requires
- php: >=7.1.3
README
A bank account validator for brazilian bank accounts.
Getting started
Bank account validation is performed under the verifying digit rules of the following banks (values based on char count):
BANK | AG - DV | AC - DV | TYPE AC | OBS |
---|---|---|---|---|
001 Banco do Brasil | 4 - 1 | 8 - 1 | ||
004 Banco do Nordeste | 4 | 7 - 1 | 2 (not included) | not checking DVs |
033 Banco Santander | 4 | 8 - 1 | 2 (added to AC) | |
041 Banrisul | 4 - 2 | 9 - 1 | 2 (added to AC) | |
077 Banco Inter | 4 | 7 - 1 | ||
104 Caixa Econômica Federal | 4 | 11 - 1 | 3 (added to AC) | |
237 Banco Bradesco | 4 - 1 | 7 - 1 | ||
237 Next bank | 4 | 7 - 1 | same thing as Bradesco | |
260 Nubank | 4 | 7 - 1 | ||
341 Banco Itaú | 4 | 5 - 1 | ||
399 HSBC | 4 | 6 - 1 | ||
745 Citibank | 4 | 10 - 1 |
For other banks a default validation is performed:
- Agency from 1 to 4 numbers.
- 0-2 character agency digit.
- Account from 1 to 12 numbers.
- 0-2 character account digit.
Installing
Install with composer:
composer require bee-delivery/bank-account-validator
Usage
The bank details received via the form must be passed as a parameter to the function called 'validate'.
<?php use BeeDelivery\BankAccountValidator\BankAccount; // .. $params = (object) array( 'bankNumber' => $this->bank, 'agencyNumber' => $this->agency_number, 'agencyCheckNumber' => $this->agency_check_number, 'accountNumber' => $this->account_number, 'accountCheckNumber' => $this->account_check_number, 'ignoreAgencyCheckNumber' => true, // or false 'ignoreTypeCEFAccount' => true // or false ); $data = BankAccount::validate($params); // ..
It will return an array with two attributes: 'params' with params formatted properly and 'errors' containing possible errors found.
Bank Codes
A listing of all banks you can get at http://www.codigobanco.com.
License
Feel free to help us. Make a pr :)
GNU General Public License v3