package cart import ( "encoding/json" messages "git.k6n.net/go-cart-actor/pkg/messages" ) func PaymentEventHandler(grain *CartGrain, req *messages.PaymentEvent) error { payment, found := grain.FindPayment(req.PaymentId) if !found { return ErrPaymentNotFound } metaBytes := req.Data.GetValue() payment.Events = append(payment.Events, &PaymentEvent{ Name: req.Name, Success: req.Success, Data: json.RawMessage(metaBytes), }) return nil }