Cum să vă configurați site-ul pentru a accepta Webhooks de la Stripe
În acest document
Webhooks permit Stripe să trimită mesaje înapoi pe site-ul dvs. WordPress. Configurarea webhook-urilor este necesară pentru o parte din funcționalitatea WP Simple Pay, cum ar fi trimiterea de e-mailuri, crearea de planuri de rate, permiterea clienților să actualizeze detaliile de plată ale abonamentului lor și utilizarea integrării sale cu AffiliateWP.
Adăugați un punct final în Stripe
Pentru a adăuga punctele finale de webhook corespunzătoare, în panoul de control Stripe, accesați Dezvoltatori → Webhooks.

Faceți clic pe Adăugați punct final, apoi adăugați URL-ul găsit în WP Simple Pay → Setări → Stripe → Webhooks.


Acum va trebui să adăugați evenimentele specifice la care să ascultați, făcând clic pe butonul etichetat +Selectați evenimente. După ce ați făcut acest lucru, puteți copia și lipi fiecare eveniment listat mai jos în caseta de căutare Selectați evenimente de trimis → Căutați evenimente.

După ce ați căutat fiecare termen, faceți clic pe caseta de selectare pentru a-l adăuga și căutați termeni suplimentari. Nu faceți clic pe Adăugați evenimente până când nu ați bifat toate evenimentele listate mai jos:
payment_intent.processingpayment_intent.succeededcharge.failedcharge.refundedcharge.succeededcheckout.session.completedcustomer.subscription.deletedcustomer.subscription.updatedinvoice.payment_succeededinvoice.upcoming
Detalii despre funcționalitatea fiecăruia dintre aceste evenimente sunt prezentate în partea de jos a acestui document.
Când ați terminat de adăugat evenimente, faceți clic pe Adăugați punct final pentru a finaliza procesul. După ce adăugați punctul final, ar trebui să vedeți noul URL listat în setările webhook-urilor.

Configurarea secretului de semnare a webhook-ului
Stripe poate semna evenimentele webhook pe care le trimite către endpoint-urile dvs. pentru o securitate sporită și recomandăm cu tărie să configurați acest lucru.
Pentru a face acest lucru, preluați secretul endpoint-ului dvs. din setările webhook-urilor din Dashboard. Selectați endpoint-ul adăugat pentru care doriți să obțineți secretul, apoi faceți clic pe butonul Afișare .

Apoi copiați secretul de semnare din Stripe Dashboard, reveniți la WP Simple Pay → Setări → Stripe → Webhooks în administratorul dvs. WordPress, apoi lipiți-l în caseta de text Secret endpoint pentru modul de plată curent.
Repetați în Modul de testare
Un endpoint webhook trebuie creat și în Modul de testare. Comutați comutatorul Mod de testare din dreapta sus al dashboard-ului Stripe și repetați pașii de mai sus.

Descrierea tipurilor de evenimente
invoice.payment_succeeded
- Utilizat pentru a incrementa planurile de rate și pentru a trimite e-mailuri de „Confirmare plată” și „Notificare plată” emailuri pentru Abonamente.
- Expune acțiunea
simpay_webhook_subscription_createdpentru procesare suplimentară după crearea cu succes a unui abonament. - Expune acțiunea
simpay_webhook_invoice_payment_succeededpentru procesare suplimentară după procesarea unei facturi.
<?php
add_action(
'simpay_webhook_subscription_created',
/**
* Fires when a subscription is created in Stripe.
*
* @param \SimplePay\Vendor\Stripe\Event $event Stripe webhook event.
* @param \SimplePay\Vendor\Stripe\Subscription $subscription Stripe Subscription.
*/
function( $event, $subscription ) {
// Do something.
},
10,
2
);
<?php
add_action(
'simpay_webhook_invoice_payment_succeeded',
/**
* Fires when a subscription invoice payment has succeeded.
* Does not fire for the subscription creation (first) invoice.
*
* @param \SimplePay\Vendor\Stripe\Event $event Stripe webhook event.
* @param \SimplePay\Vendor\Stripe\Invoice $invoice Stripe Invoice object.
* @param \SimplePay\Vendor\Stripe\Subscription $subscription Stripe Subscription object.
*/
function( $event, $invoice, $subscription ) {
// Do something.
},
10,
3
);
payment_intent.succeeded
- Trimite e-mailurile de „Confirmare plată” și „Notificare plată” emailuri pentru plățile unice.
- Expune acțiunea
simpay_webhook_payment_intent_succeededpentru procesare suplimentară după o plată reușită
<?php
add_action(
'simpay_webhook_payment_intent_succeeded',
/**
* Fires when a one-time payment has succeeded.
*
* @param \SimplePay\Vendor\Stripe\Event $event Stripe webhook event.
* @param \SimplePay\Vendor\Stripe\PaymentIntent $paymentintent Stripe PaymentIntent.
*/
function( $event, $paymentintent ) {
// Do something.
},
10,
2
);
invoice.upcoming
- Trimite remindere prin e-mail „Factură în curs de apariție” email pentru actualizarea unei Metode de plată. Aflați mai multe
checkout.session.completed
- Utilizat pentru a elimina înregistrările Stripe Checkout abandonate generate.
- Expune acțiunea
simpay_webhook_checkout_session_completedpentru procesare suplimentară, dacă este necesar.
charge.succeeded
- Trimite e-mailurile de „Confirmare plată” și „Notificare plată” emailuri pentru plățile unice prin ACH Debit.
- Expune acțiunea
simpay_webhook_charge_succeededpentru procesare suplimentară după o plată reușită
charge.failed
- Expune acțiunea
simpay_webhook_charge_failedpentru procesare suplimentară după eșecul unei Tranzacții.
Întrebări Frecvente
Sunt necesare webhook-urile?
Webhook-urile nu sunt necesare pentru a procesa plățile, iar atunci când un webhook eșuează, acest lucru nu indică faptul că o plată nu a fost procesată. Cu toate acestea, webhook-urile sunt utilizate pentru a activa funcționalități precum detectarea fraudelor, chitanțe prin e-mail, notificări despre facturile viitoare și gestionarea planurilor de rate.
Chiar dacă nu utilizați aceste funcționalități în prezent, este foarte recomandat să vă asigurați că ați configurat corect punctul final webhook pentru a evita confuzia dacă decideți să activați aceste funcționalități în viitor, sau dacă WP Simple Pay necesită aceste funcționalități pentru funcționalități viitoare.
De ce văd „WP Simple Pay s-ar putea să nu funcționeze corect.”
WP Simple Pay încearcă să vă alerteze cu privire la o posibilă configurare greșită sau eroare a punctului final webhook pentru a evita întreruperea funcționalităților care utilizează funcționalitatea webhook (emailuri, planuri de rate, etc.). Dacă WP Simple Pay nu poate verifica un eveniment webhook așteptat, veți vedea o bulină de notificare în setările pluginului și mesajul de eroare „WP Simple Pay s-ar putea să nu funcționeze corect.”
Cum repar un punct final webhook configurat greșit?
Pentru a rezolva o posibilă configurare greșită a punctului final webhook, vizitați Dezvoltatori → Webhooks în panoul dvs. Stripe (dacă sunteți în Mod de testare, vizualizați punctele finale ale modului de testare).
Sub Puncte finale găzduite ar trebui să vedeți o intrare care conține receptorul de evenimente webhook WP Simple Pay: wp-json/wpsp/v1/webhook-receiver. Dacă nu vedeți acest punct final, vă rugăm să urmați pașii de configurare descriși la începutul acestui articol.

