JustPaid Workflows
Connections

Connections

How data flows between blocks and how to manage integration credentials

Connections in JustPaid have two meanings: the edges that link blocks together on the canvas (defining data flow), and the integration connections that authenticate your workflow with external services like Stripe, Salesforce, and Slack.

Data Flow (Edges)

Edges are the lines connecting blocks on the canvas. They define two things:

  1. Execution order -- a block only runs after all its upstream blocks complete
  2. Data access -- downstream blocks can reference outputs from upstream blocks via template variables

Creating Edges

Click an output port on a block and drag to an input port on another block. The edge appears as a line with an arrow indicating data flow direction.

Template Variables

Access data from upstream blocks using template variable syntax:

ContextSyntaxExample
Trigger payload{{input.field}}{{input.data.object.amount}}
Step output{{steps.stepId.output.field}}{{steps.lookup.output.email}}
Workflow variables{{variables.name}}{{variables.taxRate}}
System values{{now}}, {{runId}}Current timestamp, execution ID

Data Flow Principles

  • Directional -- data flows from outputs to inputs, never backwards
  • Automatic -- the execution engine resolves all template variables before a block runs
  • Concurrent -- blocks with no dependency on each other run in parallel automatically
  • Conditional -- Condition blocks activate only one downstream path per execution

Integration Connections

Integration connections authenticate your workflows with external services. They are managed through Nango and support OAuth 2.0 and API key authentication.

Setting Up a Connection

  1. Open the Connections panel in the studio
  2. Click Add Connection
  3. Select the provider (Stripe, Salesforce, etc.)
  4. Complete the OAuth flow or enter your API key
  5. The connection is now available in all workflow blocks for that provider

Security

  • All credentials are encrypted at rest with AES-256-GCM
  • OAuth tokens are automatically refreshed when they expire
  • Credentials are never stored in workflow definitions or exposed in logs
  • Each connection is scoped to a specific company

Supported Providers

ProviderAuth TypeConnection Setup
StripeOAuth 2.0Authorize via Stripe Connect
SalesforceOAuth 2.0Authorize via Salesforce
HubSpotOAuth 2.0Authorize via HubSpot
QuickBooksOAuth 2.0Authorize via Intuit
XeroOAuth 2.0Authorize via Xero
NetSuiteToken-Based AuthEnter credentials
Sage IntacctAPI KeyEnter web services credentials
SlackOAuth 2.0Authorize via Slack
GmailOAuth 2.0Authorize via Google
OutlookOAuth 2.0Authorize via Microsoft
DocuSignOAuth 2.0Authorize via DocuSign
PandaDocAPI KeyEnter API key
AttioAPI KeyEnter API key
Dropbox SignAPI KeyEnter API key
RilletAPI KeyEnter API key

Frequently Asked Questions

On this page