diff --git a/app/Http/Controllers/ClientPortalController.php b/app/Http/Controllers/ClientPortalController.php index db8f5ce8f918..bde187be3386 100644 --- a/app/Http/Controllers/ClientPortalController.php +++ b/app/Http/Controllers/ClientPortalController.php @@ -150,19 +150,21 @@ class ClientPortalController extends BaseController 'gatewayTypeId' => count($paymentTypes) == 1 ? $paymentTypes[0]['gatewayTypeId'] : false, ]; - if ($paymentDriver = $account->paymentDriver($invitation, GATEWAY_TYPE_CREDIT_CARD)) { - $data += [ - 'transactionToken' => $paymentDriver->createTransactionToken(), - 'partialView' => $paymentDriver->partialView(), - 'accountGateway' => $paymentDriver->accountGateway, - ]; - } + if ($invoice->canBePaid()) { + if ($paymentDriver = $account->paymentDriver($invitation, GATEWAY_TYPE_CREDIT_CARD)) { + $data += [ + 'transactionToken' => $paymentDriver->createTransactionToken(), + 'partialView' => $paymentDriver->partialView(), + 'accountGateway' => $paymentDriver->accountGateway, + ]; + } - if ($accountGateway = $account->getGatewayByType(GATEWAY_TYPE_CUSTOM)) { - $data += [ - 'customGatewayName' => $accountGateway->getConfigField('name'), - 'customGatewayText' => $accountGateway->getConfigField('text'), - ]; + if ($accountGateway = $account->getGatewayByType(GATEWAY_TYPE_CUSTOM)) { + $data += [ + 'customGatewayName' => $accountGateway->getConfigField('name'), + 'customGatewayText' => $accountGateway->getConfigField('text'), + ]; + } } if ($account->hasFeature(FEATURE_DOCUMENTS) && $this->canCreateZip()) {