← StoryScale + Flutterwave integrations

Create Transfer with Flutterwave API on Tour Viewed from StoryScale API

Pipedream makes it easy to connect APIs for Flutterwave, StoryScale and 2,100+ other apps remarkably fast.

Trigger workflow on
Tour Viewed from the StoryScale API
Next, do this
Create Transfer with the Flutterwave API
No credit card required
Intro to Pipedream
Watch us build a workflow
Watch us build a workflow
8 min
Watch now ➜

Trusted by 800,000+ developers from startups to Fortune 500 companies

Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo
Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo

Developers Pipedream

Getting Started

This integration creates a workflow with a StoryScale trigger and Flutterwave action. When you configure and deploy the workflow, it will run on Pipedream's servers 24x7 for free.

  1. Select this integration
  2. Configure the Tour Viewed trigger
    1. Connect your StoryScale account
    2. Configure timer
  3. Configure the Create Transfer action
    1. Connect your Flutterwave account
    2. Select a Country
    3. Select a Bank
    4. Configure Account Number
    5. Configure Currency
    6. Configure Amount
    7. Configure Narration
    8. Optional- Select a Payout Subaccount
    9. Optional- Configure Reference
  4. Deploy the workflow
  5. Send a test event to validate your setup
  6. Turn on the trigger

Details

This integration uses pre-built, source-available components from Pipedream's GitHub repo. These components are developed by Pipedream and the community, and verified and maintained by Pipedream.

To contribute an update to an existing component or create a new component, create a PR on GitHub. If you're new to Pipedream component development, you can start with quickstarts for trigger span and action development, and then review the component API reference.

Trigger

