11496 sujets

JavaScript, DOM et API Web HTML5

Bonjour à tous !

J'en appelle à tous ceux qui auraient déjà intégré un paiement Paypal sur un site web (je trouve que la doc Paypal est particulièrement dégueu).

Dans un projet Next.js, après avoir installé "@paypal/react-paypal.js" j'ai intégré un paiement paypal avec ce code :
<PayPalScriptProvider options={{
                'client-id': process.env.NEXT_PUBLIC_PAYPAL_CLIENT_ID,
                currency: 'EUR',
                intent: 'capture'
            }}>
                <div className={styles.paypButt}>
                <PayPalButtons
                    style={{layout: 'horizontal', height: 30}}
                    createOrder={(data, actions) => {
                        return actions.order.create({
                            purchase_units: [
                                {
                                    amount: {
                                        value: panier ? panier.price * panier.quantite : 0
                                    }
                                }
                            ]
                        });
                    }}
                    onApprove = {async (data, actions) => {
                        try {
                            const order = await actions.order.capture();
                            console.log(order);
                            if (order.status === "COMPLETED") {
                                router.replace(`/successPaypal?orderId=${order.id}&amount=${order.purchase_units[0].amount.value}`);   
                            }
                        } catch (err) {
                            console.error('Erreur lors de la capture du paiement');
                        }
                    }}
                    />
                </div>
            </PayPalScriptProvider>


Ce code me fourni le bouton Paypal ainsi que toute la logique de paiement. J'utilise des comptes sandbox pour tester les transactions et ça marche.
Mon souci à ce jour est que je voudrais tester des échecs de transaction pour voir quels status me sont retournés et pouvoir les traiter.
Dans le compte sandbox Business, j'ai coché "Negative testing" mais ça ne change rien. Tous les paiements que je simule réussissent.

Sauriez-vous ce que je dois faire pour simuler des échecs de transactions ?
(C'est toujours un peu stressant de mettre en place ce genre de fonctionnalité...)

Je vous remercie d'avance ! Smiley cligne
Modifié par Vahia (08 May 2024 - 11:55)
J'ai trouvé pas mal de pages en doublons qui avaient tendance à se contredire un peu et pas mal d'erreurs 404 aussi au niveau des liens.

Le truc c'est que je ne fais pas de paiement par carte avec Paypal, juste le client se log à son compte, choisi la source d'approvisionnement parmi celles qu'il a déjà enregistrées et basta.
Du coup les tests avec les numéros de carte ça ne correspond pas à mes besoins.