871 B
871 B
sequenceDiagram
participant User
participant PaymentGateway
participant Application
participant Database
User->>Application: Initiate Payment
Application->>PaymentGateway: Process Payment
alt Successful Payment
PaymentGateway-->>Application: Payment Approved
Application->>Database: Commit Transaction
Database-->>Application: Transaction Committed
Application-->>User: Payment Successful
else External Failure
PaymentGateway-->>Application: Payment Error
Application-->>User: Payment Failed
else DB Failure
Application->>Database: Attempt Transaction
Database-->>Application: Transaction Error
Application->>Database: Rollback Transaction
Database-->>Application: Transaction Rolled Back
Application-->>User: Payment Failed
end