<?php require_once dirname(__FILE__) . "/../../TransactionsApiClient.class.php"; require_once dirname(__FILE__) . "/../config.php"; $client = new TransactionsApiClient(INVIPAY_API_URL, INVIPAY_API_KEY, INVIPAY_SIGNATURE_KEY, INVIPAY_PARTNER_API_KEY, INVIPAY_PARTNER_SIGNATURE_KEY); $randomItemId = null; $randomItemAttachmentId = null; Logger::info('Listing transactions'); $filter = new TransactionsFilter(); $filter->setSide(TransactionSide::SALE); $result = $client->listTransactions($filter); $randomItemIndex = array_rand($result); if ($randomItemIndex !== false && $randomItemIndex !== null) { $randomItemId = $result[$randomItemIndex]->getId(); $randomItemAttachmentId = $result[$randomItemIndex]->getAttachment() !== null ? $result[$randomItemIndex]->getAttachment()->getId() : null; } Logger::info('Result is: {0}', $result); print_separator(); if ($randomItemId !== null) { Logger::info('Getting details of transaction {0}', $randomItemId); $result = $client->getTransaction($randomItemId); Logger::info('Result is: {0}', $result); print_separator(); } if ($randomItemAttachmentId !== null) { Logger::info('Downloading document {0} of transaction {1}', $randomItemAttachmentId, $randomItemId); $result = $client->downloadDocument($randomItemAttachmentId); $outputPath = dirname(__FILE__) . '/' . $randomItemAttachmentId . '.pdf'; file_put_contents($outputPath, $result); Logger::info('Saved {0} bytes of data to file {1}', strlen($result), $outputPath); }
Logger::debug('Received from callback: {0}', $data); $paymentId = $data->getPaymentId(); if ($data->getDataType() == 'PaymentDetails') { $file = dirname(__FILE__) . "/repository/" . $paymentId; $newData = array('version' => 0, 'data' => $data); if (file_exists($file)) { $oldData = unserialize(file_get_contents($file)); if (!empty($oldData)) { $newData['version'] = $oldData['version'] + 1; } } Logger::info("Putting new data into repository {0}:\r\n{1}", $file, $newData); file_put_contents($file, serialize($newData)); } else { if ($data->getDataType() == 'PaymentOperationFinalizationInfo') { // Call transactions api to confirm this event and fetch full transaction details $transactionsApiClient = new TransactionsApiClient(INVIPAY_API_URL, INVIPAY_API_KEY, INVIPAY_SIGNATURE_KEY); $transactionDetails = $transactionsApiClient->getTransaction($data->getData()->getTransactionId()); $file = dirname(__FILE__) . "/repository/" . $paymentId . "_finalization_info.txt"; Logger::info("Putting transaction data into file {0}\r\n{1}", $file, $transactionDetails); file_put_contents($file, Logger::format('{0}', $transactionDetails)); } else { if ($data->getDataType() == 'ApiOperationException') { $file = dirname(__FILE__) . "/repository/" . $paymentId . "_exception.txt"; Logger::info('Putting exception info into file {0}', $file); file_put_contents($file, Logger::format('{0}', $data->getData())); } else { Logger::info("Got unknown data for payment {0}:\r\n{1}", $paymentId, $data->getData()); } } }
<?php require_once dirname(__FILE__) . "/../../TransactionsApiClient.class.php"; require_once dirname(__FILE__) . "/../config.php"; $client = new TransactionsApiClient(ApiUrl::URL_LOCAL, INVIPAY_API_KEY, INVIPAY_SIGNATURE_KEY, INVIPAY_PARTNER_API_KEY, INVIPAY_PARTNER_SIGNATURE_KEY); $transactionId = '5f28fb93-db4a-4d1c-9529-4f6e81603ffc'; Logger::info('Getting details of transaction {0}', $transactionId); $result = $client->getTransaction($transactionId); Logger::info('Result is: {0}', $result); print_separator();