Проверить API запроса платежа Google

Я пытаюсь интегрировать API запроса платежа, но мне здесь чего-то не хватает.. Как проверить платежи, которые были сделаны с помощью API? Когда пользователь платит, мой обратный вызов выполняется, но как мне узнать, что платеж завершен? Вот мой код

paymentRequest.show()
    .then((paymentResponse) => {
        fetch('http://validate-payment/api')
        .then((response) => {
            return response.json();
        })
        .then((json) => {
            return paymentResponse.complete('fail'); // Hardcode fail
        })
        .catch((error) => {
            reject();
        })
    })
    .catch((error) =>{
        console.log(error.message)
    });

1 ответ

Решение

Когда вы получите paymentResponse объект, это не значит, что платеж выполнен. Вы должны разместить информацию на платежном шлюзе, как вы делаете это сейчас, чтобы обработать платеж.

Получите детали оплаты с paymentResponse.details и отправьте его на платежный шлюз (в вашем коде это может быть "validate-payment/api").

В ответе от платежного шлюза будет указано, был ли платеж успешным или нет.

При работе с этим API учитывайте соответствие PCI (особенно если вы обрабатываете необработанные данные кредитной карты). Например, Stripe делает это от вашего имени, но не все платежные шлюзы делают подобное.

paymentRequest.show()
    .then((paymentResponse) => {
        var details = paymentResponse.details;
        fetch('https://validate-payment/api', {
            method: 'POST',
            body: JSON.stringify(details)
        })...
Другие вопросы по тегам