---
page_source: https://docs.juspay.io/upi-inapp/flutter/interaction-with-sdk/handle-sdk-response
page_title: Handle SDK Response
---


## Handle SDK Response




###   Handle Events from SDK


**HyperPaymentsCallbackAdapter** is an interface method to handle callbacks/outputs from sdk. HyperSDK uses a single point of communication(HyperPaymentsCallbackAdapter) with continuous events triggered during a payment lifecycle. Implement the highlighted code snippet in your app for proper handling of all events and status.



#### Code Snippets: -

#### Flutter Code Snippet:

```flutter
void hyperSDKCallbackHandler(MethodCall methodCall) {
    switch (methodCall.method) {

      // block:start:show-loader
      case "show_loader":
        // Show some Loader
        break;
      // block:end:show-loader

      // block:start:hide-loader
      case "hide_loader":
        // Hide Loader
        break;
      // block:end:hide-loader

      // block:start:initiate-result
      case "initiate_result":
      // Get the response
        var args = {};
        try {
          args = json.decode(methodCall.arguments);
        } catch (e) {
          print(e);
        }
        //Merchant handling
        break;
      // block:end:initiate-result

      // block:start:process-result
      case "process_result":
      // Get the response
        var args = {};
        try {
          args = json.decode(methodCall.arguments);
        } catch (e) {
          print(e);
        }
        //Merchant handling
        break;
      // block:end:process-result

      // block:start:log-stream
      case "log_stream":
        // print data
        break;
      // block:end:log-stream

      // block:start:session-expiry
      case "session_expiry":
        // Handle Session Expiry
        break;
      // block:end:session-expiry

  }
```



###   Event: show_loader


This event implies merchant has triggered sdk and needs to show loader until UI is loaded.



#### Code Snippets: -

#### Flutter Code Snippet:

```flutter
case "show_loader":
        // Show some Loader
        break;
```



###   Event: hide_loader


This event implies that UI is loaded and loader can be stopped or hidden.



#### Code Snippets: -

#### Flutter Code Snippet:

```flutter
case "hide_loader":
        // Hide Loader
        break;
```



###   Event: initiate_result


This event contains the response of `initiate` action.



#### Code Snippets: -

#### Flutter Code Snippet:

```flutter
case "initiate_result":
      // Get the response
        var args = {};
        try {
          args = json.decode(methodCall.arguments);
        } catch (e) {
          print(e);
        }
        //Merchant handling
        break;
```



###   Event: process_result


This event contains the response of different `process` actions called. For process operations [Click Here](../ui-process-payloads/inapp-ui).



#### Code Snippets: -

#### Flutter Code Snippet:

```flutter
case "process_result":
      // Get the response
        var args = {};
        try {
          args = json.decode(methodCall.arguments);
        } catch (e) {
          print(e);
        }
        //Merchant handling
        break;
```



###   Event: log_stream


This event contains the various Clickstream events that SDK provides to know the user actions in the application.

> **Warning**
> For enabling Clickstream events, logLevel key is mandatory in [intiate payload](../miscellaneous/additional-parameters). The value of this key should be 1.





#### Code Snippets: -

#### Flutter Code Snippet:

```flutter
case "log_stream":
        // print data
        break;
```



###   Event: session_expiry


This event is given when signature or clientAuthToken expires. For more details [Click Here](../miscellaneous/session-expiry).



#### Code Snippets: -

#### Flutter Code Snippet:

```flutter
case "session_expiry":
        // Handle Session Expiry
        break;
```
