<?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); $orderId = null; Logger::info('Searching for an order transaction'); $filter = new TransactionsFilter(); $filter->setSide(TransactionSide::SALE); $filter->setType(TransactionType::ORDER); $result = $client->listTransactions($filter); $ordersCount = count($result); Logger::info('Found {0} orders', $ordersCount); if ($ordersCount > 0) { $orderId = $result[0]->getId(); Logger::info('Using order {0} for further processing', $orderId); } // Convert order to invoice if ($orderId !== null) { Logger::info('Converting order {0} into invoice', $orderId); $pdf = new FileData(); $pdf->setFromFile(dirname(__FILE__) . '/../test.pdf'); $data = new OrderConversionData(); $data->setTransactionId($orderId); $data->setInvoiceDocumentNumber("Converted from order " . uniqid()); $data->setIssueDate(date('Y-m-d', time())); $data->setDueDate(date('Y-m-d', time() + 30 * 24 * 60 * 60)); $data->setInvoiceDocument($pdf); $result = $client->convertOrderToInvoice($data); Logger::info('Result is: {0}', $result); }
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(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); }
<?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); Logger::info('Creating new order'); $request = new OrderData(); $request->setDocumentNumber('Test/' . uniqid()); $request->setIssueDate(date('Y-m-d', time())); $request->setPriceGross(123); $request->setCurrency('PLN'); $request->setNote('Test transaction from API'); $request->setNoRisk(true); $contractor = new Contractor(); $contractor->setName('Test contractor ' . uniqid()); $contractor->setTaxPayerNumber('8429067910'); $contractor->setEmail('*****@*****.**'); $contractor->setFax('12312123'); $contractor->setPhone('234234234'); $contractor->setWww('www.esr24.pl'); $contractorAccount = new BankAccount(); $contractorAccount->setBankName('Test bank'); $contractorAccount->setNumber('PL123123123123123123123'); $contractor->setAccount($contractorAccount); $contractorAddress = new AddressData(); $contractorAddress->setStreet('Test street 1/2'); $contractorAddress->setCity('Testville'); $contractorAddress->setPostCode('00-111'); $contractorAddress->setCountryCode('PL'); $contractor->setAddress($contractorAddress); $request->setContractor($contractor);
<?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();
<?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); $orderId = null; Logger::info('Getting payoff cost calculation'); $transactionIds = array('4e95f6d9-6b64-4129-8332-ab7163e012f9', '5e15f6d9-6b64-4129-8332-ab7163e012f2'); $result = $client->calculatePayoffCost($transactionIds); Logger::info('Result is: {0}', $result); Logger::info('Getting payoff cost calculation'); $transactionIds = array('4e95f6d9-6b64-4129-8332-ab7163e012f9', '5e15f6d9-6b64-4129-8332-ab7163e012f2'); $result = $client->startPayoff($transactionIds); Logger::info('Result is: {0}', $result);