alyf-de / banking

An Open Banking Integration with ERPNext
GNU General Public License v3.0
37 stars 18 forks source link

Handle Kosma Account ID expiry #58

Closed marination closed 9 months ago

marination commented 9 months ago

Error:

File "apps/banking/banking/klarna_kosma_integration/exception_handler.py", line 28, in handle_error
    self.handle_admin_error(content)
      self = <banking.klarna_kosma_integration.exception_handler.ExceptionHandler object at ...>
      response = <Response [400]>
      content = {'error': {'code': 'CONSENT.RESOURCE_NOT_GRANTED', 'message': 'Die angefragte Resource ist nicht mehr freigegeben oder verfügbar.'}, 'consent_token': '********'}
  File "apps/banking/banking/klarna_kosma_integration/exception_handler.py", line 77, in handle_admin_error
    frappe.throw(title=_("Banking Error"), msg=error_data.get("message"))
      self = <banking.klarna_kosma_integration.exception_handler.ExceptionHandler object at ...>
      content = {'error': {'code': 'CONSENT.RESOURCE_NOT_GRANTED', 'message': 'Die angefragte Resource ist nicht mehr freigegeben oder verfügbar.'}, 'consent_token': '********'}
      error_data = {'code': 'CONSENT.RESOURCE_NOT_GRANTED', 'message': 'Die angefragte Resource ist nicht mehr freigegeben oder verfügbar.'}

Returned from Kosma

{
    'error': 
    {
        'code': 'CONSENT.RESOURCE_NOT_GRANTED', 
        'message': 'Die angefragte Resource ist nicht mehr freigegeben oder verfügbar.'
    }, 
    'consent_token': '********'
}

Analysis

Most likely due to Kosma Account ID being rotated (ref: https://docs.openbanking.klarna.com/xs2a/error-handling.html#consentresourcenotgranted)