3333
3434Пример быстрого старта для приёма платежей:
3535``` php
36- $merchant = new Merchant('MERCHANT_CODE', 'SECRET_KEY');
36+ $merchant = new Merchant('MERCHANT_CODE', 'SECRET_KEY'); // Коды подключения API
37+ $merchantPaymentReference = 123; // Номер заказа в вашей системе
3738$billing = (new Billing)
38- ->setCountryCode('RU')
39- ->setFirstName('Иван')
40- ->setLastName('Петров')
41- ->setEmail('test1@ypmn.ru')
42- ->setPhone('+74996492009')
43- ->setCity('Москва');
39+ ->setCountryCode('RU') // Страна Плательщика
40+ ->setFirstName('Иван') // Имя Плательщика
41+ ->setLastName('Петров') // Фамилия Плательщика
42+ ->setEmail('test1@ypmn.ru') // Почта Плательщика
43+ ->setPhone('+74996492009') // Телефон Плательщика
44+ ->setCity('Москва'); // Город Плательщика
4445
45- $client = (new Client)
46- ->setBilling($billing);
47-
46+ $client = (new Client)->setBilling($billing);
4847$payment = (new Payment)
4948 ->addProduct(new Product([
50- 'name' => 'Заказ №' . $merchantPaymentReference,
51- 'sku' => $merchantPaymentReference,
52- 'unitPrice' => 20.42,
53- 'quantity' => 1,
49+ 'name' => 'Заказ №' . $merchantPaymentReference, // Наименование товарной позиции
50+ 'sku' => 'test_artikul', // Артикул
51+ 'unitPrice' => 20.42, // Стоимость единицы
52+ 'quantity' => 1, // Количество
5453]));
5554$payment_method = $_GET['method'] ?? PaymentMethods::CCVISAMC; // Определим платёжный метод
5655$authorization = new Authorization($payment_method, true);
5756$payment->setAuthorization($authorization);
5857$payment->setMerchantPaymentReference($merchantPaymentReference);
59- $payment->setReturnUrl('https://' . @$_SERVER['HTTP_HOST'] . '/php-api-client/?function=returnPage');
58+ $payment->setSuccessUrl('https://' . $_SERVER['HTTP_HOST'] . '/?status=success'); // Редирект после успешной оплаты
59+ $payment->setFailUrl('https://' . $_SERVER['HTTP_HOST'] . '/?status=success'); // Редирект в случае неоплаты
6060$payment->setClient($client);
61+
6162$apiRequest = new ApiRequest($merchant);
6263$responseData = $apiRequest->sendAuthRequest($payment, $merchant);
63- $responseData = json_decode((string) $responseData["response"], true);
64-
64+ $responseData = json_decode((string) $responseData["response"], true); // Отправка запроса и обработка ответа
6565if (isset($responseData["paymentResult"])) {
6666 if (!empty($responseData['paymentResult']['bankResponseDetails']['customBankNode']['qr'])) {
6767 $qr = $responseData['paymentResult']['bankResponseDetails']['customBankNode']['qr'];
6868 }
6969
70- // Выведем кнопку оплаты, рекомендуется
70+ // Выведем кнопку оплаты ( рекомендуется)
7171 echo Std::drawYpmnButton([
7272 'qr' => ($qr ?? null),
7373 'url' => $responseData['paymentResult']['url'] ?? '',
@@ -87,7 +87,7 @@ if (isset($responseData["paymentResult"])) {
8787- безопасность и точность расчётов
8888
8989Библиотека содержит:
90- - Клиент API
90+ - Клиент для работы с API платежей, выплат, отчётов
9191- Простой встроенный сервер с примерами
9292- Описание контейнера для запуска в Docker
9393
0 commit comments