834 B
834 B
sequenceDiagram participant User participant Payment Gateway participant Database participant Service
User->>Service: Initiate Payment
Service->>Payment Gateway: Send Payment Request
alt Successful Payment
Payment Gateway-->>Service: Confirm Payment
Service->>Database: Record Payment
Database-->>Service: Payment Recorded
Service-->>User: Payment Success
else External Payment Failed
Payment Gateway-->>Service: Payment Failed
Service-->>User: Payment Failed
else Database Failure
Service->>Database: Attempt to Record Payment
Database-->>Service: Database Error
Service-->>User: Unable to process payment
end
Service->>Database: Commit
alt Rollback Required
Database->>Database: Rollback Changes
end