Skip to content
Status

Via workflow automation (iPaaS)

Workflow automation platforms / IPaaS (Integration Platform as a Service) are tools that help you automate business processes without the need to write code or host your own software. They are ideal for companies that want business efficiency without the need to invest in a strong IT department, or where the IT department is otherwise occupied.

Shuttle supports several of these platforms:

  • Make.com: Make.com offers advanced control, branching logic, and visual flows for building complex automations with minimal code.
  • Zapier: Zapier makes it easy for non-developers to automate tasks across thousands of apps with a clean, no-code interface.

If you require a platform not listed please contact support@shuttleglobal.com.

Workflow automation is the orchestration of multiple systems and steps to perform a task.

Most automation platforms provide a graphical user interface, so non-technical users can configure both simple and complex processes like the one below:

flowchart LR
A[Trigger] --> B[Create Payment Link] --> C[Send to Customer]

Examples include:

  • Field agents getting quotes secured:
flowchart LR
B[On HubSpot Quote Creation]
B --> C[Create Payment Link]
C --> D[Email/SMS Customer]

  • Event signup automation using WhatsApp
flowchart LR
B[On WhatsApp signup message]
B --> C[Create Payment Link]
C --> D[Reply on WhatsApp]

  • Chasing overdue invoices
flowchart LR
B[On 15th of the Month]
B --> C[Loop overdue Xero customers]
C --> D[Create Payment Link]
D --> E[Email Customer]
E --> C

  • Getting membership fees paid
flowchart LR
B[On Manual Trigger]
B --> C[Loop Google Sheet]
C --> D[Create Payment Link]
D --> E[Email Customer]
E --> C

Workflows can also be triggered by payment notifications, so you can provide goods or services. On a notification, get the payment link: once it’s been paid, it contains detailed information about the payment, so your workflow can act on it.

flowchart LR
A[Notification] --> B[Filter] --> C[Get Payment Link]
C --> D{Status?}
D --> E[Success → Provision Goods]
D --> F[Pending → Reserve Goods]
D --> G[Active again after a failed payment → Release Goods & Notify Customer]
D --> H[Expired → Notify Customer]

To use personalised single-use payment links in your workflow automation, you will need:

  • A Shuttle Payment Links account
  • A payment provider account (e.g. Stripe), or our sandbox gateway
  • A triggering event, eg an app that you want to trigger the link generation from (e.g. Slack, Whatsapp, Invoicing app, Google Sheets), timing schedule, or manual trigger
  • An account with one of the following workflow apps, which supports your triggering event:

In your workflow tool you can connect to Shuttle via:

  1. Install the “Shuttle” connector (search for “Shuttle” in the app store or use a link at the top of this document)
  2. Add “Create a Payment Link” action to one of your templates / scenarios (please view a tutorial on the platform if you’re not sure how to do this)
  3. You will be prompted to “Connect Shuttle”, click the button and when prompted select if you are connecting a “Live” or “Sandbox” account. You will then be taken to a login screen to log into Shuttle and select which account to connect. You must have ALREADY created the account in the appropriate LIVE / SANDBOX mode for it to display. If required you can set up a new account, but will need to restart the connection process.

Tip!: We recommend you build your workflow using a Sandbox account, which does not process real payments, and then switch to a LIVE account when you are ready to use with customers. After switching from sandbox to live, always validate a live payment before rolling out to your customers, specifically that it makes it all the way to your bank account.

Also, when switching from sandbox to live, ensure you update ALL templates / scenarios involved in your automation.

Shuttle provides 4 actions for managing payment links:

  • Create a new payment link
  • Get a payment link
  • Update an existing payment link
  • Delete a payment link

In addition, it raises “Payment Notifications” you can use to trigger workflows.

See Process flow for the behaviour of each.

Shuttle’s workflow integrations support the following fields when creating and updating a payment link:

Input Field Description
Currency (Required) 3-letter currency code for the payment (e.g., USD, EUR, GBP)
Amount Payment amount in decimal format (e.g., 29.99, 1000.00), if not specified, the amount will be requested from the customer
Reference Your reference to track this payment (e.g., ORDER_1234, INV_567), if not specified, the reference will be requested from the customer
Success URL Optional URL to redirect users when payment is completed
Pending URL Optional URL to redirect users when payment is processing asynchronously (e.g., needs authorization), if not specified, the pending URL will be requested from the customer
Pending Message Optional message to show when payment is pending (if no pending_url is provided)
Success Message Optional message to show when payment is successful (if no success_url is provided)
Skip Receipt If true, immediately redirect to the success / pending URL without showing messages
Save Card Controls whether payment methods are saved, valid values are true (always save), false (never save) or blank (user decides)
Expires At Optional when this payment link should expire (ISO date-time format, alternative to Expires In)
Expires In Optional seconds until expiry (default 1 day - 86400)
Customer CRM Key Your unique identifier for this customer, this will present previously saved cards for returning customers
Customer First Name First name of the customer
Customer Last Name Last name of the customer
Customer Email Email address of the customer
Customer Phone Phone number of the customer
State 1 Custom state field that will be returned in webhooks and redirects
State 2 Custom state field that will be returned in webhooks and redirects
State 3 Custom state field that will be returned in webhooks and redirects
State 4 Custom state field that will be returned in webhooks and redirects
State 5 Custom state field that will be returned in webhooks and redirects
State 6 Custom state field that will be returned in webhooks and redirects
State 7 Custom state field that will be returned in webhooks and redirects
State 8 Custom state field that will be returned in webhooks and redirects
State 9 Custom state field that will be returned in webhooks and redirects

