Skip to main content
FastFlowPe sends real-time PayIn transaction status updates to a webhook endpoint of your choosing. Whenever a PayIn transaction reaches a terminal state, FastFlowPe automatically POSTs a JSON payload to your pre-configured HTTPS URL, so your system can react to transaction updates in real time.
Quick ReferenceProtocol: HTTPS only (HTTP endpoints are rejected)Method: POST with JSON bodyEvent: PayIn transaction status changeSetup path: Merchant Dashboard → Settings → Webhooks → Credit - PayIn → UpdateActivation: 2 to 3 minutes after savingRetry Policy: Maximum 3 total delivery attempts. Return HTTP 2xx to acknowledge successful receipt.

How to Configure Your PayIn Callback URL

Register your PayIn webhook URL in the merchant dashboard before FastFlowPe can deliver PayIn callbacks to your server.
1

Log in to the merchant dashboard

Navigate to https://go.fastflowpe.com/ and sign in with your merchant credentials.
2

Open Webhook Settings

From the left sidebar, click Settings, then select the Webhooks tab.
3

Enter your PayIn callback URL

Under Credit - PayIn, enter your HTTPS endpoint URL where you want FastFlowPe to deliver PayIn transaction callbacks.
4

Save the configuration

Click Update under Credit - PayIn to save your URL.Full path: Login → Settings → Webhooks → Credit - PayIn → Update
Only HTTPS-enabled webhook URLs are accepted. HTTP endpoints will be rejected and will not receive any callbacks.
Allow 2 to 3 minutes after saving your callback URL for the configuration to take effect. The next PayIn event after that window will be delivered to your endpoint.

PayIn Callback Payload

FastFlowPe uses a POST request with a JSON body for all PayIn callbacks.
PayIn Callback

PayIn Payload Fields

string
The unique UUID of the PayIn transaction.
string
The order ID you submitted when creating the PayIn transaction.
string
The transaction amount as a decimal string.
string
The payment mode used, for example QR or UPI.
string
The Unique Transaction Reference issued by the bank.This may be null on failure.
string
The final transaction status.Possible values:
  • SUCCESS
  • FAILED
object
An object containing customer information associated with the transaction.
string
The parsed response message from the payment service provider.

Callback Acknowledgement and Retries

FastFlowPe expects your webhook endpoint to return an HTTP 2xx response to acknowledge that the callback was received successfully. If FastFlowPe does not receive a 2xx response, the same callback event will be retried up to 2 more times. This means the same PayIn callback event can be delivered a maximum of 3 times in total:
  • Initial callback attempt
  • First retry
  • Second retry
Your callback endpoint must return an HTTP 2xx response after successfully receiving and accepting the callback.Once FastFlowPe receives a 2xx response, the callback is considered successfully acknowledged and no further retries are made for that event.
Your callback handler should be idempotent because the same PayIn event may be delivered more than once if a previous delivery attempt was not acknowledged with an HTTP 2xx response.
Callbacks should be used for real-time transaction notifications, but the Check Status API should be treated as the primary source for confirming the latest transaction state.
In production, use the PayIn Status API as the source of truth for transaction status.Callbacks provide real-time notifications and can help reduce unnecessary status checks, but merchants should use the Check Status API whenever they need to confirm the latest or final transaction state.
Do not rely only on callback delivery to determine the final transaction state. If your system needs to verify a transaction, call the PayIn Status API using the relevant transaction identifier.
Configuring PayOut callbacks? See PayOut Callbacks.