Intro to Ecommerce Integrations: Build a Flow with Celigo Integrator.io

In this session, we will walk through how to build an integration flow with Celigo integrator.io. This session is good for all users (business or technical) whether you are new to integrator.io or want a refresh. During the live demonstration, our Solutions Consultant will walk through a common use case for ecommerce companies: connecting an ecommerce platform to a logistics provider. This is a great opportunity to see our new user experience in action.

Thousands of ecommerce companies rely on Celigo’s integration platform to enable smoother, more efficient operations with fewer technical resources. With Celigo’s library of pre-built temples and connectors you can get started quickly and expand. 

Topics discussed include:

  • An introduction to the Celigo integrator.io (new User Interface)
  • Overview of templates, application, and universal connectors
  • Live demo: building an integration flow
  • Overview of Advanced Capabilities
Full Webinar Transcript
Welcome and thank you for joining our session, Intro to Ecommerce Integration, Build a Flow with Celigo Integrator.io. My name is Kristie Conner. I am the Director of Product Marketing for Celigo Integrator.io and I’ll be moderating the session. The main attraction is Adel Haider, one of our talented solutions consultants. He is going to demonstrate how to build a flow from start to finish. We selected a common use case for e-commerce companies, connecting an e-commerce platform to a logistics provider. This is a great session whether you are new to Celigo Integrator.io or have been using IO. And if you have not already signed up for a free edition account, we’ll highlight at the end of the call during the Q&A how you can sign up for a free account. And if you have not yet tested the full power of Integrator.io, we’ll highlight how you can activate a free trial for 30 days. This session will be recorded and available on demand. We look forward to your questions, so please start posting them now and we will answer them during the Q&A. So let’s get going, Adel. All right. So thank you for that, Kristie. Good morning. Good afternoon. Good evening, everyone. Hope everyone is doing well today. The agenda for today’s session is, as you see there, we’re going to be discussing a use case, which Kristie has already mentioned. I’ll also be explaining how you piece the building blocks together to build that. And then, at the end, we’ll talk about the actual trying it out. So let’s get started, as Kristie says. The first thing I’d like to do is to provide you with an overview of Celigo. Just Celigo at a glance there. And this is for the benefit of those who perhaps are unfamiliar with us or might be the first time you might be hearing about us. So who are we and what do we do? Well, we are a NetSuite platinum partner. We are also listed in the Gartner Magic Quadrant, which in itself is a feat. And last but not least, we are also a G2 iPaaS leader. Now what is an iPaaS? That leads me or leads us also in this journey onto what we actually do. So we provide an integration platform as a service. That is a fancy word to explain that we are providing a platform which allows you to connect several business applications. Now with that– that’s not the only thing we provide. We provide many other things on top of that. But one of the other things very, very important as well is our deep expertise in e-commerce. So we have built integrations within the e-commerce space many, many, many different– many, many times with several different use cases. So we really understand how it all fits in together. Now that platform that I was saying before, that is built for IT and operational type teams and departments. But it’s also– and that’s and there– for line of business employees, line of business people as well. And the idea here is trying to cater for both ends of the equation. Last but not least, we do provide best in class integrations for SaaS application. This is cloud-based applications you’ll be running within your organization for a number of different purposes. Right. Now, there are typically two landscapes when it comes to integration, broadly speaking. There’s the e-commerce landscape, which is what we will be covering today. And then, there is the software landscape. Now the e-commerce one, as you can see, has all things related to e-commerce, things like storefronts, points of sale, trading partners, marketplaces, and a number of others as well. Now, even though today we will focus on one particular use case which will imply obviously two platforms, two systems, to SaaS,] be an e-commerce platform and a logistics platform, we can connect to any number of applications. So the ones you see on the screen this is just a subset of the ones we can connect to. And also bear in mind at the bottom in the center there you will see generic connectors which means anything which is not on here or you don’t see on our website we can still connect to so long as they support one of the communication mechanisms or interfaces that you see there. And if you’re in doubt or for whatever reason whether we can’t support it please reach out to us. Now even though today is about building a flow from scratch it is not necessary to actually do so. Without platform with Celigo – We do offer pre-built integrations. That’s what we call integration apps. These are off the shelf solutions which live exactly on our same platform and the idea is that you can use them as they are or make some slight adjustments like configurations to cater for a specific integration use case. They rely on best practices from a business perspective as well as from a technical perspective, a technological perspective. So you do not have to worry about that in that sense and as the platform is very user-friendly, as you will see, it really does make for a fast-like experience for a platform as a service. It’s one very unique thing out there in the market. On top of that, we offer templates as well. Templates you can think of as blueprints. They’re similar to integration apps but actually what they are is– where they differ, I should say, is that you have full flexibility in what you can do with templates. You feel free not to use them at all if you don’t want to or you can use them and to leverage that as a means of learning and learning experience of how to integrate on our platform or you can even take it a step further and use that to learn of specific use cases or the way in which you should implement a use case that you might have in mind. Okay. Now on to today’s use case which is the main attraction. So we will be focusing on Magento and ShipStation. That’s going to be the two systems. The two platforms in question. Magento being the e-comm platform and ShipStation being the logistics one. You might be thinking why connect these two? What use cases? Well, if you haven’t guessed it already here are two common use cases that you’ll see when integrating these two systems. One is moving orders from Magento over to ShipStation for delivery and then the other one is bringing back the fulfillment information or shipment information back into Magento such that any emails can be triggered off from there over to your customers. Today’s particular use case we’ll be focusing on the one at the top which is bringing the orders over from Magento to ShipStation. Now without any further ado, I shall now move over to the platform so we can actually implement our flow. Before doing so let me walk you through the platform just in case this is the first time that you are looking at the platform or the first time seeing this. When you first login after signing up for a free account, for example, or even for a paid subscription what you will see is what you see here on the screen with the exception of these tiles. These tiles are on my account and one reason I’ve placed them there is for your benefit for you to see– or rather for your benefit, pardon me, for you to see how things are placed. Let’s start with a little bit of a walkthrough on the left-hand side here. When you first login as I said you will see this set of options. First one here is the tools. Now there are a number of tools that are at your disposal for several different things some of which are the flow builder which is building flows of information between two systems and that’s actually what we’re going to be using later on when we start building our flow. There is also the data loader that’s useful for bulk loading of information. The use case there is if you’ve onboard a new application or even replaced an existing application and you need to migrate information in bulk. Then you can use data loaded for that. And other use cases also if you happen to have things in a file-based, happen to have information in file-based format, and you need to convert that into something more meaningful, and push that across to a specific business application. Last, but not least, is the developer playground that’s useful for the more adventurous amongst us, the more technical. Those who really want to get their hands dirty with the nitty-gritty things as well. Now, in terms of resources, these are the actual building blocks within Celigo, apart from, obviously, the previous integrations, as I mentioned before, and the templates. Everything is built upon these building blocks. Pardon me. Now, these building blocks are reusable across the platforms. So things like connections, imports, and exports, you build them once, and you can reason across different places. And when I say build, you’re actually just going through a menu and configuring and inputting certain details that platform requires. And I will walk you through each of those as well, as in when we are actually building the flow. There’s also such things as scripts and agents for on-premise use. Scripts are for the, again, more advanced functionality you might want to do. So, for example, if you want to implement something very technical, very advanced, you can actually do so with javascript. So on our platform and hook that up in certain places, which, again, I will show you when building the flow. Now, the platform wouldn’t be complete without a way to ask for help, and that’s exactly why the help section here is in place. Now, there are two main things to highlight here. The help center itself, which is actually a place where you will find a number of different articles. It’s a knowledge-base, as it’s sometimes called. A number of articles written by people from Celigo, but also from some of our partners with some comments as well from existing customers, as well on how things are actually done. It’s a good resource to search, in case you get stuck on actually implementing something, or even if you just want to explore. If you do, in fact, encounter something which is very complicated or you have not been able to find the answer for in the help center, by all means, please submit a ticket straight to our support team, and they will get in touch with you to provide you some further assistance. Now, if you are looking for something a bit more structured, there is the Celigo University where you will be able to get learning paths there. You can follow those. And once you finish the learning path, and you’ve got more acquainted with the platform, you really do understand how things work, you actually do get certified as well. It’s a fantastic way to learn but, also, to feel a sense of accomplishment and achievement. In fact, all of our certified partners do go through this learning path themselves, in order to know how to use the platform and how best to design integrations. Last, but not least, again something which is quite unique to Celigo is the marketplace. As the name suggests, it is a place where you can find a number of different integrations that you can use. The templates and the prebuilt integrations that I mentioned about before, this is where you would actually find them. What you would do, for example, if I was to search for Magento 2, then I can find a number of prebuilt integrations, the integration apps, but also the templates themselves. And the same thing would apply for ShipStation as well, as you can see here. Right. Now that we’ve seen the lay of the land, shall we say, let’s start with actually building and integration. Now, the first step is perhaps this. First step is to create here a tile. This is what one of these things is called. These squares are called tiles. The purpose of that is to group a number of flows of integrations, flows of data between two systems. I’m just curious. I’m going to put it as Magento 2 to ShipStation, and I’ll put it as part of the build a flow – let’s do that. All right. Anyway, now that we are ready to start building flows themselves, we can start by selecting this. And this is an empty canvas of flow. What you do in order to start working on this is creating a source which is where you create what’s known as an export of information extracting information from a specific system. Once that is done, you then create an import which is the opposite, of course, importing information into a system. And then finally a mapping between the two. And we’re going to go through each of those steps individually. Let’s start by adding a source. Now, you can see here that the first thing it’s asking me to do and the first thing it will ask you to do as well is to select a specific application. At the very top, you see the most generic ones for databases and for universal connectivity as well. But as you go down the list of 150+ applications, you will see several of them here. All of which are also listed on our website. Now, for simplicity, you can of course type ahead searching for an actual system in question. If you do find that system here, that means we have a pre-built connector for it which means we can communicate. We can talk to that system very, very easily. Now, in this case, I already have a connection to Magento. But for the purposes of completeness, I shall show you how you actually create a connection. As I mentioned before, building is essentially filling in the details. So in this case, if I want to create a connection to Magento, I will fill in the base URI, the username, and the password along with the token as well, and you will do exactly the same thing. All you would need is to verify this information– obtain that this information, I should say, from your Magento instance. And once that’s done, you can test the connection as you see here on the bottom right hand corner. And then assuming that is successful, you can then save and close. Now, in the interest of time, I have as I said already one connection in place, and this is where you start to see the artifacts and the components of the building blocks being reusable. Now, I mentioned before the concept of an export because what we’re building now. You’ll see here I can actually select a preexisting one if I wanted to. And you’ll be able to do the exact same thing on the platform as well. This is where you start to see the modularity of the platform where you can really reuse what you’ve created making the best use of your time. However, for the purposes of today, we shall be building together in actual export rather than reusing one. First step is to add a name to this. I use this convention because it makes it easier. I put an abbreviation of the system and then the name of the operation itself. This will be getting the order or orders in this case in plural. Now, in going down, as you have the option of adding a description, this detail is already filled in for you the connection. However, you can change it if you need to. So again, same approach. And then we have here the form view. This is very important. By default, it will be on whatever the application is selected. However, there is the option of using a REST API form. This means you can have access to the back end of what’s actually happening in terms of the technical aspect of setting up things like the HDP headers, relative URI, and things of this nature. This also applies if you’re using the generic connector, the generic REST API or HTTP connectors if you’re looking to connect a system which we do not have a connector for. Right. Now, going back to the form here which does help. In using the form view for the Magento 2, you will see the API name and the operation which you have to choose in creating an export. The API name pretty self-explanatory here. You just have to select orders in this case. In going down the list, you will see there are several of them. This is all that’s available on the Magento API itself and by selecting order here, then you will be able to choose the operation in question in relation to the orders. Now if you’re not familiar with this and you’re not familiar with the API Magento, I do encourage you to read the documentation. It’s very easy to understand as it will give you some further context into this. Now in this case here, the operations are the ones you see there. The most relevant of which is to search for a sales order as it’s called on the Magento side. Now in doing so. There is then the option to configure search parameters. We are talking about a search operation in the end. And if you launch this, you’ll see this– this, again, is the form that you would go ahead and fill in. However, you are not left blank in trying to figure out what to put in there. There is some help as well which explains a few key details, but there’s also a neat little trick which you can do as well which is by going down to here in the configuration of the export type. Now what this defines is how to extract the information, all of it, a delta based on a specific date and time or just a test record or just a test order in this case from Magento. Now if I select delta and go back to the launch, you’ll notice here that there’s now an export, the last export date and time. So the platform is giving you a hint as to what you can use for a variable name, one that would actually be for the delta. And this will be also highlighted in the knowledge base with the help center as I mentioned before, so it can give you some hints there into how that actually works. And once you get familiarized with that, it will be very, very easy for you to start building things quickly. Now in this case, because I know that I’m looking for one particular store, I am– particular orders from a specific store, that’s what I will put here, and I know the ID of the store simply because I have reconfigured that in my Magento instance where you can, of course, do the same for your case as well. And I will change this to test record rather than the delta. And what we’ll do now is select here the preview. Now you can select the number of records to be extracted. In this case, there is only a single order on that specific store which has been placed. And there you go, you’ll see immediately the data being returned from Magento into here. It is in [JSON?] format, it makes it much easier to read in this format . And, of course, it’s much easier to manipulate as well on the platform. And that’s it. With regards to an export, you do, of course, have some advanced functionality which I do encourage those more and more technically inclined amongst you to explore these kinds of details. And in fact, if you do want to understand them better, feel free to reach out or even experiment with them as well as I said. But just to give an insight into what this is, if you need to specify the number of orders to be processed in a single batch, then you can do so via here as well. Just one of the features there to start fine-tuning how your integrations work. Now in saving this, the export is created. And as I mentioned, the next step there is to create an import. So import the data into, in this case, ShipStation. So we’ll go ahead and do that. As you see, it’s a repeat of the process that we did before. The same list available here. If you choose or if you type ahead ShipStation, this is what you’ll see. Now in this case here, there is a slight change and this is because of the nature of what this building block or component actually is. Contrary to an export, import requires importing data but there is also the option of performing a lookup. So imagine if you have a scenario where you need to, you get the orders from Magento and then you would like to also get some further customer information as well. You can do that in a separate step by performing a lookup, an additional step, a lookup for additional records into Magento itself or any other application for that matter. In this case, in keeping it in line with simplicity, we’ll go with importing records into ShipStation. And similar to before, I also have a connection ready for us to use. But as before, I shall also show you how easy it is to add the information. Again, this detail is available in your ShipStation account. If you do not find that, then please reach out to your representative on the ShipStation side to get that information for you. Now, I shall select the pre-existing one. And once again here, you can see that it’s possible to use pre-existing inputs. However, for the sake of completeness, I shall create one on the fly. All right. Now in this case, I’ll give it a naming convention as I mentioned from before and this is creating an order. Going down the list here, we have again the option of modifying the connection. And also an interesting one here is the one-too-many approach. In the event that a single item, for example, in the order would have to generate multiple records on ShipStation, then we could flip the switch here and do that as well. However, this is not necessary in this case, so we will keep it simple. Same as before, you also have the REST API view as well as the ShipStation, just the form view there. And, again, similar to before, you simply have to choose the API name. In this case, it is orders. And lastly, the operation which is to create,. In this case, ShipStation offers a create slash and update. So a two-in-one, if you will, with the operation. And in fact, in order to reflect this in the name, I shall also change this here as well just for the sake of completeness and orderly fashion. Now that that is done, save and close. That is step two. Now step three, if you recall, is to create a mapping. So we’ve exported the data, we’ve defined how we can export the data, we defined how you’re going to input the data, but now you need to define how to actually translate, how to map data between the two. That’s where this step comes into play, the input mapping. Now the input mapping itself is where you define the fields in question. Now to keep this quite exemplary, what I’m going to use here is the approach that I typically do and also the implementation to teams which is working backwards. Working from the target system, understanding what are the mandatory fields there. And, again, you can check the documentation of ShipStation in this case or whatever target system you’re using to figure out what are the mandatory fields. Now, I do know that the name is one of the mandatory ones. There are also the customer emails. I’ll place all of them here. There is the phone as well. And this one is not mandatory, however, it is useful to have. And there’s two [inaudible] there, the [inaudible]. The reason for that is to show you how you can map a single field into multiple fields there. The postcode, the street address – just choose one for the sake of simplicity – and the city as well, any notes regarding the customer that [inaudible], and last but not least, details of the item itself. Again, that is where a new little thing has been popped up, and I’ll explain what that is in a moment. Now that we have this in question here on the right-hand side, we then need to populate on the left-hand side. Now, the first thing here that we see is the name. Well, if you type name, you get a first name and last name. How do you choose which one? Well, you don’t have to choose which one. You can, in fact, concatenate both of them using what’s known as a multi-field option. And this is a good place to see that you have four different ways in which you can map fields. Standard is just moving across the data without making any changes. Hardcoded is, as the name suggests, hardcoding it to one specific value. Lookup is something of a domain value mapping. So A, B, C to 1, 2, 3, for example. And then last on our list is the multi-field which is what we’re looking for. Now, here you have the option of applying functions, for example. Think of it as what you’d see in Excel, for example. Those are similar functions that you have here. You also have the actual fields themselves. So remember, here, the idea is to concatenate the first name with the last name. So if we type ahead first name– whoops. Rather, if we select first name to be more specific here, and we use customer first name. And if you add a space and then select customer last name, there we are. We now have the two in line– we have the two fields side by side with the space in them. And that’s exactly what’s going to be sent across over to the– in the mapping in ShipStation itself. Oops. There has been an error, but nothing to be concerned about here. This is also a way to show how the platform actually provides some feedback immediately in the event that something is incorrect. Now, the customer email, this is rather easy. If we just use customer email, that’s what we get here. Then for the telephone, I do know that that is the nomenclature to be using. And here, I would like to show that you can actually map the same fields to multiple fields here. This could be useful, specifically, in a scenario like this where it’s useful to have the phone number of the bill to sign but also who is going to be receiving the package. Postcode, again, these are all basic mappings or standard mappings as we call them. Nothing out of the ordinary there. Same for the city and also for the notes. Last but not least is the items. And there is actually one missing mapping here that I forgot to put in place which is the order number. And this is good to explain the following. So we have items here. However, this looks somewhat different. If you go all the way to the bottom, you’ll see that there is an asterisk there. And the reason being that the items are a collection. They are an array of multiple items. Of course, an order would be one or more items. Now, if [you?] wanted to get the actual ID of the order, you’ll notice that if you type ahead order_ID, which is just the backend name of the order on the ID on the Magento side, there is this Items* Order. Now, this is saying that it’s going to get every single item from this list and get the order ID of that and map it into order ID. However, what would be more accurate is actually to put a zero simply because if this is a single order, then all the order IDs will be the same in this case. Now for the rest of them, for the SKU and the name, that’s as simple as just doing this here. Of course, searching for item name which is shown at the bottom. It is a bit hidden, but it is there, I reassure you. And there we are. We have now a mapping done and ready to go. Now, that would give us enough to actually execute this flow. However, I’m going to give you some bonus information here. So let’s say, you actually wanted to excuse me, to perform a filtering. Let’s say that you only want to descend to shipstation, the items whose values were greater than a certain amount. Well, what you can do is use what’s known as an input filter. So to the step, which is sending the importing data into ShipStation, you can apply an input filter. Now, this looks as you see here. Now, in this case, as I mentioned, we’re looking for the actual amounts, or in this case, what Magento calls the grand total. So if we go all the way down, we can find here a record grand total, which is exactly the same as what you see here in the grand total as well. Now, if you were to say, for example, that orders above 50, and we’re going to change this to greater than all orders above 50, should be sent to shipstation. And if we preview this, this actually says through the record will be processed. If we then change this and say that actually, only orders above 100 shall go into shipstation. And we preview this, then this is immediately going to change over to– oh, it should have changed over to false, but it didn’t want to, it seems. Let me try and preview that again. Ah, that seems to be a little mistake on my end, or may have misunderstood this. Let’s try with a different field to see if this is more accurate here. And there we go. That was my mistake. There we are. Now we can see again, using the same terminology, same way of working the grand total, in this case, 105, rather than the 75 was before. So this is actually a more accurate number to use. In this case, the amount being above 100. Let’s say I should change this to is equal to above 100. And let’s reset that if we do a preview this will be processed. If I change this to 110 and preview this, then it immediately changes to false, which means the record would not be sent. In other words, the order would not go to shipstation. This is particularly useful in the event that you have multiple logistics partners, and only some of them handle higher priority ones. Others handle the lower priority ones as well. And you might have several criteria, they’re not just one. You can add as many rules as you like. The other bonus that I shall give to you is let’s say that you would like to cut down on the amount of information that you see here. This is quite a lot of information you see in the mapping itself. And you want to make sure there’s only a subset of that to keep it simple. What you can do is apply what’s known as a transformation. In other words, it’s a bit of a cleanup. So this is the input of data that you will see and it will show up in a moment. And what you can actually do is to start to modify that data on the fly, such that it reduces the amount of information that you actually see and to show up on to the transformation itself. Now, let me cancel out from this and reset because this for some reason is now giving me the loading page, which is not ideal given our scenario here. But just bear with me for a moment. I shall now do a refresh of this. And there we are. Let’s try this one more time. So as I was mentioning, if you go into the transformation here, and here we are, we have the data now. And what you can do is effectively modify this. So let’s say we only wanted the grand total itself and I just use here grand– oops, grand total. Or you can change the camel case. And let’s say I want the customer email only. There we go. Customer email. And by performing a preview, you will see that this reduces by a large quantity all of the actual information that’s available in the input really does help to keep things simple. But of course, there is no limit to the number of mappings and rules as it says here that you can have of transformation. Having said that, if you do want to perform some very, very advanced functionality– I did mention it before. There is the possibility of using JavaScript and then hooking it up in certain places on the platform. This is what this J is for here. And you will see the exact same J here as well. So you can hook up in specific places. And in doing so, you choose where within the hook to actually do that, whether it’s the prior to the mapping, so pre-map stage, the post map, after performing the mapping, which you’ve defined here, and last but definitely not least, after submission, so post submit. What this means is after importing the data into ShipStation execute a specific function. This is for more advanced situations or for those who are more technical, want to do some very, very highly skilled features or functionalities into the platform. You have the flexibility to do so here. All you need to do is essentially create a script or select a pre-existing one. For example, [hey?], my script here. And you can immediately start to edit. And you’ll notice that in the scripts even though this one already has some stubs and some data in there, they do come pretty clean. You can introduce any data that you’d like to have or any functions you want to have. If you are still getting acquainted with how JavaScript works or you’re not quite sure what functions you can use here, we do provide you with some stubs or skeletons to get you on your way as well as some very well documented information on the comment itself. Right. And now that we’ve seen a number of the different features, now let me walk you through one final thing, which is, of course– let me just bring in this. So typically this would be something along the lines of Magento two. Order. Two. ShipStation. Order. Just to give a proper naming there. And you can in fact put any name in you like, including the versioning as well. You can also place that there. Once you are ready to execute this, you can enable the flow as you see here and execute that flow. Now I will execute it in this case so you can see what that actually looks like. And while that’s executing in the background, let’s go over here to the main section where I can walk you through the actual dashboard, among other things. So for example, when a flow is actually executing, as you can see here, you will see a dashboard. You can access this dashboard at any time and you can see all processes which have executed as well as those which are executing as you can see there. You can also see the status of those executions and in the event of errors, which is the case here, which is what we were looking for so we can demonstrate that to you, you can also drill down into the area, see the data that’s actually been executed, perform any changes to that data if you so need to, and retry. So here you can see there’s an actual error. And the reason being there is unexpected information available in the payload. So now we can fix that if we wanted to by either going into the data itself in this retry here– or in this retry data where we can actually make changes. Let’s say I wanted to change the total. And this just randomly picking this. Total to 250. Again, I could do that, of course. And then save that and perform a retrial. Now how would I perform the retrial? That would be by simply closing this, selecting this, and retrying this particular area. And what the platform will now do is go ahead and retry from that particular step onwards, the process for this specific order which failed. And if there were multiple orders then you will see all the errors in there to be able to do the same change to each of those as well. Now you might be thinking that, “Well, this dashboard looks great, but do I have to monitor this on a regular basis?” Well not necessarily. There is the notifications feature here which allows you to tell the platform when to notify you of errors. Now you’ll be able to– once the platform loads up, you’ll be able to select, in fact, which– excuse me, which flows to be notified of. So this can be one flow or every single flow that you have created within this specific tile, oops. Within this specific. Again, you saw there, that platform actually notifies you quite interactively. So you’ll be able to select exactly which flow you would like to be notified of as well as if any of these systems go offline. That you can choose both, or just one, whichever is more appropriate. What the platform will do is send you an email to the email that you’ve registered here, as you see here. They send you an email to your account specifying the error itself, details of that, as well as the link to the platform, so you can come back and have a look and see what has happened. In the event that, for example, this starts to fail because somebody has made a change into the integration itself, you can just have it here– you can see that via the audit log here. In this case, I’m the only person making changes here, so all of it is me, me, me. But you can, in fact, see here that a number of changes have been made. And this is us while we were building the float together. This is all the changes that have been made, and you can, of course, revert those changes as well. Last but not least, if there are multiple– if there’s ability to– if there is the ability, excuse me, to view multiple users on the [wooded?] log, then certainly, there’s a way to add users and remove users. And this is where you can do that. So you can share your integrations, either a single one or all of them, to any number of people within your organization, or outside. It’s up to you. You have full control. And you can give them either a manage access or monitor access. Monitor is, essentially, as the name suggests, only being able to monitor what’s going on, and all the different changes, but manage gives full access to be able to make changes to any of the integrations. And there you have it. A run-through of building a flow from scratch, executing it, and seeing how errors are handled. Because errors are inevitable. These things will happen. And so it’s good to have a clear view of how to actually manage them as well as when things are completed and you have a green light for things to follow through. One final thing I will add to that as well is that this flow is known as a scheduled flow, which means you can define the frequency at which it has to execute. Anything from every 15 minutes, all the way up to once a week. However, you can have real-time integrations as well, so long as your source system supports a mechanism for that. If you are in doubt as to whether it does support, please reach out to them or to us, directly, and we can give you that information. Right now is a good opportunity to go back into the presentation here. And I shall put this into full-screen mode. And just as a recap, this is what we’ve seen today, we’ve built a flow taking orders from Magento and pushing those over to ShipStation. However, this is merely an example. There are many, many use cases, so feel free to reach out to us with your particular ones. We’re more than happy to– more than happy to help you with them. Now, from here, how do you actually get started? Where do you go from here? Well, as Christie was saying in the beginning, I’m going to explain to you how you actually do that. And this is how it gets done. You actually can subscribe to a free edition of our platform straight on the website itself. You can go ahead and build your first flow if this is the first time, or your, yet, second, third, or one-hundredth flow if this is not your first time. We do encourage you to go on to the university. As I said before, it is great for beginners or for those being initiated on our platform. It does have the learning as I mentioned before. And once you’ve done that, and you would like to explore the full potential of the platform, you can sign up straight in the platform for a 30-day trial. Now this really unlocks the power, as it says there, of the platform, gives you access to everything including the fact that you can have any number of flows active at any given time. And that’s the main difference between the free edition and the trial. The free edition you can build as many flows as you’d like but only one can be active at any point in time. 30-day trial for 30 days: you can have any number of flows active. So essentially you could connect several of your business applications together in any use cases that you might have. And now I think it’s a good time to move over to the Q&A session here. So Krristie, I’ll open up the panel. Do we have any questions? Yes. Thanks, Adel. Thanks for all that great information. I will start with the first question. Can you create scripts in Celigo and have them uploaded to NetSuite like I am currently doing with my company through Eclipse? Ah. That is a good question. So you can have scripts executed on the platform as I showed before for JavaScript, and you can also for the case of NetSuite because we are very, very tightly coupled with NetSuite, you can actually have NetSuite script, so SuiteScripts as they’re called, executed from our platform. So you can select those on our platform and choose which one to execute and when. Similar to what you saw from the JavaScript, you can do the same thing for NetSuite scripts as well. Great. Thank you. So another question that came in is- is Celigo integrator IO GDPR compliant? That is a very interesting question. For all things security I do encourage you to go to the website and see a full list of details that we have there. But yes, in essence we are compliant with GDPR. At the end of the day, if we’re processing data we need to ensure that it is in safe hands so that you can rest assured and run your business. Great. I have another question. Is there a way to build my own connector to a new system? Ah. That’s an interesting one. In short, that would have to be done by us. So if you do have a specific system that you would like to have a connector for, please reach out to us, and we can let you know whether that is on our roadmap and if so, when that would be. And the reason for this is because our SDK, our software development kit in the background, is of course proprietary and locked down, so we cannot be providing it access to anyone to start building. Only certified partners and obviously our own in-house engineers can actually do so. Great. Can we use webhooks on your platform? Actually that’s a very good question. Yes, you can indeed use webhooks on the platform. So as I mentioned before, for real time integrations so long as your source system, source application, allows you to have a mechanism to provide for real time such as webhooks for example, then you can have real time integrations and webhooks is a very good example. More and more applications are providing a means to do so. You define a webhook on a Celigo platform, you set the configuration of said webhook on the source system and there you have it. You have instantly created a real time connection between the two systems. Great. I have a question here. Do I need technical staff to maintain the integrations? That, in short, the answer is no you do not. And so once you are familiar with the platform, as you’ve seen there how quick it actually is to get things up and running, you do not need technical people to maintain it, especially because Celigo’s platform is meant to be a set and forget which means you do not have to come into this platform unless there’s any errors as you saw before, and you would receive emails. We do encourage people to be familiarized with the platform of course, to be self-sufficient, but you do not need any technical people to maintain things for you. Great. Thank you, Adel. What do you offer for version control and test environments? Ah. That is an interesting one. That is an interesting one. So for test environments, we do offer a sandbox, and we do in fact encourage people to have that. We do understand that production environments are sacred in many ways. We do understand that because our own are very sacred as well. And integrations really are the plumbing, the pipelines, between all these different applications. In fact, they are the lifeline of many businesses. So we do offer a sandbox for that so you can connect your sandbox instances of your different applications. In terms of versioning, one of the things that many of our customers are actually doing is naming things, is providing the versioning on the names of the integrations as well as exporting the integrations and there is a feature to do that on the platform. Encourage you to try that, and you can export it as a zip file, store that in Git, for example, and do your own versioning control through there, and then import again through our platform the integration itself into your production system or your sandbox system. Inclusively you also have the means of cloning integrations on the platform to go straight from sandbox into production without having to export anything. I actually will add to that that some customers are inclusively using their own software development life cycles to incorporate deployments into our platform as well. Great. Thank you, Adel. So I’m going to just take two more questions so that we can wrap up. My next question is do you have any predefined template which does end to end integration instead of mapping manually? Yes. Those would be the integration apps which I explained before. Yup. Okay. Great. Thank you, Adel. Last question for today, and if we didn’t get to your question we will reach out to you individually. Are there any limitations for processing of order volumes? No, there are no limitations. All limitations are always on the end systems themselves. This is something to be very, very aware of. If you’re integrating from an e-commerce store to a logistics, for example, or to an ERP or vice versa, or any other use case, please be aware of what limitations those end systems have. From our perspective in terms of integrations in the Celigo platform there are no limits to what you can actually integrate. As long as you have the allowance on your license, on your actual account, you are good to go. Great. Thank you, Adel, for answering all those questions. Thank you to everybody who has attended this session. And Adel is there anything that you would like to wrap up with? No. I think that is it. The rest of the– the only thing I will say is for everyone to have a good day including you of course, Kristie. Great. Well, thank you all. Have a great afternoon or morning, and we will talk to you soon. Thank you. Bye bye. Bye bye.

About the speakers