Output Field Description
Payment Link ID Unique identifier for the created payment link
Payment Link URL The URL that can be shared with customers to make payment
Expires At Expiry date for the payment link

You can fetch a payment link using its ID up to 1 year after it was last updated.

Input Field Description
Payment Link ID (Required) ID of the payment link to retrieve

This returns both information about the payment link and information about the payment. Information always returned (where it exists on the payment link):

Output Field Description
Payment Link ID Unique identifier for the payment link
Payment Link URL The URL that can be shared with customers to make payment
Status Current status of the payment link (ACTIVE, PENDING, COMPLETED, EXPIRED, ARCHIVE)
Created Date When the payment link was created
Updated Date When the payment link was last updated
Expiry Date When the payment link expires
Currency 3-letter currency code
Amount Payment amount in decimal format
Reference Your reference for this payment
Success URL Redirect URL for completed payments
Pending URL Redirect URL for pending payments
Pending Message Message shown for pending payments
Success Message Message shown for successful payments
Skip Receipt Whether to skip the receipt page
Save Card Whether payment methods are saved
Account CRM Key Your unique identifier for this customer
Account First Name First name of the customer
Account Last Name Last name of the customer
Account Email Email address of the customer
Account Phone Phone number of the customer
State1 Custom state field 1
State2 Custom state field 2
State3 Custom state field 3
State4 Custom state field 4
State5 Custom state field 5
State6 Custom state field 6
State7 Custom state field 7
State8 Custom state field 8
State9 Custom state field 9

Information only available after payment attempted:

Output Field Description
Account ID The account ID from your CRM/PSP integration
Contract ID Unique identifier for the contract
Contract Reference The reference entered by the customer (when allowed)
Contract Amount Total value of the contract
Contract Currency Currency of the contract
Contract Status Current status of the contract
Charge ID Unique identifier for the charge
Charge Amount Amount of the charge
Charge Status Status of the charge
Transaction ID Unique identifier for the transaction
Transaction Amount Amount of the transaction
Transaction Currency Currency of the transaction
Transaction Status Status of the transaction
Transaction Reference Reference entered by the customer
Transaction Processed When the transaction was processed
Gateway Status Status returned by the payment gateway
Gateway Message Message returned by the payment gateway
Gateway Reference Reference returned by the payment gateway
Payment Method ID Unique identifier for the payment method
Payment Method Type Type of payment method (credit card, bank account, etc.)
Payment Method Status Status of the payment method
Payment Method BIN First 8 digits of the card (for card payments)
Payment Method Last4 Last 4 digits of the card (for card payments)
Payment Method Expiry Expiry date of the card (for card payments)
Payment Method Name Name on the payment method
Payment Method Token Token representing the payment method
Payment Method Source Source of the payment method

The key fields you care about are:

  • Payment Link Status: When deciding what to do next
  • Contract Reference: If you allow the customer to enter a reference
  • Transaction Reference: The unique payment ID displayed on the receipt screen and sent to the payment gateway (e.g. “REF-00001234”)
  • Transaction Amount: The amount of the transaction
  • Gateway Status: The response from the payment processor
  • Gateway Message: The error message (or at times pending message) returned from the payment processor
  • Gateway Reference: The payment reference returned from the payment processor (eg Stripe ID for the payment)
  • Payment Method Name: A descriptive name of the payment method used(eg “Visa ending 1234, exp 12/34”)
  • Payment Method Token: The token representing the payment method used by the payment processor if the card is saved (eg Stripe ID for the saved card)

Shuttle provides a trigger event called “Payment Notification”, this will fire on key events in the payment lifecycle:

  • PAYMENT_LINK.CREATED - When a new payment link is created
  • PAYMENT_LINK.UPDATE - When a payment link is updated, or a payment attempt on it fails while the customer is still on the payment page
  • PAYMENT_LINK.PENDING - When a payment has been submitted but is awaiting authorisation
  • PAYMENT_LINK.FAILED - When a pending payment is declined
  • PAYMENT_LINK.COMPLETE - When a payment is successfully processed
  • PAYMENT_LINK.EXPIRED - When a payment link expires
  • PAYMENT_LINK.ARCHIVE - When a payment link is archived (deleted)

Each notification contains the following fields you can use to access the payment link for further information:

  • action - The event type (e.g., PAYMENT_LINK.COMPLETE)
  • payment_link_id - The ID of the payment link
  • state1 … state9 - State fields (if configured)

You should use the payment link action and state fields to filter which events you care about and call “Get Payment Link” to get the payment link details.

Was this page helpful?