### SORA to Parachain
```mermaid
sequenceDiagram
actor A as Alice
participant S as SORA
participant R as Relayer
participant P as Parachain
A ->> S: Call bridgeProxy.burn
S ->> S: Burn/Reserve tokens
S ->> S: Add message to commitment
S ->> R: Prepare commitment
R ->> R: Sign commitment
R ->> S: Approve commitment
S ->> R: Get signatures
R ->> P: Submit commitment
P ->> A: Send tokens via XCM
```
### Parachain to SORA
```mermaid
sequenceDiagram
actor A as Alice
participant P as Parachain
participant R as Relayer
participant S as SORA
A ->> P: Send tokens via XCM
P ->> P: Add message to commitment
P ->> R: Prepare commitment
R ->> R: Sign commitment
R ->> P: Approve commitment
P ->> R: Get signatures
R ->> S: Submit commitment
S ->> A: Mint/Send tokens
```
```mermaid
---
title: Transport layer
---
flowchart TB
subgraph Source network
direction LR
oc[Outbound channel]
ds[Data signer]
beef[Beefy]
end
rl[Relayer]
subgraph Destination network
direction LR
ic[Inbound channel]
mv[Multisig verifier]
blc[Beefy light client]
dp[Dispatch]
ic --> dp
ic --> mv
ic --> blc
end
rl --> ic
rl --> ds
rl --> beef
oc --> rl
```
```mermaid
---
title: Business logic
---
flowchart TB
```