(20241217) Payment callback ready for Safaricom M-Pesa Express.
This commit is contained in:
@@ -353,9 +353,11 @@ class SafaricomMPesaExpress:
|
||||
# If the call failed:
|
||||
if api_response.httpCode in [200]:
|
||||
api_json = await api_response.get_json()
|
||||
success = True if str(api_json.get("ResponseCode")) == "0" else False
|
||||
api_response.message = api_json.get("ResponseDescription", "N/A")
|
||||
api_response.data = api_json
|
||||
api_response.success = True if str(api_json.get("ResponseCode")) == "0" else False
|
||||
api_response.success = success
|
||||
api_response.referenceId = str(api_json["CheckoutRequestID"])
|
||||
|
||||
# Done here:
|
||||
return api_response
|
||||
|
||||
@@ -82,6 +82,7 @@ class MPesaExpressApiResponse(BaseModel):
|
||||
success: bool = False
|
||||
message: str = None
|
||||
data: Any = None
|
||||
referenceId: str = None
|
||||
|
||||
exception: Any = None
|
||||
|
||||
@@ -105,6 +106,7 @@ class MPesaExpressApiResponse(BaseModel):
|
||||
message += f"*METHOD:*\n`{self.method}`\n\n"
|
||||
message += f"*RESPONSE:*\n`{self.response}`\n\n"
|
||||
message += f"*SUCCESS:*\n`{self.success}`\n\n"
|
||||
message += f"*REFERENCE ID:*\n`{self.referenceId}`\n\n"
|
||||
message += f"*MESSAGE:*\n`{self.message}`\n\n"
|
||||
message += f"*EXCEPTION:*\n`{self.exception.__class__.__name__}: {str(self.exception)}`\n\n"
|
||||
return message
|
||||
|
||||
Reference in New Issue
Block a user