Skip to content

Update the connector on the receiving Rafiki side to wait for a response from the receiving ASE #3686

@mkurapov

Description

@mkurapov
  • Add incoming KYC middleware before account middleware to await ASE response
  • Success/failure API calls should have their KYC decision data dropped in Redis to be picked up by the middleware by bounded polling:
    • Cache key would be ase_decision:{incomingPaymentId}
    • We poll Redis every 50ms (no strong opinion on this duration) for key ase_decision:{incomingPaymentId} until the deadline (now - packet expiry + safety margin):
      • If value is missing by the deadline → proceed (next()).
      • If value is 'allow' → proceed (next()).
      • Else → reject with F99 + reason.
  • Until approvePartialPayment, continue processing the prepare packet in the next middlewares.
  • Until rejectPartialPayment, propagate the rejectionReason value (from the rejectPartialPayment API) in the reject packet
  • KYC middleware should only execute if there is any KYC data on the packet. This should be determined by the STREAM controller beforehand.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions