Job Rejection and Refund Handling
The distinction between using job.reject() and job.reject_payable() lies in whether funds have already been transferred or escrowed at the time the rejection occurs. Both methods are designed to serve different phases and responsibilities in the job lifecycle.
Comparison
Aspect
job.reject()
job.reject_payable()
Funds involved?
No funds escrowed yet
Funds already escrowed or transferred
Phase
Request
Transaction
Purpose
Deny invalid or non-executable jobs pre-payment
Abort and refund post-payment failures
Impact
Phase-only update
Phase + fund refund transaction
Used in
Validation & pre-execution stage
Execution & post-payment stage
Example Use Case
Close Position rejected due to invalid symbol
Open Position or Swap Token failure after receiving funds
Last updated