%% Reference build: welcome and reactivation journeys
%% Reference architecture: a reusable pattern, not a live client integration
flowchart TB
subgraph z0["Salesforce sandbox"]
crm["Salesforce CRM
sandbox first"]
end
subgraph z1["Integration service (your cloud)"]
integ["Integration service
middleware or small service"]
end
subgraph z2["Braze test workspace"]
braze["Braze test workspace
welcome and reactivation Canvases"]
end
app["App and website
Braze SDKs"]
chan["Channels
email, push, in-app"]
cur["Currents to storage
test bucket"]
crm -->|"contact changes"| integ
app -->|"SDK events"| braze
integ -->|"attributes, consent"| braze
braze -->|"journey messages"| chan
braze -.->|"Currents events"| cur
braze -.->|"stage webhook"| integ
integ -.->|"lifecycle fields"| crm
classDef salesforce stroke:#125BD8,fill:#e8f0fd
class crm salesforce
classDef data stroke:#2f8a3a,fill:#e9f6ea
class cur data
classDef engagement stroke:#5747AF,fill:#efedfa
class braze engagement
classDef integration stroke:#334155,fill:#eef2f6
class integ integration
classDef channel stroke:#2f8a3a,fill:#ffffff
class app,chan channel