# Process Flow

![Process flow](https://2424647213-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ff67IkjlWYtXbtgpmwU0A%2Fuploads%2FCxuVrZbifwjR2SphuyC5%2FScreen%20Shot%202022-03-18%20at%2018.32.00.png?alt=media\&token=c560dfdd-7c69-402e-9273-88ab6eb5424b)

### Charge status

Based on the certain payment status, the charge status should be updated accordingly:

* **NEW**: Merchant has been newly created a charge for a payment order.
* **PENDING**: The payment has been made by user transaction on the blockchain and waiting for confirmation.
* **COMPLETED**: The transaction is confirmed and the payment amount has met the expectation.
* **EXPIRED**: No transaction has been detected until the expired time. (1 day after the charge is created)
* **UNRESOLVED**: The transaction is confirmed and the payment amount has NOT met the expectation. There are 5 contexts for UNRESOLVED payment as described below.
  * [ ] **UNRESOLVED - UNDERPAID**: The amount is less than expected.
  * [ ] **UNRESOLVED - OVERPAID**: The amount is greater than expected.
  * [ ] **UNRESOLVED - MULTIPLE:** There are more than 1 transaction sent for 1 payment.
  * [ ] **UNRESOLVED - DELAYED:** The transaction has been sent after the expired time.
  * [ ] **UNRESOLVED - OTHER**: Other unsuccessful payment reasons.
* **RESOLVED**: The merchant has marked an UNRESOLVED payment as resolved
* **CANCELLED**: The merchant has canceled the payment. Only NEW charges can be canceled.
* **REFUNDED**: The merchant has marked a payment as refunded. The refund process is made by the merchant outside of Fizen Pay. Fizen Pay doesn't manage this process.
