VibeFox PayFast for WooCommerce — Допомога
Вимоги
WordPress: 6.2 або новіший.
WooCommerce: 8.0 або новіший, встановлений і активний. Плагін не активується без нього.
PHP: 8.0 або новіший.
Валюта: південноафриканський ранд (ZAR), задається в WooCommerce > Settings > General. PayFast розраховується лише в рандах. Мінімальна сума замовлення — R5.00.
Обліковий запис PayFast: Merchant ID і Merchant Key вашого облікового запису PayFast, які знаходяться в Settings > Developer Settings на панелі PayFast. Настійно рекомендовано задати passphrase; якщо її задано в PayFast, та сама passphrase має бути введена в плагіні. Для тестів потрібні облікові дані sandbox PayFast.
Доступний сайт: URL для сповіщень про платежі має бути доступний з інтернету: без режиму обслуговування, базової автентифікації та блокування брандмауером.
Ліцензійний ключ VibeFox: купується на vibefox.net. Один ключ працює для одного домену.
Встановлення
1. У WordPress перейдіть до Plugins > Add New > Upload Plugin, виберіть ZIP-архів плагіна та натисніть Install Now. Також можна завантажити папку wcp_payfast_pay до /wp-content/plugins/ через FTP.
2. Натисніть Activate.
3. Встановіть валюту магазину — південноафриканський ранд — у WooCommerce > Settings > General.
4. Відкрийте налаштування: WooCommerce > Settings > Payments > PayFast > Manage або натисніть Settings під назвою плагіна на сторінці Plugins.
5. Введіть свій ліцензійний ключ VibeFox у блоці ліцензії у верхній частині сторінки та натисніть Activate.
6. Введіть Merchant ID, Merchant Key і passphrase. Для тестів залиште Test mode увімкненим і введіть свої облікові дані sandbox.
7. Увімкніть Enable/Disable і збережіть. Виконайте тестовий платіж, потім вимкніть тестовий режим, щоб приймати реальні платежі.
Налаштування
Усі налаштування розташовані на одній сторінці: WooCommerce > Settings > Payments > PayFast. Над полями сторінка попереджає, якщо облікові дані поточного режиму порожні (тоді PayFast приховується на сторінці оформлення замовлення), якщо валюта магазину не ZAR, якщо в робочому режимі використовується публічний тестовий Merchant ID 10000100, і якщо passphrase не задано; а поки тестовий режим увімкнено, показує Test mode is on: orders are paid in the PayFast sandbox, no real money is charged. У списку способів оплати PayFast позначено як такий, що потребує налаштування, доки не введено Merchant ID і Merchant Key поточного режиму.
Загальні
Enable/Disable: Enable PayFast вмикає або вимикає спосіб оплати. За замовчуванням: вимкнено.
Title: назва способу оплати, яку бачить покупець на сторінці оформлення замовлення. За замовчуванням: PayFast.
Description: текст під способом оплати на сторінці оформлення замовлення. За замовчуванням: Pay securely by card, Instant EFT and other methods on the PayFast payment page.
Обліковий запис PayFast (робочий режим)
Merchant ID і Merchant Key знаходяться на панелі PayFast у розділі Settings > Developer Settings. Якщо там задано passphrase, введіть тут точно таку саму.
Merchant ID: ваш робочий Merchant ID PayFast.
Merchant Key: ваш робочий Merchant Key PayFast. Він передається в PayFast з кожною формою платежу.
Passphrase: сольова passphrase з PayFast, Settings > Developer Settings. Настійно рекомендовано: вона підписує платежі та сповіщення.
Sandbox (тестовий режим)
У тестовому режимі платежі надходять до sandbox PayFast, реальні кошти не списуються. Облікові дані sandbox відображаються після входу до sandbox PayFast (публічний тестовий мерчант — 10000100 / 46f0cd694581a).
Test mode: Use the PayFast sandbox and the sandbox credentials below. На сторінці оформлення замовлення покупець бачить TEST MODE: payments go to the PayFast sandbox, no real money is charged. За замовчуванням: увімкнено.
Sandbox Merchant ID: Merchant ID вашого облікового запису sandbox.
Sandbox Merchant Key: Merchant Key вашого облікового запису sandbox.
Sandbox Passphrase: лише якщо passphrase задано у вашому обліковому записі sandbox.
Під час оновлення з версії 1.0 у тестовому режимі ваші наявні облікові дані копіюються в поля sandbox. Перевірте робочі облікові дані, перш ніж вимикати тестовий режим.
Сповіщення про платежі (ITN)
PayFast підтверджує кожен платіж серверним сповіщенням на URL, який показано в цьому розділі. Він має такий вигляд: https://your-site/wc-api/payfast_pay/. Адреса передається з кожним платежем, тож у PayFast нічого налаштовувати не потрібно, але вона має бути доступна з інтернету.
Перевірка джерела: Accept live notifications only from PayFast servers. Адреси беруться із записів DNS PayFast. Вимикайте цю опцію, лише якщо ваш сайт розташовано за проксі або CDN, які приховують адресу відвідувача. Підпис і серверне підтвердження перевіряються завжди. Сповіщення sandbox не перевіряються за адресою. За замовчуванням: увімкнено.
Додатково
Debug log: Log payment steps записує кроки до WooCommerce > Status > Logs, джерело wcp_payfast_pay. Помилки записуються завжди. Passphrase і дані покупців не записуються. За замовчуванням: вимкнено.
Uninstall: Delete the gateway settings and logs when the plugin is deleted. За замовчуванням: вимкнено.
Оформлення замовлення
Покупець обирає спосіб оплати (за замовчуванням PayFast) і оформлює замовлення. Він переходить на сторінку Pay for order замовлення, яка показує Thank you for your order. You are being redirected to PayFast to complete the payment., і підписана форма платежу автоматично надсилається в PayFast. Якщо браузер не продовжує сам, покупець натискає Pay with PayFast; Cancel order скасовує замовлення. Форма містить суму замовлення в ZAR, Order # з номером замовлення, ім'я та e-mail покупця, а також ключ замовлення. Вона формується заново щоразу, коли відкривається сторінка, тож покупець може відкрити її знову після повернення з PayFast.
На сторінці PayFast покупець платить карткою, Instant EFT або іншим способом вашого облікового запису PayFast. Потім PayFast надсилає сповіщення про платіж (ITN) вашому магазину. Замовлення позначається оплаченим лише тоді, коли сповіщення проходить усі перевірки:
Повернення покупця на сторінку «Замовлення отримано» не змінює замовлення. Поки сповіщення не надійшло, сторінка показує PayFast is confirming your payment. You will receive an e-mail as soon as it is confirmed — there is no need to pay again. Якщо замовлення на утриманні, відображається Your payment is being reviewed. We will contact you if anything else is needed.
Якщо покупець скасовує платіж на сторінці PayFast, замовлення скасовується стандартним для WooCommerce способом. Якщо покупець іде, не заплативши, замовлення залишається неоплаченим і його можна оплатити зі сторінки Pay for order.
Спосіб оплати працює на класичному оформленні замовлення, у блоці «Оформлення замовлення» та на сторінці Pay for order. Він приховується, коли облікові дані поточного режиму відсутні, якщо валюта магазину або замовлення не ZAR, або якщо сума менша за R5.00. Він сумісний із HPOS (High-Performance Order Storage) у WooCommerce.
Плагін приймає лише разові платежі в ZAR. Він не підтримує повернення коштів з WooCommerce, підписки, збережені (токенізовані) картки, попередні замовлення та платежі з розподілом.
Замовлення
Статуси замовлень
Pending payment: покупця перенаправлено до PayFast, а сповіщення про платіж ще не надійшло.
Processing: PayFast підтвердив платіж. Це стандартний статус WooCommerce після оплати; замовлення, що містять лише віртуальні товари для завантаження, переходять у статус «Виконано». У примітці до замовлення вказано ідентифікатор платежу PayFast, який також є ідентифікатором транзакції замовлення. Платіж у sandbox отримує примітку, що реальні кошти не списано. Комісія PayFast і чиста сума зберігаються в замовленні.
On hold: PayFast повідомив, що платіж очікує обробки; або сплачена сума відрізняється від суми замовлення, або замовлення не в ZAR; або надійшов платіж за вже скасоване замовлення. Примітка до замовлення пояснює причину. Перевірте замовлення та панель PayFast, потім відправте замовлення або поверніть платіж у PayFast.
Failed: PayFast повідомив, що платіж не виконано, поки замовлення було неоплаченим. Покупець може оплатити знову.
Cancelled: покупець скасував платіж на сторінці PayFast, або замовлення скасовано вами чи через тайм-аут резервування запасів WooCommerce.
Повторне сповіщення про той самий платіж нічого не змінює. Якщо для вже оплаченого замовлення надходить ще один завершений платіж, примітка радить повернути дубль у PayFast. Платіж за повернене замовлення лише додає примітку. Платіж у sandbox, отриманий, коли шлюз працює в робочому режимі, додає примітку й не позначає замовлення оплаченим.
Повернення коштів
Повернення коштів з WooCommerce не підтримуються. Поверніть платіж на панелі PayFast, а потім створіть ручне повернення в WooCommerce.
Ліцензійний ключ
Плагін працює з ліцензійним ключем VibeFox з vibefox.net. Блок ліцензії розташований угорі WooCommerce > Settings > Payments > PayFast. Вставте ключ у поле License key і натисніть Activate. Блок показує статус, наприклад дату, до якої ліцензія активна, і ваш домен. Використовуйте Check now, щоб перевірити статус знову, Change key, щоб ввести інший ключ, і Remove key, щоб видалити його з цього сайту. Посилання Manage licenses and domains in your account відкриває ваш обліковий запис vibefox.net.
Один ключ працює для одного домену. Видалення ключа з сайту не звільняє місце для домену. Звільніть його у своєму обліковому записі vibefox.net.
Без активного ключа PayFast не відображається покупцям на сторінці оформлення замовлення. Якщо оплату все ж розпочато, покупець бачить This payment method is not available. Please choose another one. Адміністратори магазину, які увійшли в систему, як і раніше бачать спосіб оплати з позначкою (unlicensed — visible to admins only), тож ви можете налаштувати й протестувати плагін до придбання ключа. Нагадування з'являється на сторінці Plugins і на сторінках WooCommerce. Наявні замовлення не змінюються: вже розпочаті платежі все одно підтверджуються.
Коли ліцензія спливає, плагін продовжує працювати, але для оновлень і підтримки потрібне продовження. Статус автоматично перевіряється у фоновому режимі.
Усунення несправностей
PayFast не з'являється на сторінці оформлення замовлення: перевірте, що ліцензія активна, увімкнено Enable/Disable, заповнені Merchant ID і Merchant Key поточного режиму, валюта магазину — ZAR, а сума замовлення становить щонайменше R5.00. Сторінка налаштувань показує попередження, якщо чогось бракує.
Оплата пройшла, але замовлення лишається в статусі «Очікує оплати»: PayFast не зміг доставити сповіщення про платіж або його відхилено. Увімкніть Debug log і перевірте WooCommerce > Status > Logs, джерело wcp_payfast_pay. Типові причини: сайт недоступний з інтернету (режим обслуговування, базова автентифікація, брандмауер), різні passphrase у PayFast і в плагіні, або, у робочому режимі за проксі чи CDN, перевірка джерела. У такому разі вимкніть Source check.
Сповіщення відповідає Invalid signature: passphrase у плагіні не є тією, що задана в PayFast для цього режиму.
Сповіщення відповідає Invalid source: сповіщення надійшло не з адреси PayFast, або проксі чи CDN приховує справжню адресу. Вимкніть Source check, якщо ваш сайт розташовано за проксі або CDN.
Сповіщення відповідає Merchant mismatch або Order mismatch: платіж надійшов на інший обліковий запис PayFast або не належить до цього замовлення. Нічого не змінюється.
Сповіщення відповідає Confirmation unavailable або Busy: PayFast не вдалося залучити для серверного підтвердження, або інше сповіщення щодо того самого замовлення в цей момент оброблялося. PayFast повторить сповіщення.
Сповіщення відповідає Not configured: відсутні облікові дані режиму, у якому оплачено замовлення.
Покупець бачить PayFast accepts payments from R5.00: сума замовлення менша за мінімум PayFast.
Замовлення має статус On hold: PayFast підтвердив платіж, який не відповідає замовленню (інша сума або валюта, відмінна від ZAR), або платіж надійшов за вже скасоване замовлення. Перевірте примітки до замовлення та панель PayFast.
Платіж у sandbox не оплатив замовлення: шлюз працює в робочому режимі. Платежі sandbox у робочому режимі ніколи не оплачують замовлення; примітка до замовлення про це повідомляє.
Блок ліцензії показує помилку: дотримуйтеся повідомлення в блоці. Наприклад, якщо ключ уже використовується на іншому домені, звільніть місце у своєму обліковому записі vibefox.net і натисніть Check now. Якщо адреса сайту змінилася, натисніть Check now, щоб активувати ключ для нового домену. Якщо сервер ліцензій недоступний, плагін продовжує працювати з останнім відомим статусом.
Видалення
Деактивація плагіна зберігає всі дані. Щоб видалити його, деактивуйте та видаліть його на сторінці Plugins. Ліцензійний ключ і статус ліцензії цього плагіна завжди видаляються. Налаштування шлюзу, інші опції плагіна, кешовані адреси PayFast та його журнали видаляються лише тоді, коли було увімкнено опцію Delete the gateway settings and logs when the plugin is deleted. Інакше вони зберігаються для повторного встановлення. Наявні замовлення зберігають свої примітки про оплату та ідентифікатори транзакцій.
PayFast є торговельною маркою її власника. Цей плагін не афілійований із PayFast і не схвалений ним.