Faceți clic pe URL-ul punctului final WP Simple Pay pentru a vizualiza configurația punctului final. Aici veți găsi o listă a evenimentelor webhook care au fost trimise către punctul final.
Faceți clic pe fila Eșuate pentru a lista orice evenimente care au eșuat.

Dacă aveți evenimente webhook eșuate, selectarea uneia dintre intrări va dezvălui răspunsul primit de la URL-ul punctului final. Acest răspuns conține adesea informații despre motivul pentru care punctul final nu a reușit să proceseze evenimentul în secțiunea Răspuns.

Eroare la conectarea la gazda la distanță
Stripe nu a putut comunica cu serverul dvs. Vă rugăm să vă asigurați că serverul dvs. web răspunde la solicitări și, în mod specific, este capabil să răspundă la oricare dintre numele de domenii complet calificate și adresele IP ale Stripe.
Nu s-au găsit semnături care să corespundă semnăturii așteptate pentru sarcină utilă
Stripe nu a putut verifica datele evenimentului webhook folosind secretele de semnare furnizate în WP Simple Pay → Setări → Stripe → Webhooks. În timp ce vizualizați punctul final webhook, faceți clic pe Afișare sub Secret de semnare și actualizați setările secretului de semnare în WP Simple Pay pentru fiecare mod de plată.
404 ERR <!DOCTYPE html>
URL-ul punctului final webhook este incorect și indică o pagină 404 nefiind găsită. Vizitați WP Simple Pay → Setări → Stripe → Webhooks pentru a găsi valoarea corectă a URL-ului punctului final webhook și actualizați punctul final în Stripe.

Am verificat setările punctului meu final, de ce văd în continuare o eroare?
WP Simple Pay este intenționat excesiv de receptiv la posibilele neconfigurări pentru a se asigura că o eroare reală nu trece neobservată. Cu toate acestea, este încă posibil să primiți notificări de tip fals pozitiv ale unui eveniment webhook neconfigurat. Acest lucru se poate întâmpla dacă există o întârziere mai mare decât media în trimiterea datelor evenimentului de către Stripe, sau în unele cazuri de Stripe Checkout unde pagina de plată off-site este abandonată.
Dacă ați verificat că nu există evenimente eșuate ale endpoint-ului webhook pe endpoint-ul dvs. atunci puteți dezactiva notificarea de configurare urmând pașii de mai jos.
Pot dezactiva notificările de configurare webhook?
Așa cum am menționat anterior, este foarte recomandat să configurați corect și să mențineți activ endpoint-ul webhook. Cu toate acestea, pe propriul risc, dacă nu doriți să fiți alertat cu privire la posibile neconfigurări sau evenimente primite incorect, puteți respinge permanent notificarea din WP Simple Pay → Setări → Stripe → Webhooks făcând clic pe Nu mai afișa.
Încă mai aveți întrebări? Suntem aici pentru a vă ajuta!
Ultima modificare: