{
    "componentChunkName": "component---src-templates-article-page-template-js",
    "path": "/references/transaction-process-format/",
    "result": {"data":{"markdownRemark":{"frontmatter":{"title":"Transaction process format","slug":"transaction-process-format","updated":"2022-02-09T00:00:00.000Z","category":"references","ingress":"This reference article describes the format of the process.edn file that is used with Flex CLI to customise the transaction processes of your marketplace.","skills":null},"htmlAst":{"type":"root","children":[{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"This reference guide assumes you know the basic idea and concepts, such\nas states, transitions and actions, of the Flex transaction process. If\nyou don't, please check this\n"},{"type":"element","tagName":"a","properties":{"href":"/docs/legacy/concepts/transaction-process/"},"children":[{"type":"text","value":"background article about Transaction process"}]},{"type":"text","value":"\nfirst."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"example-process","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#example-process","ariaLabel":"example process permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Example process"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Let's start with an example process that looks like this:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-wrapper"],"style":"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 635px; "},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"className":["gatsby-resp-image-link"],"href":"/docs/legacy/static/cd76323fc249a485f8d5462d6f79a1b8/5130a/example-process.png","style":"display: block","target":"_blank","rel":["noopener"]},"children":[{"type":"text","value":"\n    "},{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-background-image"],"style":"padding-bottom: 157.2327044025157%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAfCAYAAADnTu3OAAAACXBIWXMAAAsTAAALEwEAmpwYAAAD10lEQVRIx5VWaW/jOAzN//9puzvYD4N2mkmauEl8yadkWYevtyBtZ91OWqACGNEUTfN4pLKrGgPVOrTOw/gO1vfMk4zOam03+/98LlvcshphLlE2FrU2fLaT2mIcJ9Dquh7ee+bHaYJs7TujK9WtQxKFOO6fEeyfUJQly9ggebKusqohsuL+3Bj30KBsHdIkxuv+F877Z1R1jVovBunH+g79MGAYR6Z+GFm2GltpDVkaiyRQOPxI8Pp3hlKQ13Y1uCjZHrIqILOY+Uq1D3I4e0hRneMUfz39wr+HI9JKQS7nO0omKQeRwCm44HQOmP9obGuQQn4TOf7ZH/DjcERSk8FNyERxoRBd3xCeD0gqjXLx8CFpi0iUePp9xsvrBaJSLJur3FrOVzcCnbPwRjNPMvKEPKN9JSoUQYv2hmTaMMxIRrq7xnhM0wRjLIx1cF3H/DSO/FJaSvYgqxSSooa2jvWdc/C+Y5gRPy0w22lLAo8wThFGCeJUIEpS9H2PUmkc3kK8XiIc30LmlbZs4HKLkOUFojhFIjKM48gRMA4JJgRt+so0zfwwzB6SkjJEnnlygKBFvUANQQ1A1PXDHPKa6Ey2ECKFiG7MV80XRfmCdisczrcUx1OA34cDXq8JV3kLlc8gtD1nD2fGQBGwiwxShFBuuDf7Z/ToY+wh5Yly8HFRPrXzqI3l/BHV1nLbUb6mD7prq7JBWnlR4hrGXOEkFSyrhUFykDgGIYJLiuRZQuWWzwhapE+ooArTkjMOZ4OEKessnHf3EaaURZ5riEIiKxWKrIVU9o4IS7h1nh7mKq9F0caj9R3apoOpew6LhoN2HSR1hO3QWA9pZ/jQWVbKZRh30Mbd83iHDeXqdi1wOQkklcThLUIoStzSAtckxyXOcEtLlp2uCT8TLstNf99xWKrZ4DXIcd6nnHxRKsR5jbSQCBej1IbUfrTze8u722rzcDCug6Xxrwc4OcD2PYejKVTjeV9JLd3iSL8fmeZBYt9XmSqlTQvVagz9wLJCaVzyEnFeIcoqBCJnGS3q9UZrqEZzgagd622Vh2FAKnJudt91LKNcvkQxgijFOUzw83qFkHKGjbU8FLawYYPzcBh4GBC+eTDwvTKgtR5N6zlsotbMIVOI603J3g4jp+F9lbXlZFMV5XIlfqTyA0/9vp3s9yqvGHo5XfBzf3o3GB7tn9IKbCKaeVFWMr4ovO1U2b5QafvH4Kg3H9yRIUrqNic8OMfpj4v+S+9WYK9Vpr8hPBzidO7PB/8cvmVwvng8D4YVBtTj3zY4D4cZ/dTo3OzWs0x+pyCLwf8A37lPvjo1cKUAAAAASUVORK5CYII='); background-size: cover; display: block;"},"children":[]},{"type":"text","value":"\n  "},{"type":"element","tagName":"picture","properties":{},"children":[{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/cd76323fc249a485f8d5462d6f79a1b8/82e29/example-process.webp 159w","/docs/legacy/static/cd76323fc249a485f8d5462d6f79a1b8/ef33f/example-process.webp 318w","/docs/legacy/static/cd76323fc249a485f8d5462d6f79a1b8/f1837/example-process.webp 635w","/docs/legacy/static/cd76323fc249a485f8d5462d6f79a1b8/29549/example-process.webp 953w","/docs/legacy/static/cd76323fc249a485f8d5462d6f79a1b8/fe425/example-process.webp 1180w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/webp"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/cd76323fc249a485f8d5462d6f79a1b8/8b9b5/example-process.png 159w","/docs/legacy/static/cd76323fc249a485f8d5462d6f79a1b8/fa108/example-process.png 318w","/docs/legacy/static/cd76323fc249a485f8d5462d6f79a1b8/53fb6/example-process.png 635w","/docs/legacy/static/cd76323fc249a485f8d5462d6f79a1b8/5a426/example-process.png 953w","/docs/legacy/static/cd76323fc249a485f8d5462d6f79a1b8/5130a/example-process.png 1180w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/png"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"img","properties":{"className":["gatsby-resp-image-image"],"src":"/docs/legacy/static/cd76323fc249a485f8d5462d6f79a1b8/53fb6/example-process.png","alt":"Example process","title":"Example process","loading":"lazy","decoding":"async","style":"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"},"children":[]},{"type":"text","value":"\n        "}]},{"type":"text","value":"\n  "}]},{"type":"text","value":"\n    "}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The annotated process description for this process is as follows:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"div","properties":{"className":["gatsby-highlight"],"dataLanguage":"clojure"},"children":[{"type":"element","tagName":"pre","properties":{"className":["language-clojure"]},"children":[{"type":"element","tagName":"code","properties":{"className":["language-clojure"]},"children":[{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; Tag to set the process description format."}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; It's always :v3. Earlier versions are deprecated."}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":format"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":v3"}]},{"type":"text","value":"\n\n "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; The process graph defined as transitions between states. The states are implicitly defined by transitions."}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; Note that the graph has to be connected, i.e. it's a single flow with branches, not multiple graphs."}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transitions"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; Transition name, has to be unique. Used in API calls to create and transition transactions."}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/request-payment"}]},{"type":"text","value":"\n\n                "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; Who has the permission to execute the transition. One of: :actor.role/customer, :actor.role/provider, :actor.role/operator. Operator role means that the transition is executed by a marketplace operator on Console UI."}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor.role/customer"}]},{"type":"text","value":"\n\n                "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; Privileged transitions require that they are done in a trusted context, which"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; typically means using special access token when calling the API."}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":privileged?"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","boolean"]},"children":[{"type":"text","value":"true"}]},{"type":"text","value":"\n\n                "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; The actions that the transaction engine executes when the transition is taken."}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actions"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/create-pending-booking"}]},{"type":"text","value":"\n                           "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":config"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":type"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":time"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                          "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":privileged-set-line-items"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                          "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/stripe-create-payment-intent"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"text","value":"\n\n                "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; The state to which the process transitions to when the transition is completed."}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/pending-payment"}]},{"type":"text","value":"\n\n                "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; This transition doesn't have a :from state because this is an \"initial transition\","}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; i.e. a transition that is used when a new transaction is created."}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n\n               "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/expire-payment"}]},{"type":"text","value":"\n\n                "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; Timing for the transition. This is a delayed transition that the system automatically executes at the defined time."}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; For delayed transitions we don't define an :actor."}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":at"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/plus"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/timepoint"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":time/first-entered-state"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/pending-payment"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                               "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/period"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","string"]},"children":[{"type":"text","value":"\"PT15M\""}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actions"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/decline-booking"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                          "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/calculate-full-refund"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                          "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/stripe-refund-payment"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"text","value":"\n\n                "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; The state from which this transition can be executed."}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":from"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/pending-payment"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/payment-expired"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n\n               "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/confirm-payment"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":","}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor.role/customer"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actions"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/stripe-confirm-payment-intent"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":","}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":from"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/pending-payment"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/preauthorized"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n\n               "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/accept"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor.role/provider"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actions"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/accept-booking"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                          "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/stripe-capture-payment-intent"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":from"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/preauthorized"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/accepted"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n\n               "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/decline"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor.role/provider"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actions"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/decline-booking"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                          "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/calculate-full-refund"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                          "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/stripe-refund-payment"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":from"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/preauthorized"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/declined"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n\n               "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/expire"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":at"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/min"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/plus"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/timepoint"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":time/first-entered-state"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/preauthorized"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                                         "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/period"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","string"]},"children":[{"type":"text","value":"\"P6D\""}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                              "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/plus"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/timepoint"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":time/booking-end"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                                         "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/period"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","string"]},"children":[{"type":"text","value":"\"P1D\""}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actions"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/decline-booking"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                          "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/calculate-full-refund"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                          "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/stripe-refund-payment"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":from"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/preauthorized"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/declined"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n\n               "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/complete"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":at"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/timepoint"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":time/booking-end"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actions"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/stripe-create-payout"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":from"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/accepted"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/delivered"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n\n               "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/cancel"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor.role/operator"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actions"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/cancel-booking"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                          "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/calculate-full-refund"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                          "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/stripe-refund-payment"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":from"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/accepted"}]},{"type":"text","value":"\n                "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/cancelled"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"text","value":"\n\n "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; Notifications (emails) that are sent or scheduled when a transition is completed."}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":notifications"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; Unique name of the notification."}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":notification/new-booking-request"}]},{"type":"text","value":"\n\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; The transition that when completed triggers this notification."}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":on"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/confirm-payment"}]},{"type":"text","value":"\n\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; The transaction party this notification is sent to. Options are :actor.role/provider and :actor.role/customer."}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor.role/provider"}]},{"type":"text","value":"\n\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; Name of the email template for creating the email content."}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":template"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":new-booking-request"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n\n                 "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":notification/new-booking-request-reminder"}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":on"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/confirm-payment"}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor.role/provider"}]},{"type":"text","value":"\n\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; Timing of the notification, meaning this notification is delayed."}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; If the process transitions before the timing, the notification is not sent."}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; Useful e.g. for reminders before the time window to react to the transaction closes."}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":at"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/min"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/plus"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/timepoint"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":time/first-entered-state"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/preauthorized"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                                           "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/period"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","string"]},"children":[{"type":"text","value":"\"P5D\""}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                                "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":fn/timepoint"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":time/booking-end"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":template"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":new-booking-request-reminder"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n\n                 "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":notification/booking-request-accepted"}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":on"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/accept"}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor.role/customer"}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":template"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":booking-request-accepted"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n\n                 "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":notification/booking-request-declined"}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":on"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/decline"}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor.role/customer"}]},{"type":"text","value":"\n                  "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":template"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":booking-request-declined"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"the-edn-format","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#the-edn-format","ariaLabel":"the edn format permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"The edn format"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The process description in Sharetribe Flex uses a format called\n"},{"type":"element","tagName":"a","properties":{"href":"https://github.com/edn-format/edn","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"edn"}]},{"type":"text","value":". It's quite similar to JSON but\nit supports a few more primitive types, such as datetime values and\nkeywords, and has some extra features. The syntax is also slightly\ndifferent from JSON so it might take a bit of time to get used to."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Keywords are used heavily in the process description syntax as keys in\nmaps as well as enum values. Keywords start with a "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":"}]},{"type":"text","value":" but are otherwise\nsimilar to strings. Keywords can have a namespace, in which case they\nare called qualified keywords, or be plain (unqualified). The part\nbefore "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"/"}]},{"type":"text","value":" is the namespace. So for example, "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":actor.role/customer"}]},{"type":"text","value":" is a\nkeyword in the namespace "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"actor.role"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"transitions-in-the-marketplace-api","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#transitions-in-the-marketplace-api","ariaLabel":"transitions in the marketplace api permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Transitions in the Marketplace API"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Processes have two different types of transitions. Initial transitions\nare used for creating new transactions whereas subsequent transitions\nmove existing transactions forward in the process. An initial transition\nin the process definition has no "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":from"}]},{"type":"text","value":" state defined. When we render\nthe process graph on "},{"type":"element","tagName":"a","properties":{"href":"https://flex-console.sharetribe.com","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Console"}]},{"type":"text","value":" we\nshow a synthetic state "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"state/initial"}]},{"type":"text","value":" but this is not a state that is\nor should be defined in the process description."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"In Marketplace API initial transitions are invoked via the\n"},{"type":"element","tagName":"a","properties":{"href":"https://www.sharetribe.com/api-reference/marketplace.html#initiate-transaction","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"transactions/initiate"}]},{"type":"text","value":"\nendpoint and subsequent transitions via the\n"},{"type":"element","tagName":"a","properties":{"href":"https://www.sharetribe.com/api-reference/marketplace.html#transition-transaction","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"transactions/transition"}]},{"type":"text","value":"\nendpoint."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The API also provides endpoints for invoking transitions speculatively:\n"},{"type":"element","tagName":"a","properties":{"href":"https://www.sharetribe.com/api-reference/marketplace.html#speculatively-initiate-transaction","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"transitions/initiate_speculative"}]},{"type":"text","value":"\nand\n"},{"type":"element","tagName":"a","properties":{"href":"https://www.sharetribe.com/api-reference/marketplace.html#speculatively-transition-transaction","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"transactions/transition_speculative"}]},{"type":"text","value":".\nSpeculative operations take the same parameters that the real initiate\nand transition endpoints take but only simulate the effects. In other\nwords, no state is changed, Stripe is not really called, etc.. However,\nthey do run the same full validations on parameters as well as execute\nthe "},{"type":"element","tagName":"a","properties":{"href":"#preconditions"},"children":[{"type":"text","value":"action preconditions checks"}]},{"type":"text","value":" and return errors in\ncase of failures. When the transition completes successfully, the\nspeculation operations also return simulated results that show how the\ntransaction object will look like after a real initiate or transition\noperation."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"transitions-in-the-integration-api","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#transitions-in-the-integration-api","ariaLabel":"transitions in the integration api permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Transitions in the Integration API"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"It is possible to use the\n"},{"type":"element","tagName":"a","properties":{"href":"/docs/legacy/concepts/marketplace-api-integration-api/"},"children":[{"type":"text","value":"Integration API"}]},{"type":"text","value":" to invoke\ntransitions, which are defined as having "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":actor.role/operator"}]},{"type":"text","value":" as the\n"},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":actor"}]},{"type":"text","value":". This is done via the\n"},{"type":"element","tagName":"a","properties":{"href":"https://www.sharetribe.com/api-reference/integration.html#transition-transaction","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"transactions/transition"}]},{"type":"text","value":"\nendpoint. Unlike the Marketplace API, the Integration API currently does\nnot provide an endpoint for initiating transactions."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Similarly to the Marketplace API, the Integration API also provides an\nendpoint to\n"},{"type":"element","tagName":"a","properties":{"href":"https://www.sharetribe.com/api-reference/integration.html#speculatively-transition-transaction","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"invoke transitions speculatively"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"em","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"The Integration API provides a trusted context for invoking\ntransitions. This means that these transitions are considered\n"},{"type":"element","tagName":"a","properties":{"href":"/docs/legacy/concepts/privileged-transitions/"},"children":[{"type":"text","value":"privileged"}]},{"type":"text","value":" and can utilize any of\nthe actions that require a trusted context."}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"action-composition","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#action-composition","ariaLabel":"action composition permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Action composition"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Each transition defines an ordered list of 0 or more actions. Actions\nare instructions for the transaction engine and define what happens when\na transition is executed. The ordering of the actions matters because\nthey are executed in the given order."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"In the above example process we define a transition from\n"},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":state/accepted"}]},{"type":"text","value":" to "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":state/cancelled"}]},{"type":"text","value":" like this:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"div","properties":{"className":["gatsby-highlight"],"dataLanguage":"clojure"},"children":[{"type":"element","tagName":"pre","properties":{"className":["language-clojure"]},"children":[{"type":"element","tagName":"code","properties":{"className":["language-clojure"]},"children":[{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/cancel"}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor.role/operator"}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actions"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/cancel-booking"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n           "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/calculate-full-refund"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"text","value":"\n           "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/stripe-refund-payment"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":from"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/accepted"}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/cancelled"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"This means that the first action to execute is "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":action/cancel-booking"}]},{"type":"text","value":"\nwhich, like you might have guessed, marks the booking associated with\nthe transaction as cancelled. Next we calculate a full refund and add\nthe information to the transaction as line items. Finally, we invoke a\npayment refund via Stripe. When all of the abovementioned steps are\ntaken and complete successfully, the transition is completed and the\nprocess moves to state "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":state/cancelled"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"preconditions","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#preconditions","ariaLabel":"preconditions permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Preconditions"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Actions cannot be composed arbitrarily. Each action defines zero or more\npreconditions that must be met for the action to run successfully. If\nany of these are not met at the time the action is invoked, the action\nwill fail which in turn fails the transition. In our example above, the\n"},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":action/cancel-booking"}]},{"type":"text","value":" has a precondition that the process must\ncontain a booking and that booking must be in state accepted. This means\nthat at some earlier point in the process we must have invoked the\nactions "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":action/create-pending-booking"}]},{"type":"text","value":" followed by\n"},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":action/accept-booking"}]},{"type":"text","value":". However, these could all happen during a\nsingle transition. That's a bit contrived example but should help to\nunderstand the limits and opportunities with composing actions."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"parameters","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#parameters","ariaLabel":"parameters permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Parameters"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Every action can define zero or more parameters. The action parameters\nare passed via\n"},{"type":"element","tagName":"a","properties":{"href":"https://www.sharetribe.com/api-reference/marketplace.html#transactions","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"the Marketplace API"}]},{"type":"text","value":"\nwhen a transition is invoked. Some of the action parameters are\nmandatory and some are optional. All the mandatory and optional\nparameters of the actions together define the parameters of the\ntransition."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"In our example process, the "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":transition/request-payment"}]},{"type":"text","value":" defines the\nactions "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"action/create-pending-booking"}]},{"type":"text","value":",\n"},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"action/privileged-set-line-items"}]},{"type":"text","value":" and\n"},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"action/stripe-create-payment-intent"}]},{"type":"text","value":". This means the transition\nrequires and accepts the following parameters defined by the\n"},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"action/create-pending-booking"}]},{"type":"text","value":":"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"ul","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"bookingStart"}]},{"type":"text","value":", "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"bookingEnd"}]},{"type":"text","value":": timestamp, mandatory"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"bookingDisplayStart"}]},{"type":"text","value":", "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"bookingDisplayEnd"}]},{"type":"text","value":": timestamp, optional"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"as well as the following parameters defined by the\n"},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"action/privileged-set-line-items"}]},{"type":"text","value":":"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"ul","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"lineItems"}]},{"type":"text","value":",\n"},{"type":"element","tagName":"a","properties":{"href":"/docs/legacy/references/transaction-process-actions/#pricing"},"children":[{"type":"text","value":"line item array"}]},{"type":"text","value":",\nmandatory"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"plus the following parameters defined by the\n"},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"action/stripe-create-payment-intent"}]},{"type":"text","value":":"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"ul","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"paymentMethod"}]},{"type":"text","value":": string, mandatory"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"setupPaymentMethodForSaving"}]},{"type":"text","value":": boolean, optional, defaults to "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"false"}]}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"configuration-options","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#configuration-options","ariaLabel":"configuration options permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Configuration options"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Some actions support configuration options that alter their behaviour.\nFor example, the "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"action/create-pending-booking"}]},{"type":"text","value":" takes configuration\nparameter for the type of the booking being created. Other examples are\nthe commission calculation actions that take the commission percentage\nas a configuration option."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The configuration options for an action are set in the process\ndescription via the "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":config"}]},{"type":"text","value":" key in the action definition:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"div","properties":{"className":["gatsby-highlight"],"dataLanguage":"clojure"},"children":[{"type":"element","tagName":"pre","properties":{"className":["language-clojure"]},"children":[{"type":"element","tagName":"code","properties":{"className":["language-clojure"]},"children":[{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; Name of the action."}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/create-pending-booking"}]},{"type":"text","value":"\n\n "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; The configuration options map."}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; Can be omitted if no options need to be passed."}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":config"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":type"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":time"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"You can see all the preconditions, action parameters and configuration\noptions for each action in the\n"},{"type":"element","tagName":"a","properties":{"href":"/docs/legacy/references/transaction-process-actions/"},"children":[{"type":"text","value":"Transaction process actions"}]},{"type":"text","value":"\nreference article."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"time-expressions-and-delayed-transitions","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#time-expressions-and-delayed-transitions","ariaLabel":"time expressions and delayed transitions permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Time expressions and delayed transitions"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Time expressions can be used both with transitions and notifications to\ndelay the execution. The Flex transaction engine exposes a set of\ntimepoints that you can tie delays to as well as a small set of\nfunctions to further control the exact timing. The basic structure of a\ntime expression is a map from function name to a list (vector) of\nfunction parameters:\n"},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"{:fn/function-name [function-param1 function-param2]}"}]},{"type":"text","value":". For example:\n"},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"{fn/timepoint [:time/booking-end]"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"When a delayed transition or notification is scheduled, it will execute\nat the resulting time. However, if the transition moves forward before\nthe scheduled moment, the operation is automatically cancelled. This way\nyou can send a reminder notification or schedule an automatic\ncancellation after a certain time period that will be executed only in\nthe case that nobody takes action before that. Also, if the scheduled\ntime is in the past the operation will execute immediately. By wrapping\nthe time expression with "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":fn/ignore-if-past"}]},{"type":"text","value":" you can instead ignore\noperations when the scheduled time is in the past."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"You can see a full list of timepoints and timepoint expression functions\nin the\n"},{"type":"element","tagName":"a","properties":{"href":"/docs/legacy/references/transaction-process-time-expressions/"},"children":[{"type":"text","value":"Transaction process time expressions"}]},{"type":"text","value":"\nreference article."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Note that your transaction process can have several automatic\ntransitions "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"scheduled"}]},{"type":"text","value":" for a state, but only one automatic transition\n"},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"executed"}]},{"type":"text","value":" for a state. You may have e.g. one automatic transition\nscheduled to execute 1 day after first entering the state, and another\nscheduled to execute 7 days before a booking starts. The transition that\ngets executed is the one whose time point is matched first. However, if\nthe first automatic transition fails for some reason, no further\nautomatic transitions get executed from the state."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"notifications","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#notifications","ariaLabel":"notifications permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Notifications"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Notifications are emails that are sent as part of the transaction\nprocess when certain transitions occur. They optionally support delays\nvia the "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":at"}]},{"type":"text","value":" key. Every notification needs to have a unique (in the\nscope of the process) name and can be tied only to a single transition.\nThe email content of a notification is rendered using a template. These\ntemplates can be reused between notifications. If there's two different\ntransitions where you want to send the same email, you can just refer to\nsame template in both. Notifications can be sent to the customer or to\nthe provider."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"validating-and-inspecting-a-process","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#validating-and-inspecting-a-process","ariaLabel":"validating and inspecting a process permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Validating and inspecting a process"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The flex-cli supports validating a local process description as well as\nshowing basic information about the process and its transitions."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"To validate a process and print overall process description (when it's\nvalid) or validation errors:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"div","properties":{"className":["gatsby-highlight"],"dataLanguage":"text"},"children":[{"type":"element","tagName":"pre","properties":{"className":["language-text"]},"children":[{"type":"element","tagName":"code","properties":{"className":["language-text"]},"children":[{"type":"text","value":"flex-cli process --path my-process-dir"}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"To print more details about a specific transition:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"div","properties":{"className":["gatsby-highlight"],"dataLanguage":"text"},"children":[{"type":"element","tagName":"pre","properties":{"className":["language-text"]},"children":[{"type":"element","tagName":"code","properties":{"className":["language-text"]},"children":[{"type":"text","value":"flex-cli process --path my-process-dir --transition transition/my-transition"}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Assuming we have stored the example process from this guide under\n(./processes/guide/example/process.edn) we can inspect the\nrequest-payment transition by running:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"div","properties":{"className":["gatsby-highlight"],"dataLanguage":"text"},"children":[{"type":"element","tagName":"pre","properties":{"className":["language-text"]},"children":[{"type":"element","tagName":"code","properties":{"className":["language-text"]},"children":[{"type":"text","value":"$ flex-cli process --path processes/guide/example --transition transition/request-payment\nName\n  transition/request-payment\nFrom\n  state/initial\nTo\n  state/pending-payment\nActor\n  Customer\nAt\n  -\n\nActions\n\nName                                      Config\n:action.initializer/init-listing-tx\n:action/create-pending-booking            {:type :time}\n:action/privileged-set-line-items\n:action/stripe-create-payment-intent\n\nNotifications\n\n-"}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Once you've pushed a new process version to your marketplace you can use\nthe\n"},{"type":"element","tagName":"a","properties":{"href":"https://flex-console.sharetribe.com/transaction-processes","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Console process viewer"}]},{"type":"text","value":"\nto see the process graph and inspect transitions. This is currently the\nonly place where you can see the parameters that a given transition\nrequires and accepts."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"process-reference","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#process-reference","ariaLabel":"process reference permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Process reference"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"process","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#process","ariaLabel":"process permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Process"}]},{"type":"text","value":"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"},{"type":"element","tagName":"table","properties":{},"children":[{"type":"element","tagName":"thead","properties":{},"children":[{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Key"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Type"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Description"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Example"}]}]}]},{"type":"element","tagName":"tbody","properties":{},"children":[{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":format"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Keyword"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Process format, always "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":v3"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":v3"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":transitions"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Vector (order doesn't matter)"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"A list of transitions that the process consists of. Implicitly define states."}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"[{:name :transition/request-payment ...} ...]"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":notifications"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Vector (order doesn't matter)"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"A list of notifications for the process."}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"[{:name :notification/new-booking-request ...} ...]"}]}]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"transition","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#transition","ariaLabel":"transition permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Transition"}]},{"type":"text","value":"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"},{"type":"element","tagName":"table","properties":{},"children":[{"type":"element","tagName":"thead","properties":{},"children":[{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Key"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Type"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Description"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Example"}]}]}]},{"type":"element","tagName":"tbody","properties":{},"children":[{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":name"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Keyword"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Unique name for the transition. Used when invoking the transition via Marketplace API."}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":transition/request-payment"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":actor"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Keyword"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Defines who has the permission to invoke the transition. Must be one of: "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":actor.role/customer"}]},{"type":"text","value":", "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":actor.role/provider"}]},{"type":"text","value":", "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":actor.role/operator"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":actor.role/customer"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":actions"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Vector"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"An ordered list of actions to take when the transition is executed."}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"[{:name :action/create-pending-booking ...} ...]"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":from"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Keyword"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Name of the state from which the transition can be taken from. Left out for initial transitions."}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":state/pending-payment"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":to"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Keyword"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Name of the state to which this transition leads."}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":state/pending-payment"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":at"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Time expression"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Optional time expression that when given, turns the transition to a delayed transition. When using "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":at"}]},{"type":"text","value":" do not specify "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":actor"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"{:fn/timepoint [:time/booking-end]}"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":privileged?"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Boolean"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Optionally mark the transition as "},{"type":"element","tagName":"a","properties":{"href":"/docs/legacy/concepts/privileged-transitions/"},"children":[{"type":"text","value":"privileged"}]},{"type":"text","value":". Privileged transitions can only be invoked from a trusted context and are useful when you need to ensure the transition parameters are correct or have specific values."}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"true"}]}]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Example"}]},{"type":"text","value":":"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"div","properties":{"className":["gatsby-highlight"],"dataLanguage":"clojure"},"children":[{"type":"element","tagName":"pre","properties":{"className":["language-clojure"]},"children":[{"type":"element","tagName":"code","properties":{"className":["language-clojure"]},"children":[{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/transition-name"}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor.role/customer"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; actor.role/provider or :actor.role/operator"}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actions"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"["}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"]"}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":from"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/from-state"}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":state/to-state"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"action","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#action","ariaLabel":"action permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Action"}]},{"type":"text","value":"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"},{"type":"element","tagName":"table","properties":{},"children":[{"type":"element","tagName":"thead","properties":{},"children":[{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Key"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Type"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Description"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Example"}]}]}]},{"type":"element","tagName":"tbody","properties":{},"children":[{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":name"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Keyword"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Reference to an action to use."}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":action/create-pending-booking"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":config"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Map"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"A map from action configuration options to their values."}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"{:type :time}"}]}]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Example"}]},{"type":"text","value":":"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"div","properties":{"className":["gatsby-highlight"],"dataLanguage":"clojure"},"children":[{"type":"element","tagName":"pre","properties":{"className":["language-clojure"]},"children":[{"type":"element","tagName":"code","properties":{"className":["language-clojure"]},"children":[{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":action/create-pending-booking"}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":config"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":type"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":time"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"notification","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#notification","ariaLabel":"notification permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Notification"}]},{"type":"text","value":"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"},{"type":"element","tagName":"table","properties":{},"children":[{"type":"element","tagName":"thead","properties":{},"children":[{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Key"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Type"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Description"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Example"}]}]}]},{"type":"element","tagName":"tbody","properties":{},"children":[{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":name"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Keyword"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Unique name for the notification."}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":notification/new-booking-request"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":on"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Keyword"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Reference to a transition name that when completed triggers this notification."}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":transition/confirm-payment"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":to"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Keyword"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Recipient of the notification email. One of: "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":actor.role/customer"}]},{"type":"text","value":", "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":actor.role/provider"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":actor.role/provider"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":template"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Keyword"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Refrence to an email template to render the email body for this notification."}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":new-booking-request"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":":at"}]}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Time expression"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Optional time expression that when given turns the notification to a delayed notification."}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"{:fn/plus [{:fn/timepoint [:time/first-entered-state :state/preauthorized]} {:fn/period [\"P5D\"]}]}"}]}]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Example"}]},{"type":"text","value":":"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"div","properties":{"className":["gatsby-highlight"],"dataLanguage":"clojure"},"children":[{"type":"element","tagName":"pre","properties":{"className":["language-clojure"]},"children":[{"type":"element","tagName":"code","properties":{"className":["language-clojure"]},"children":[{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"{"}]},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":name"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":notification/notification-name"}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":on"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":transition/transition-name"}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":to"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":actor.role/customer"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","comment"]},"children":[{"type":"text","value":";; or :actor.role/provider"}]},{"type":"text","value":"\n "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":template"}]},{"type":"text","value":" "},{"type":"element","tagName":"span","properties":{"className":["token","symbol"]},"children":[{"type":"text","value":":email-template-name"}]},{"type":"element","tagName":"span","properties":{"className":["token","punctuation"]},"children":[{"type":"text","value":"}"}]}]}]}]}],"data":{"quirksMode":false}},"headings":[{"value":"Example process","depth":2},{"value":"The edn format","depth":2},{"value":"Transitions in the Marketplace API","depth":2},{"value":"Transitions in the Integration API","depth":2},{"value":"Action composition","depth":2},{"value":"Preconditions","depth":3},{"value":"Parameters","depth":3},{"value":"Configuration options","depth":3},{"value":"Time expressions and delayed transitions","depth":2},{"value":"Notifications","depth":2},{"value":"Validating and inspecting a process","depth":2},{"value":"Process reference","depth":2},{"value":"Process","depth":3},{"value":"Transition","depth":3},{"value":"Action","depth":3},{"value":"Notification","depth":3}]}},"pageContext":{"slug":"transaction-process-format","category":"references"}},
    "staticQueryHashes": ["3794076007","439097193","717698143"]}