     
     /// Points Payment Source
     case points(Points)
+
+    /// The code of the bank for the Internet Bankning Payment
+    public enum MobileBanking: PaymentMethod {
+        public static let paymentMethodTypePrefix: String = "mobile_banking_"
+
+        case scb
+        case other(String)
+    }
+
+    /// Mobile Banking Payment Source
+    case mobileBanking(MobileBanking)
     
     /// Other Payment Source
     case other(type: String, parameters: [String: Any])

            self = .truemoney(try TrueMoney(from: decoder))
        case PaymentInformation.Points.self:
            self = .points(try Points(from: decoder))
        case let value:
            self = .other(type: value, parameters: try decoder.decodeJSONDictionary().filter({ (key, _) -> Bool in
                switch key {

            try trueMoney.encode(to: encoder)
        case .points(let points):
            try points.encode(to: encoder)
        case .mobileBanking(let value):
            try value.encode(to: encoder)
        case .other(type: let type, parameters: let parameters):
            var container = encoder.container(keyedBy: CodingKeys.self)
            try container.encode(type, forKey: .type)
