Mandate Integration Architecture

Mandate Registration Flow

The mandate registration flow involves four key players: the User, the Merchant's Server, the Juspay Server, and the Payment Gateway (PG). The process begins with the user entering details on the merchant's server/page. This request is then transferred to the Juspay server, which forwards it to the PG to complete the registration.

Once the mandate registration is completed, the Juspay server sends webhooks to notify the merchant, and if needed the merchant can also call Juspay's Order Status APIs to check the mandate status.

This flow ensures efficient communication and a seamless transaction experience.

Mandate Registration flow
Mandate Registration flow

Mandate Execution Flow

Here is the general mandate execution flow at Juspay, which typically does not require user intervention. The merchant initiates the process by calling the Merchant Execution API. In certain cases, such as UPI Autopay, the PDN API must be called 24 hours in advance.

The request is sent to the Juspay server, which then forwards it to the Payment Gateway (PG). The PG sends webhooks back to Juspay, which are then relayed to the merchant. Alternatively, the merchant can check the execution status using the Order Status API.

Juspay also offers features like Autoretry, allowing merchants to automate retries for failed transactions. This increases the success rate without requiring the merchant to resend requests through the Mandate Execution API.

Note

Below is the general mandate execution flow. Exceptions exist, such as for transactions over INR 15k with UPI Autopay, where an additional step requires the user to enter the MPIN as mandated by the RBI.

Mandate Execution
Mandate Execution

Mandate Updation

NPCI provides functionality for both merchants and users to revoke, pause, and unpause mandates, with exceptions for non-user-revocable mandates, such as loan EMIs.

Mandate Lifecycle for User-Initiated and Merchant-Initiated Updates

Merchant-Initiated Updates:

  1. Users go to the merchant server and send a mandate update request ( revoke, pause, unpause) to Juspay.

  2. If the mandate can be modified at the PG's end, Juspay forwards the request to the PG.

  3. The modification is relayed to the merchant via the “Order Status” API and webhooks.

  4. If the mandate cannot be modified by the PG, Juspay still provides functionality to update the mandate request on their end

    Note

    f the PG cannot update the mandate but Juspay does, a discrepancy may appear in the user's UPI PSP application. In such cases, the merchant must inform the customer that the mandate has been updated on their end, but it is not reflected on the UPI PSP side due to the PG's limitations

User-Initiated Updates:

  1. Users update their mandate on the UPI PSP application where it was created.

  2. Juspay receives the webhook from the PG and sends the update to the merchant.

Need to update this image

Mandate life cycle management
Mandate life cycle management