static function buildFromJSON($vo_json) { $o_bat = new BankAccountTransaction(); if (array_key_exists("bank_account_transaction_id", $vo_json)) { $o_bat->setBankAccountTransactionId($vo_json["bank_account_transaction_id"]); } if (array_key_exists('bank_account_transaction_type', $vo_json)) { if (gettype($vo_json['bank_account_transaction_type']) === "array") { $o_type = (array) $vo_json['bank_account_transaction_type']; if (array_key_exists('bank_account_transaction_type_name', $o_type)) { $o_bat->setType($o_type['bank_account_transaction_type_name']); } } else { $o_bat->setType($vo_json['bank_account_transaction_type']); } } if (array_key_exists('bank_account_transaction_method', $vo_json)) { if (gettype($vo_json['bank_account_transaction_method']) === "array") { $o_method = (array) $vo_json['bank_account_transaction_method']; if (array_key_exists('bank_account_transaction_method_name', $o_method)) { $o_bat->setMethod($o_method['bank_account_transaction_method_name']); } } else { $o_bat->setMethod($vo_json['bank_account_transaction_method']); } } if (array_key_exists('bank_account_transaction_recurring_indicator', $vo_json)) { $o_bat->setRecurringIndicator($vo_json["bank_account_transaction_recurring_indicator"]); } if (array_key_exists('bank_account_transaction_routing_number', $vo_json)) { $o_bat->setRoutingNumber($vo_json["bank_account_transaction_routing_number"]); } if (array_key_exists('bank_account_transaction_account_number', $vo_json)) { $o_bat->setAccountNumber($vo_json["bank_account_transaction_account_number"]); } if (array_key_exists('bank_account_transaction_effective_date', $vo_json)) { $o_bat->setEffectiveDate(date("m/d/Y H:i:s", strtotime($vo_json["bank_account_transaction_effective_date"]))); } if (array_key_exists('bank_account_transaction_settlement_date', $vo_json)) { $o_bat->setSettlementDate(date("m/d/Y H:i:s", strtotime($vo_json["bank_account_transaction_settlement_date"]))); } if (array_key_exists('bank_account_transaction_return_date', $vo_json)) { $o_bat->setReturnDate(date("m/d/Y H:i:s", strtotime($vo_json["bank_account_transaction_return_date"]))); } if (array_key_exists('bank_account_transaction_account_name', $vo_json)) { $o_bat->setAccountName($vo_json["bank_account_transaction_account_name"]); } if (array_key_exists('bank_account_transaction_status', $vo_json)) { if (gettype($vo_json['bank_account_transaction_status']) === "array") { $o_status = (array) $vo_json['bank_account_transaction_status']; if (array_key_exists('bank_account_transaction_status_name', $o_status)) { $o_bat->setStatus($o_status['bank_account_transaction_status_name']); } } else { $o_bat->setStatus($vo_json['bank_account_transaction_status']); } } if (array_key_exists('bank_account_transaction_return_code', $vo_json)) { $o_bat->setReturnCode($vo_json["bank_account_transaction_return_code"]); } if (array_key_exists('bank_account_transaction_merchant_transaction_id', $vo_json)) { $o_bat->setMerchantTransactionID($vo_json["bank_account_transaction_merchant_transaction_id"]); } if (array_key_exists('bank_account_transaction_trace', $vo_json)) { $o_bat->setTrace($vo_json["bank_account_transaction_trace"]); } if (array_key_exists('bank_account_transaction_account_type', $vo_json)) { if (gettype($vo_json['bank_account_transaction_account_type']) === "array") { $o_account_type = (array) $vo_json['bank_account_transaction_account_type']; if (array_key_exists('bank_account_transaction_account_type_name', $o_account_type)) { $o_bat->setAccountType($o_account_type['bank_account_transaction_account_type_name']); } } else { $o_bat->setAccountType($vo_json['bank_account_transaction_account_type']); } } // Added to allow intercommunication between CLIENT objects during unit testing// if (array_key_exists('messages', $vo_json) && !is_null($vo_json['messages'])) { foreach ($vo_json['messages'] as $s_key => $s_msg) { $o_bat->addMessage($s_msg); } } if (array_key_exists('bank_account_transaction_amount', $vo_json)) { $o_bat->setAmount($vo_json["bank_account_transaction_amount"]); } if (array_key_exists("bank_account_token", $vo_json)) { $o_bat->setToken($vo_json["bank_account_token"]); } if (array_key_exists("bank_account_transaction_micr_data", $vo_json)) { $o_bat->setMICRData($vo_json["bank_account_transaction_micr_data"]); } if (array_key_exists("bank_account_transaction_custom_field1", $vo_json)) { $o_bat->setCustomField1($vo_json["bank_account_transaction_custom_field1"]); } if (array_key_exists("bank_account_transaction_custom_field2", $vo_json)) { $o_bat->setCustomField2($vo_json["bank_account_transaction_custom_field2"]); } if (array_key_exists("bank_account_transaction_custom_field3", $vo_json)) { $o_bat->setCustomField3($vo_json["bank_account_transaction_custom_field3"]); } if (array_key_exists("bank_account_transaction_custom_field4", $vo_json)) { $o_bat->setCustomField4($vo_json["bank_account_transaction_custom_field4"]); } if (array_key_exists("bank_account_transaction_custom_field5", $vo_json)) { $o_bat->setCustomField5($vo_json["bank_account_transaction_custom_field5"]); } if (array_key_exists("bank_account_transaction_custom_field6", $vo_json)) { $o_bat->setCustomField6($vo_json["bank_account_transaction_custom_field6"]); } if (array_key_exists("bank_account_transaction_custom_field7", $vo_json)) { $o_bat->setCustomField7($vo_json["bank_account_transaction_custom_field7"]); } if (array_key_exists("bank_account_transaction_custom_field8", $vo_json)) { $o_bat->setCustomField8($vo_json["bank_account_transaction_custom_field8"]); } if (array_key_exists("bank_account_transaction_custom_field9", $vo_json)) { $o_bat->setCustomField9($vo_json["bank_account_transaction_custom_field9"]); } if (array_key_exists("bank_account_transaction_custom_field10", $vo_json)) { $o_bat->setCustomField10($vo_json["bank_account_transaction_custom_field10"]); } if (array_key_exists("bank_account_transaction_check_number", $vo_json)) { $o_bat->setCheckNumber($vo_json["bank_account_transaction_check_number"]); } if (array_key_exists("bank_account_transaction_individual_identification_number", $vo_json)) { $o_bat->setIndividualIdentificationNumber($vo_json["bank_account_transaction_individual_identification_number"]); } if (array_key_exists('bank_account_transaction_billing_address', $vo_json)) { $o_bat->setBillingAddress(Address::buildFromJSON($vo_json['bank_account_transaction_billing_address'])); } if (array_key_exists("bank_account_transaction_cipher_pay_uuid", $vo_json)) { $o_bat->setCipherPayUUID($vo_json["bank_account_transaction_cipher_pay_uuid"]); } return $o_bat; }