The requester withdrew the request → tell the recipient (payer) it's off.
A new request was created → tell the recipient (payer) they were asked to pay.
OptionalpayUrl: stringThe request was declined → tell the requester (sender) it was declined.
The request was paid → tell the requester (sender) they got paid.
Composes and sends the customer-branded SMS notifications for escrow transfer requests. Mirrors the escrow-transfer recipient SMS (see
escrowTransferActivities.sendEscrowRecipientSms) but runs inline in the request writer rather than as a Temporal activity — requests have no on-chain machinery, so there is no workflow to host the side effect.Audience per event (the rule is "notify the counterparty — whoever did NOT take the action"):
ESCROW_REQUEST_CREATEDESCROW_REQUEST_PAIDESCROW_REQUEST_DECLINEDESCROW_REQUEST_CANCELLEDBoth party phones live on the request row (
senderPhone/recipientPhone), so no identity lookup is needed to address the SMS — only to resolve the requester's display name for the body. Each send carries a stableidempotencyKey(Vibes dedupes on it); callers invoke these best-effort.