package com.africastalking.payment;

/**
 * A bank account
 */
public final class BankAccount {

    public enum BankCode {
        FirstBank_NG(234001),
        ZenithBank_NG(234002),
        AccessBank_NG(234003),
        GTBank_NG(234004),
        Ecobank_NG(234005),
        Diamond_NG(234007),
        Providus_NG(234008),
        FirstCityMonument_NG(234006),
        CBA_KE(254001);

        private final int code;
        BankCode(int code) {
            this.code = code;
        }
    }

    public String accountName;
    public String accountNumber;
    public int bankCode;

    /**
     * A bank account
     * @param accountName Bank account name e.g. Odeyola LeGrand
     * @param accountNumber Bank account number e.g. 0982627488993
     * @param bankCode Bank code. See supported banks {@link com.africastalking.payment.BankAccount.BankCode BankCode}
     */
    public BankAccount(String accountName, String accountNumber, BankCode bankCode) {
        this.accountName = accountName;
        this.accountNumber = accountNumber;
        this.bankCode = bankCode.code;
    }
}
@@ -117,24 +117,25 @@
 kCode %7B%0A
+%0A
         
 FirstBan
@@ -126,21 +126,18 @@
         
-First
+GT
 Bank_NG(
@@ -141,17 +141,17 @@
 NG(23400
-1
+4
 ),%0A     
@@ -157,15 +157,12 @@
     
-ZenithB
+Ecob
 ank_
@@ -169,17 +169,17 @@
 NG(23400
-2
+5
 ),%0A     
@@ -185,55 +185,137 @@
     
-AccessBank_NG(234003),%0A        GTBank_NG(234004
+Diamond_NG(234006),%0A        Providus_NG(234007),%0A        Unity_NG(234008),%0A        Stanbic_NG(234009),%0A        Sterling_NG(234010
 ),%0A 
@@ -317,39 +317,39 @@
 0),%0A        
-Ecobank
+Parkway
 _NG(2340
 05),%0A       
@@ -328,34 +328,34 @@
  Parkway_NG(2340
-05
+11
 ),%0A        Diamo
@@ -349,31 +349,32 @@
         
-Diamond
+Afribank
 _NG(2340
 07),%0A   
@@ -357,34 +357,34 @@
 Afribank_NG(2340
-07
+12
 ),%0A        Provi
@@ -378,32 +378,34 @@
         
-Providus
+Enterprise
 _NG(2340
 08),%0A   
@@ -388,34 +388,34 @@
 terprise_NG(2340
-08
+13
 ),%0A        First
@@ -415,33 +415,238 @@
   Fi
-rstCityMonument_NG(234006
+delity_NG(234014),%0A        Heritage_NG(234015),%0A        Keystone_NG(234016),%0A        Skye_NG(234017),%0A        Stanchart_NG(234018),%0A        Union_NG(234019),%0A        Uba_NG(234020),%0A        Wema_NG(234021),%0A        First_NG(234022
 ),%0A 

Update banks