lookupBankData() public static method

public static lookupBankData ( $routingNumber ) : mixed | null | stdClass | string
$routingNumber
return mixed | null | stdClass | string
 public function columns()
 {
     return [['invoice_number', function ($model) {
         if (!Auth::user()->can('viewByOwner', [ENTITY_INVOICE, $model->invoice_user_id])) {
             return $model->invoice_number;
         }
         return link_to("invoices/{$model->invoice_public_id}/edit", $model->invoice_number, ['class' => Utils::getEntityRowClass($model)])->toHtml();
     }], ['client_name', function ($model) {
         if (!Auth::user()->can('viewByOwner', [ENTITY_CLIENT, $model->client_user_id])) {
             return Utils::getClientDisplayName($model);
         }
         return $model->client_public_id ? link_to("clients/{$model->client_public_id}", Utils::getClientDisplayName($model))->toHtml() : '';
     }, !$this->hideClient], ['transaction_reference', function ($model) {
         return $model->transaction_reference ? $model->transaction_reference : '<i>' . trans('texts.manual_entry') . '</i>';
     }], ['payment_type', function ($model) {
         return $model->payment_type && !$model->last4 ? $model->payment_type : ($model->account_gateway_id ? $model->gateway_name : '');
     }], ['payment_type_id', function ($model) {
         $code = str_replace(' ', '', strtolower($model->payment_type));
         $card_type = trans('texts.card_' . $code);
         if ($model->payment_type_id != PAYMENT_TYPE_ACH) {
             if ($model->last4) {
                 $expiration = Utils::fromSqlDate($model->expiration, false)->format('m/y');
                 return '<img height="22" src="' . URL::to('/images/credit_cards/' . $code . '.png') . '" alt="' . htmlentities($card_type) . '">&nbsp; &bull;&bull;&bull;' . $model->last4 . ' ' . $expiration;
             } elseif ($model->email) {
                 return $model->email;
             }
         } elseif ($model->last4) {
             if ($model->bank_name) {
                 $bankName = $model->bank_name;
             } else {
                 $bankData = PaymentMethod::lookupBankData($model->routing_number);
                 if ($bankData) {
                     $bankName = $bankData->name;
                 }
             }
             if (!empty($bankName)) {
                 return $bankName . '&nbsp; &bull;&bull;&bull;' . $model->last4;
             } elseif ($model->last4) {
                 return '<img height="22" src="' . URL::to('/images/credit_cards/ach.png') . '" alt="' . htmlentities($card_type) . '">&nbsp; &bull;&bull;&bull;' . $model->last4;
             }
         }
     }], ['amount', function ($model) {
         return Utils::formatMoney($model->amount, $model->currency_id, $model->country_id);
     }], ['payment_date', function ($model) {
         if ($model->is_deleted) {
             return Utils::dateToString($model->payment_date);
         } else {
             return link_to("payments/{$model->public_id}/edit", Utils::dateToString($model->payment_date))->toHtml();
         }
     }], ['payment_status_name', function ($model) {
         return self::getStatusLabel($model);
     }]];
 }
 /**
  * @param $routingNumber
  * @return \Illuminate\Http\JsonResponse
  */
 public function getBankInfo($routingNumber)
 {
     if (strlen($routingNumber) != 9 || !preg_match('/\\d{9}/', $routingNumber)) {
         return response()->json(['message' => 'Invalid routing number'], 400);
     }
     $data = PaymentMethod::lookupBankData($routingNumber);
     if (is_string($data)) {
         return response()->json(['message' => $data], 500);
     } elseif (!empty($data)) {
         return response()->json($data);
     }
     return response()->json(['message' => 'Bank not found'], 404);
 }
Example #3
0
 /**
  * @return mixed|null|\stdClass|string
  */
 public function getBankDataAttribute()
 {
     if (!$this->routing_number) {
         return null;
     }
     return PaymentMethod::lookupBankData($this->routing_number);
 }