fix netopia issue
This commit is contained in:
@@ -34,8 +34,8 @@ def healthz():
|
||||
@app.post("/api/payments/ipn")
|
||||
def ipn():
|
||||
try:
|
||||
raw = request.data
|
||||
data = verify_ipn(raw)
|
||||
# Pass the whole request object, not just request.data
|
||||
data = verify_ipn(request)
|
||||
app.logger.info("IPN OK: %s", data)
|
||||
return jsonify({"ok": True, "data": data}), 200
|
||||
except Exception as e:
|
||||
|
||||
@@ -269,13 +269,10 @@ def start_card_payment(
|
||||
return svc.start_payment(req)
|
||||
|
||||
|
||||
def verify_ipn(raw_body: bytes, settings: Optional[NetopiaSettings] = None) -> Dict[str, Any]:
|
||||
"""Verify an IPN payload coming from NETOPIA. Returns the decoded data.
|
||||
|
||||
Raise an exception if verification fails.
|
||||
"""
|
||||
def verify_ipn(request_obj: Any, settings: Optional[NetopiaSettings] = None) -> Dict[str, Any]:
|
||||
"""Verify an IPN payload coming from NETOPIA using the full request object."""
|
||||
svc = _build_payment_service(settings)
|
||||
return svc.verify_ipn(raw_body)
|
||||
return svc.verify_ipn(request_obj)
|
||||
|
||||
|
||||
def get_status(*, ntp_id: Optional[str] = None, order_id: Optional[str] = None, settings: Optional[NetopiaSettings] = None) -> Dict[str, Any]:
|
||||
|
||||
Reference in New Issue
Block a user