Netsuite Phptoolkit Не удалось определить клиент Compid

Попытка получить информацию о клиенте с помощью phptoolkit Вот мой код:

function getCustomer(){
  $service = new NetSuiteService();

  $request = new GetRequest();
  $request->baseRef = new RecordRef();
  $request->baseRef->account_id = "252206";
  $request->baseRef->type = "customer";
  $getResponse = $service->get($request);

  if (!$getResponse->readResponse->status->isSuccess) {
     echo "GET ERROR";
  } else {
     $customer = $getResponse->readResponse->record;
     echo "GET SUCCESS, customer:";
     echo "\nCompany name: ". $customer->companyName;
     echo "\nInternal Id: ". $customer->internalId;
     echo "\nEmail: ". $customer->email;
  }
}

И получить ошибку, как это.

Неустранимая ошибка: Uncaught Исключение SoapFault: [soapenv:Server.userException] Не удалось определить клиентский compid в phptoolkit/NSPHPClient.php:338 Трассировка стека: #0 phptoolkit/NSPHPClient.php(338): SoapClient->__soapCall(Array, NULL, Array) #1 phptoolkit/NetSuiteService.php(145953): NSPHPClient->makeSoapCall('get', Object(GetRequest)) #2 netsuite.php(23): NetSuiteService->get(Object(GetRequest)) #3

1 ответ

На основе документации netsuiteRecordRef только принять internalId а также type

$request->baseRef = new RecordRef();
$request->baseRef->internalId = "252206";
$request->baseRef->type = "customer";

Вам нужно знать идентификатор компании и поместить его в файл настроек. Также необходимы адрес электронной почты пользователя, пароль, внутренний идентификатор роли и идентификатор приложения. Они используются для создания паспорта.

Если ваша интеграция использует авторизацию на основе токенов, требования будут другими.

Посмотрите образцы в инструментарии.

Другие вопросы по тегам