             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)

    
    /// Points Payment Source
    case points(Points)
    
    /// Other Payment Source
    case other(type: String, parameters: [String: Any])

        case (.eContext(let lhsValue), .eContext(let rhsValue)):
            return lhsValue == rhsValue
        case (.points(let lhsValue), .points(let rhsValue)):
            return lhsValue == rhsValue
        case (.mobileBanking(let lhsValue), .mobileBanking(let rhsValue)):
            return lhsValue == rhsValue
        case (.other(let lhsType, let lhsParameters), .other(let rhsType, let rhsParameters)):
            return lhsType == rhsType &&
