Documentație WP Simple Pay

Documentație, materiale de referință și tutoriale pentru WP Simple Pay

Cum să vă configurați site-ul pentru a accepta Webhooks de la Stripe

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.

WP Simple Pay încearcă să creeze puncte finale de webhook automat. În majoritatea cazurilor, configurarea manuală, așa cum este prezentată mai jos, nu va fi necesară.

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.

Adăugați endpoint Stripe

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.

Setări endpoint webhook WP Simple Pay
webhook-urile Stripe ascultă evenimentele Stripe

Nu activați Ascultați evenimente pe conturi conectate, deoarece acest lucru va perturba funcționalitatea webhook-urilor WP Simple Pay.

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.

selectați evenimentele webhook de trimis

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.processing
  • payment_intent.succeeded
  • charge.failed
  • charge.refunded
  • charge.succeeded
  • checkout.session.completed
  • customer.subscription.deleted
  • customer.subscription.updated
  • invoice.payment_succeeded
  • invoice.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.

adăugați endpoint webhook

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 .

afișați cheia secretă webhook

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.

Comutator mod test Stripe

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_created pentru procesare suplimentară după crearea cu succes a unui abonament.
  • Expune acțiunea simpay_webhook_invoice_payment_succeeded pentru 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
);

Aflați cum să adăugați cod personalizat →

payment_intent.succeeded

  • Trimite e-mailurile de „Confirmare plată” și „Notificare plată” emailuri pentru plățile unice.
  • Expune acțiunea simpay_webhook_payment_intent_succeeded pentru 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
);

Aflați cum să adăugați cod personalizat →

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_completed pentru 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_succeeded pentru procesare suplimentară după o plată reușită

charge.failed

  • Expune acțiunea simpay_webhook_charge_failed pentru 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.

Webhook-urile sunt necesare pentru a utiliza verificarea prin e-mail atunci când este detectată o fraudă.

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.

Evenimente webhook Stripe eșuate

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.

Niciun corp de 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.

Actualizați detaliile endpoint-ului webhook 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:

Începeți să acceptați plăți astăzi

Începeți să acceptați plăți unice și recurente sau donații pe site-ul dvs. WordPress.