-
Notifications
You must be signed in to change notification settings - Fork 15
Processing Results
Mauko Maunde edited this page Jan 8, 2021
·
1 revision
To process results from a transaction statuscheck, or a reversal, or an account balance check, call the result method at your endpoint.
C2B::result();You can pass an optional callback for processing the response from the request and returning true.
C2B::result(function ($response){
// Process account balance check results
$result = $response["Result"];
$ResultType = $result["ResultType"];
$ResultCode = $result["ResultCode"];
$ResultDesc = $result["ResultDesc"];
$OriginatorConversationID = $result["OriginatorConversationID"];
$ConversationID = $result["ConversationID"];
$TransactionID = $result["TransactionID"];
$ResultParameters = $result["ResultParameters"];
$ResultParameter = $ResultParameters["ResultParameter"];
$ReceiptNo = $ResultParameter[0]["Value"];
$Conversation = $ResultParameter[1]["Value"];
$FinalisedTime = $ResultParameter[2]["Value"];
$Amount = $ResultParameter[3]["Value"];
$TransactionStatus = $ResultParameter[4]["Value"];
$ReasonType = $ResultParameter[5]["Value"];
$TransactionReason = $ResultParameter[6]["Value"];
$DebitPartyCharges = $ResultParameter[7]["Value"];
$DebitAccountType = $ResultParameter[8]["Value"];
$InitiatedTime = $ResultParameter[9]["Value"];
$OriginatorConversationID = $ResultParameter[10]["Value"];
$CreditPartyName = $ResultParameter[11]["Value"];
$DebitPartyName = $ResultParameter[12]["Value"];
$ReferenceData = $result["ReferenceData"];
$ReferenceItem = $ReferenceData["ReferenceItem"];
$Occasion = $ReferenceItem["Value"];
// Process transaction reversal results
$Result = $response["Result"];
$ResultType = $Result["ResultType"];
$ResultCode = $Result["ResultCode"];
$ResultDesc = $Result["ResultDesc"];
$OriginatorConversationID = $Result["OriginatorConversationID"];
$ConversationID = $Result["ConversationID"];
$TransactionID = $Result["TransactionID"];
$ReferenceData = $Result["ReferenceData"];
$ReferenceItem = $Result["ReferenceItem"];
$QueueTimeoutURL = $ReferenceItem["Value"];
// Process transaction status check results
$Result = $response["Result"];
$ResultType = $Result["ResultType"];
$ResultCode = $Result["ResultCode"];
$ResultDesc = $Result["ResultDesc"];
$OriginatorConversationID = $Result["OriginatorConversationID"];
$ConversationID = $Result["ConversationID"];
$TransactionID = $Result["TransactionID"];
$ResultParameters = $Result["ResultParameters"];
$ResultParameter = $ResultParameters["ResultParameter"];
$ReceiptNo = $ResultParameter[0]["Value"];
$ConversationID = $ResultParameter[1]["Value"];
$FinalisedTime = $ResultParameter[2]["Value"];
$Amount = $ResultParameter[3]["Value"];
$TransactionStatus = $ResultParameter[4]["Value"];
$ReasonType = $ResultParameter[5]["Value"];
$TransactionReason = $ResultParameter[6]["Value"];
$DebitPartyCharges = $ResultParameter[7]["Value"];
$DebitAccountType = $ResultParameter[8]["Value"];
$InitiatedTime = $ResultParameter[9]["Value"];
$OriginatorConversationID = $ResultParameter[10]["Value"];
$CreditPartyName = $ResultParameter[11]["Value"];
$DebitPartyName = $ResultParameter[12]["Value"];
$ReferenceData = $result["ReferenceData"];
$ReferenceItem = $ReferenceData["ReferenceItem"];
$Occasion = $ReferenceItem["Value"];
//TIP: You can differentiate between responses by checking value of $ResultType
return true;
});© Osen Concepts Kenya 2020