usertech/kupnajisto-api-php

此包已被 弃用 并不再维护。未建议替代包。
此包最新版本(1.1.2)的许可证信息不可用。

KupNajisto PHP API

1.1.2 2017-03-25 06:15 UTC

This package is not auto-updated.

Last update: 2020-01-24 17:08:26 UTC


README

PHP实现,用于访问支付方式API http://www.kupnajisto.cz

# 更新日志

  • 添加了namespaces
  • 作为composer包提供
  • API使用对象而不是关联数组

# 安装

  • 作为composer依赖: composer require usertech/kupnajisto-api-php
  • 或作为独立版本: composer install

# 示例


use KNJ\KupNajistoApi;
use KNJ\Exception\KupNajistoException;
use KNJ\Object\Enum\DeliveryTypes;
use KNJ\OrderBuilder;

$orderData = array(
	'tin' => '123456789',
	'vatin' => 'CZ123456789',
	'total_price' => 1300.8,
	'ext_id' => '3253234248941',
	'ext_variable_symbol' => '5323424894',
	'phone' => '+420 555 666 999',
	'delivery_carrier' => DeliveryTypes::CZECH_POST_TO_HAND,
	'cookie_id' => 'dh763jdkl8783jsldif783728jnkjdflfsd',
	'ip_address' => '79.98.79.213',
	'paygate' => true, //pokud chcete použít platební bránu
	'success_url' => 'http://vaseshop.cz/vase-success-url', //přesměrovací url při úspěšném zaplacení objednávky
	'failure_url' => 'http://vaseshop.cz/vase-failure-url', //přesměrovací url při neúspěšném zaplacení objednávky
	'callback_url' => 'http://vaseshop.cz/vase-callback-url', //url kam se mají posílat změny o stavu objednávky
);

$builder = new OrderBuilder();
$builder
	->setCustomer('Karel Holan', 'karel.holan@rychmat.euxx', '890707/0029', '100786676', '2024-04-24')
	->setBillingAddress('Karel Holan', 'CR', 'Ulice 123', '120 00', 'Praha')
	->addItem('item123', 'Pocitac', 500, 2)
	->addInvoice('filename.pdf', 'application/pdf', base64_encode('data of some file'))
	->setParamsFromArray($orderData);

$order = $builder->getOrder();

try {
	$api = new KupNajistoApi('vas@email.cz', 'vaseheslo', 'https://app.kupnajisto.cz/');
	$response = $api->createOrder($order);
	var_dump($response); // json response as assoc array

	// $response['id'] --> id
	// $response['state'] --> stav 3 - schvaleno, 4 - zamitnuto
	// $response['admin_field_rest_scoring_msg'] --> zprava o zamitnuti

	if ($response['state'] == 3) {
		$response = $api->confirmOrder($response['id']); // potvrzeni objednavky
		$order->setTotalPrice(120);
		$response = $api->updateOrder($response['id'], $order); // uprava objednavky - zmena ceny
	}

} catch (KupNajistoException $e) {
	var_dump(json_decode($e->getMessage(), TRUE));
}