Anyone Successfully Integrated Momo Pay in Rwanda: Long Response Times with Flutterwave Payment API in React Native

I am integrating Flutterwave’s payment API using their server-side flow and facing unusually long response times. Both in React Native SDK v3 and the current server-side flow, processing payments takes between 4 to 14 minutes, even after simplifying the process to a direct URL access in the browser.

Here’s the typical response I receive multiple times before a final redirect is executed:

{
    "status": "success",
    "message": "Tx Fetched",
    "data": {
        "txRef": "6626a6507e2fe10786789a6d--1713897847144",
        "amount": 128,
        "charged_amount": 132.48,
        "chargeResponseCode": "02",
        "chargeResponseMessage": "Transaction in progress",
        "status": "success-pending-validation",
        "currency": "RWF",
        "createdAt": "2024-04-23T18:44:50.000Z",
        "updatedAt": "2024-04-23T18:44:52.000Z",
        "customer": {
            "fullName": "Everistus Olumese",
            "email": "example@example.com"
        }
    }
}

Given that the status often remains at “success-pending-validation” for the duration of these delays, I’m wondering why the API doesn’t simply return this status and allow developers to handle the validation or wait for a webhook confirmation.

Questions:

  1. Can the API interaction be optimized to reduce these long response times? There is no way a customer is willing to wait for 2 minutes not to talk of 14 minutes.
  2. Could the API be modified to return a “success-pending-validation” status sooner, thus minimizing the need for repeated checks and long waits?

I’d appreciate any insights or suggestions from the community to address this issue, particularly if others have encountered and resolved similar delays with Flutterwave’s API.