Description:Emit new event when a tour is viewed. [See the documentation](https://prodapi.storyscale.com/api/documentation)
Version:0.0.1
Key:storyscale-tour-viewed

StoryScale Overview

The StoryScale API enables the creation, management, and retrieval of storytelling content. Integrated within Pipedream's ecosystem, you can automate interactions with the StoryScale API to streamline content workflows, react to events, and sync data across various platforms. Pipedream's serverless platform simplifies the process of setting up event-driven workflows, making it straightforward to harness the capabilities of the StoryScale API without writing complex infrastructure code.

Trigger Code

import common from "../common/base.mjs";

export default {
  ...common,
  key: "storyscale-tour-viewed",
  name: "Tour Viewed",
  description: "Emit new event when a tour is viewed. [See the documentation](https://prodapi.storyscale.com/api/documentation)",
  version: "0.0.1",
  type: "source",
  dedupe: "unique",
  methods: {
    ...common.methods,
    _getVisitorCount() {
      return this.db.get("visitorCount") || {};
    },
    _setVisitorCount(visitorCount) {
      this.db.set("visitorCount", visitorCount);
    },
    isRelevant(tour, visitorCount) {
      if (visitorCount[tour.id]) {
        return tour.visitor_count > visitorCount[tour.id];
      }
      return tour.visitor_count > 0;
    },
    generateMeta(tour) {
      return {
        id: tour.id,
        summary: `Tour ${tour.name} Viewed`,
        ts: Date.parse(tour.updated_at),
      };
    },
    async processEvent(limit) {
      let count = 0;
      const visitorCount = this._getVisitorCount();
      const tours = await this.getRecentTours();
      for (const tour of tours) {
        if (this.isRelevant(tour, visitorCount)) {
          this.emitEvent(tour);
          count++;
        }
        visitorCount[tour.id] = tour.visitor_count;
        if (limit && count === limit) {
          break;
        }
      }
      this._setVisitorCount(visitorCount);
    },
  },
};

Trigger Configuration

This component may be configured based on the props defined in the component code. Pipedream automatically prompts for input values in the UI and CLI.
LabelPropTypeDescription
StoryScalestoryscaleappThis component uses the StoryScale app.
N/Adb$.service.dbThis component uses $.service.db to maintain state between executions.
timer$.interface.timer

Trigger Authentication

StoryScale uses OAuth authentication. When you connect your StoryScale account, Pipedream will open a popup window where you can sign into StoryScale and grant Pipedream permission to connect to your account. Pipedream securely stores and automatically refreshes the OAuth tokens so you can easily authenticate any StoryScale API.

Pipedream requests the following authorization scopes when you connect your account:

About StoryScale

Create shareable product tours and demos in minutes.

Action

Description:This action initiates a new transfer. [See the documentation](https://developer.flutterwave.com/reference/endpoints/transfers)
Version:0.0.1
Key:flutterwave-create-transfer

Flutterwave Overview

The Flutterwave API empowers developers to automate payment processes and integrate various payment services within applications. With this API, you can initiate and receive payments, manage transactions, and access customer data securely. Utilizing Pipedream, you can create workflows that trigger on specific events, process data, and integrate with an array of services without managing servers.

Action Code

import flutterwave from "../../flutterwave.app.mjs";

export default {
  key: "flutterwave-create-transfer",
  name: "Create Transfer",
  description: "This action initiates a new transfer. [See the documentation](https://developer.flutterwave.com/reference/endpoints/transfers)",
  version: "0.0.1",
  type: "action",
  props: {
    flutterwave,
    country: {
      propDefinition: [
        flutterwave,
        "country",
      ],
    },
    bank: {
      propDefinition: [
        flutterwave,
        "bank",
        (c) => ({
          country: c.country,
        }),
      ],
    },
    accountNumber: {
      type: "string",
      label: "Account Number",
      description: "This is the recipient's account number.",
    },
    currency: {
      type: "string",
      label: "Currency",
      description: "The currency of the Transfer. Learn more about supported currencies [here](https://flutterwave.com/gb/support/payments/what-currencies-can-you-transfer-to).",
    },
    amount: {
      type: "integer",
      label: "Amount",
      description: "This is the amount to be transferred to the recipient",
    },
    narration: {
      type: "string",
      label: "Narration",
      description: "This is the narration for the transfer e.g. payments for x services provided",
    },
    payoutSubaccount: {
      propDefinition: [
        flutterwave,
        "payoutSubaccount",
      ],
    },
    reference: {
      type: "string",
      label: "Reference",
      description: "This is a merchant's unique reference for the transfer, it can be used to query for the status of the transfer.",
      optional: true,
    },
  },
  async run({ $ }) {
    const response = await this.flutterwave.initiateTransfer({
      $,
      data: {
        account_bank: this.bank,
        account_number: this.accountNumber,
        currency: this.currency,
        amount: this.amount,
        narration: this.narration,
        debit_subaccount: this.payoutSubaccount,
        reference: this.reference,
      },
    });

    if (response?.data?.id) {
      $.export("$summary", `Transfer initiated successfully with ID: ${response.data.id}.`);
    }
    return response;
  },
};

Action Configuration

This component may be configured based on the props defined in the component code. Pipedream automatically prompts for input values in the UI.

LabelPropTypeDescription
FlutterwaveflutterwaveappThis component uses the Flutterwave app.
CountrycountrystringSelect a value from the drop down menu:NGGHKEUGZATZ
BankbankstringSelect a value from the drop down menu.
Account NumberaccountNumberstring

This is the recipient's account number.

Currencycurrencystring

The currency of the Transfer. Learn more about supported currencies here.

Amountamountinteger

This is the amount to be transferred to the recipient

Narrationnarrationstring

This is the narration for the transfer e.g. payments for x services provided

Payout SubaccountpayoutSubaccountstringSelect a value from the drop down menu.
Referencereferencestring

This is a merchant's unique reference for the transfer, it can be used to query for the status of the transfer.

Action Authentication

Flutterwave uses API keys for authentication. When you connect your Flutterwave account, Pipedream securely stores the keys so you can easily authenticate to Flutterwave APIs in both code and no-code steps.

To retrieve your API keys,

  • Navigate to your Flutterwave account and sign in
  • Go to “Settings” > “API”

About Flutterwave

We help banks and businesses build secure and seamless payments solutions for their customers.

More Ways to Connect Flutterwave + StoryScale

Verify Transaction with Flutterwave API on Tour Viewed from StoryScale API
StoryScale + Flutterwave
 
Try it
Create Transfer with Flutterwave API on New Tour Created from StoryScale API
StoryScale + Flutterwave
 
Try it
Verify Transaction with Flutterwave API on New Tour Created from StoryScale API
StoryScale + Flutterwave
 
Try it
Create Transfer with Flutterwave API on Tour Published from StoryScale API
StoryScale + Flutterwave
 
Try it
Verify Transaction with Flutterwave API on Tour Published from StoryScale API
StoryScale + Flutterwave
 
Try it
New Tour Created from the StoryScale API

Emit new event when a new tour is created. See the documentation

 
Try it
Tour Published from the StoryScale API

Emit new event when a tour gets published. See the documentation

 
Try it
Tour Viewed from the StoryScale API

Emit new event when a tour is viewed. See the documentation

 
Try it
New Subscription from the Flutterwave API

Emit new event when a new subscription is added.

 
Try it
New Transaction from the Flutterwave API

Emit new event when a new transaction is added.

 
Try it
Create Transfer with the Flutterwave API

This action initiates a new transfer. See the documentation

 
Try it
Verify Transaction with the Flutterwave API

Confirms a given transaction. See the documentation

 
Try it

Explore Other Apps

1
-
24
of
2,100+
apps by most popular

HTTP / Webhook
HTTP / Webhook
Get a unique URL where you can send HTTP or webhook requests
Node
Node
Anything you can do with Node.js, you can do in a Pipedream workflow. This includes using most of npm's 400,000+ packages.
Python
Python
Anything you can do in Python can be done in a Pipedream Workflow. This includes using any of the 350,000+ PyPi packages available in your Python powered workflows.
OpenAI (ChatGPT)
OpenAI (ChatGPT)
OpenAI is an AI research and deployment company with the mission to ensure that artificial general intelligence benefits all of humanity. They are the makers of popular models like ChatGPT, DALL-E, and Whisper.
Premium
Salesforce
Salesforce
Web services API for interacting with Salesforce
Premium
HubSpot
HubSpot
HubSpot's CRM platform contains the marketing, sales, service, operations, and website-building software you need to grow your business.
Premium
Zoho CRM
Zoho CRM
Zoho CRM is an online Sales CRM software that manages your sales, marketing, and support in one CRM platform.
Premium
Stripe
Stripe
Stripe powers online and in-person payment processing and financial solutions for businesses of all sizes.
Shopify Developer App
Shopify Developer App
Shopify is a user-friendly e-commerce platform that helps small businesses build an online store and sell online through one streamlined dashboard.
Premium
WooCommerce
WooCommerce
WooCommerce is the open-source ecommerce platform for WordPress.
Premium
Snowflake
Snowflake
A data warehouse built for the cloud
Premium
MongoDB
MongoDB
MongoDB is an open source NoSQL database management program.
Supabase
Supabase
Supabase is an open source Firebase alternative.
MySQL
MySQL
MySQL is an open-source relational database management system.
PostgreSQL
PostgreSQL
PostgreSQL is a free and open-source relational database management system emphasizing extensibility and SQL compliance.
Premium
AWS
AWS
Amazon Web Services (AWS) offers reliable, scalable, and inexpensive cloud computing services.
Premium
Twilio SendGrid
Twilio SendGrid
Send marketing and transactional email through the Twilio SendGrid platform with the Email API, proprietary mail transfer agent, and infrastructure for scalable delivery.
Amazon SES
Amazon SES
Amazon SES is a cloud-based email service provider that can integrate into any application for high volume email automation
Premium
Klaviyo
Klaviyo
Email Marketing and SMS Marketing Platform
Premium
Zendesk
Zendesk
Zendesk is award-winning customer service software trusted by 200K+ customers. Make customers happy via text, mobile, phone, email, live chat, social media.
Premium
ServiceNow
ServiceNow
The smarter way to workflow
Notion
Notion
Notion is a new tool that blends your everyday work apps into one. It's the all-in-one workspace for you and your team.
Slack
Slack
Slack is a channel-based messaging platform. With Slack, people can work together more effectively, connect all their software tools and services, and find the information they need to do their best work — all within a secure, enterprise-grade environment.
Microsoft Teams
Microsoft Teams
Microsoft Teams has communities, events, chats, channels, meetings, storage, tasks, and calendars in one place.