Как развернуть платежный шлюз в реальной среде?

#react-native #paypal #payment-gateway

#react-native #paypal #платежный шлюз

Вопрос:

Я интегрировал платежный шлюз в свое приложение react-native, используя «react-native-paypal-wrapper». Как протестировать и развернуть его в реальной среде? Прямо сейчас, когда я ввожу неверный адрес электронной почты и пароль, он проходит. Я думаю, что мой код предназначен для тестирования.

Это мой код. Как заставить его работать в реальной среде?

 _onPay = () => {
  const options = {
    merchantName: "sss",
    merchantPrivacyPolicyUri: "https://example.com/privacy",
    merchantUserAgreementUri: "https://example.com/useragreement",
  }
  PayPal.initialize(PayPal.NO_NETWORK, PAY_PAL_CLIENT_ID);
  // PayPal.obtainConsent().then(authorization => console.log('authorization', authorization))
  //   .catch(error => console.log('error', error));
  // const metadataID = await PayPal.getClientMetadataId();
  PayPal.pay({
    price: '19.99',
    currency: "USD",
    description: "19.99 USD will be paid",
  })
    .then((confirm) => {
      console.log('confirm', confirm);
      this.setState({ isPaid: true })
      Alert.alert("Congratulation!", " 19.99 USD was paid.");
      // this.paymentHandler(confirm.response, subscription_id, days, userID);
    })
    .catch((error) => {
      if (error.message !== "User cancelled") {
        Alert.alert(error.message);
      }
      console.log(JSON.stringify(error));
    });
}
  

Ответ №1:

Вы читали документацию к используемому вами пакету 2-летней давности?

 // 3 env available: NO_NETWORK, SANDBOX, PRODUCTION
PayPal.initialize(PayPal.NO_NETWORK, "<your-client-id>");
  

В дополнение к указанию там PRODUCTION, место для получения идентификатора производственного клиента находится на вкладке «Live» приложения в https://www.paypal.com/signin?intent=developeramp;returnUri=https://developer.paypal.com/developer/applications

Комментарии:

1. Спасибо. Тогда что такое merchantPrivacyPolicyUri amp; merchantUserAgreementUri amp; obtainConsent amp; metadataID ? Я не могу найти объяснение этих опций.

2. Используется для будущих платежей. Который вы не используете.

3. Если я использую метод webview, как развернуть изолированную среду для реального платежа?

4. Понятия не имею, что вы подразумеваете под методом webview, но у каждого отдельного метода интеграции есть способ указать среду

5. Большое спасибо за ваш любезный ответ. На самом деле я следовал этой ссылке. medium.com/zestgeek/… Как вы можете видеть в последнем блоке кода, строка 47, строка 60, строка 96 используют URL-адрес изолированной среды. В моем приложении, если пользователь нажимает кнопку «Купить», он переходит на страницу изолированной среды в webview. Вот почему на этой странице, если я ввожу реальные данные для входа в PayPal, это выдает ошибку. Как развернуть в реальном paypal? Я изо всех сил пытаюсь найти точное решение в Интернете, но почти все ссылки предназначены для интеграции виртуальных платежей.