Перейти до основного вмісту

Меню команд

Перейдіть на сторінку або пошукайте в каталозі

ШІ-інструменти та скрипти

Перевірка інтеграції PayPal

Перевірте оплату через PayPal перед запуском: секрети клієнта в браузері або в коді, суми замовлень, узяті із запиту, захоплення платежів у браузері, яким довіряє ваш сервер, неперевірені вебхуки та IPN, пісочниця в продакшені та застарілі SDK.

$5.00

Що ви отримаєте: 1 файл · 55.97 KB · ZIP

Переглянути варіанти купівлі

Опис товару

value: req.body.total у замовленні PayPal дає змогу покупцеві заплатити 0.01 за будь-що, а маршрут вебхука, який позначає замовлення оплаченими без виклику verify-webhook-signature, дає змогу будь-кому надіслати підроблену подію PAYMENT.CAPTURE.COMPLETED. Ця навичка знаходить такі помилки та ще десять інших помилок інтеграції PayPal до того, як ви почнете приймати реальні платежі, і пояснює, як виправити кожну з них.

Ваш агент запускає сканер для серверного коду (JavaScript і TypeScript, Python, PHP, Ruby, Java, C#, Go), сторінок і компонентів (HTML-шаблони, JSX/TSX, Vue, Svelte), файлів .env, конфігурації застосунку та маніфестів залежностей, у яких згадуються PayPal, типи подій вебхуків PayPal або поля IPN. Він відстежує значення із запиту через присвоєння, деструктуризацію, прості обгортки та параметри допоміжних функцій, тому ціна, знайдена на сервері за ID, надісланим клієнтом, не потрапляє до звіту, враховується останнє присвоєння перед використанням, а сума пожертви, перевірена за вашими передустановками або лімітами, проходить перевірку. Він оцінює кожен маршрут вебхука окремо (враховуються middleware, guards і виклики перевірки), відрізняє браузерний код від серверного та переглядає весь проєкт, перш ніж визнати захоплення платежу в браузері довіреним. Він знає моделі PayPal Server SDK, тіло запиту REST Orders v2, допоміжні функції actions у JavaScript SDK і checkout.js. Він ніколи не запускає ваш код і ніколи не звертається до PayPal. Він повертає BLOCK, REVIEW або NOT FLAGGED із зазначенням файлу, рядка, причини та безпечнішого підходу. Секрети ніколи не виводяться.

Що перевіряється

BLOCK (виправити до випуску)

  • P01: секрет клієнта в публічній змінній оточення (NEXT_PUBLIC_, VITE_, REACT_APP_ та подібних), у блоці env Next.js, у define збирача, у публічній runtime-конфігурації Nuxt або в браузерному коді, а також запит OAuth-токена з браузера
  • P02: секрети клієнта PayPal, паролі або підписи NVP/SOAP API, токени доступу, облікові дані Basic або продакшен-токени Braintree, записані в коді чи закомічені в конфігурацію, зокрема літеральні значення за замовчуванням і .env.example
  • P03: сума замовлення, валюта або purchase units, узяті із запиту без перевірки за білим списком чи лімітом, підсумовані з цін, надісланих клієнтом, або все тіло запиту, передане до PayPal
  • P04: actions.order.capture() у браузері, результат якого надсилається на ваш сервер або на сторінку успішної оплати, за відсутності серверного коду, який запитує замовлення в PayPal або перевіряє вебхук
  • P05: маршрути вебхуків без перевірки підпису (Express, Next.js, NestJS, Flask, Django, Laravel, Rails, Go) і обробники IPN без зворотного запиту cmd=_notify-validate

REVIEW (перевірити перед релізом)

  • P11: хости пісочниці або режим пісочниці в продакшен-конфігурації чи бойовий режим, що вказує на хост пісочниці
  • P12: застарілі або покинуті SDK PayPal (paypal-rest-sdk, @paypal/checkout-server-sdk, paypalrestsdk, старі SDK для PHP, Ruby, .NET і Java, checkout.js)
  • P13: серверні захоплення платежів, які позначають замовлення оплаченими або виконують доставку без перевірки статусу COMPLETED
  • P14: замовлення, що створюються в браузері через actions.order.create()
  • P15: обробники IPN, які пропускають перевірки payment_status, receiver і mc_gross
  • P16: вимкнена перевірка TLS-сертифікатів у коді, що звертається до PayPal
  • P17: логування PayPal Server SDK з незамаскованими конфіденційними заголовками, через що токен доступу потрапляє до логів

Що входить до комплекту

  • Сканер (Python 3.9+, лише стандартна бібліотека)
  • Посібник із правил із причиною, безпечнішим підходом і посиланням на офіційну документацію PayPal для кожного правила
  • Ризиковий і безпечний приклади проєктів, а також справжній звіт, який сканер видає для ризикового проєкту

Обмеження

Сканер читає кожен файл у тому вигляді, у якому його написано. Значення, що передаються через інші модулі, бази даних або внутрішні механізми фреймворків, не відстежуються, значення із запиту в Java, C# і Go відстежуються лише через параметри @RequestBody і [FromBody], а налаштування в панелі керування (підписки на вебхуки, бойові облікові дані, налаштування приймання платежів) не видно. P04 бачить лише файли, які ви скануєте, тому скануйте весь проєкт. Зберігання платіжних даних (vaulting), виплати та логіка підписок не перевіряються понад наведені вище правила. NOT FLAGGED не є гарантією.

Склад

Один ZIP-файл із 22 файлами: SKILL.md, сканер у scripts/ (7 файлів Python), references/rules.md (усі правила з причинами та безпечнішими підходами) і examples/ (12 файлів прикладів плюс report.md, справжній вивід сканера для ризикового прикладу).

Як використовувати: Це навичка для агента: тека з файлом SKILL.md і скриптами Python, які може запускати ШІ-агент для програмування, наприклад Claude Code, Cursor або Codex CLI. Розпакуйте її в теку навичок вашого агента (для Claude Code: ~/.claude/skills/), потім попросіть агента перевірити ваш проєкт. Скрипти також працюють самостійно з Python 3.9 або новішим, нічого встановлювати не потрібно. Вони лише читають ваші файли: жодного доступу до мережі, нічого нікуди не надсилається.

Що ви отримаєте

1 файл · 55.97 KB

  • paypal-integration-check-1.0.0.zipZIP · 55.97 KB
ЛіцензіяКомерційне використання дозволено
Перевірка пакетаПройдено

Getly відкрив завантажені файли й не знайшов нічого, що завадило б їх відкрити. Це не антивірусна перевірка і не оцінка якості.

Опубліковано12 лист. 2026 р.
Розмір файлу55.97 KB
Формат файлуZIP
Версіяv1.0

Теги

paypalpaymentscheckoutwebhookssecurityai agent skill
R
RR HH

Поширені запитання

Чи отримаю я доступ одразу?

Так. Це цифровий товар: ви можете завантажити його одразу після оплати, просто зі своєї бібліотеки.

Чи можна використовувати його в комерційних проєктах?

Так. Комерційне використання дозволено: користуйтеся в особистому бізнесі та в тому, що продаєте. Ви не можете перепродавати чи поширювати сам файл.

Яка у вас політика повернення коштів?

Ви можете запросити повернення коштів протягом 30 дн. Якщо щось не так, подайте запит зі свого замовлення, і команда Getly його розгляне.

Які формати та розміри файлів я отримаю?

Ви завантажите 1 файл - ZIP - загалом 55.97 KB.

Чи отримую я безкоштовні оновлення?

Так: коли продавець випускає нову версію, ви можете повторно завантажити свіжі файли зі своєї бібліотеки безкоштовно. Останні оновлення дивіться в журналі змін.

Ціна

$5.00