Skip to main content

Zapier tutorial: Auto-close listings when an offer is accepted

How to automatically close a listing once a provider's offer has been accepted

Vesa Vahermaa avatar
Written by Vesa Vahermaa
Updated today

Welcome to a practical Zapier tutorial! In this guide, we'll learn how to auto-close listings when an offer has been accepted. This is particularly useful for reverse marketplaces that use the reverse price negotiation listing type, where customers seeking services create listings.

Auto-closing of listings can be a very useful function. For example in a reverse marketplace, a customer can be looking for services to, say, build a website. They create a listing for finding a website creator. Multiple creators submit their offer to the listing, and the customer selects one of them and pays them. At this point, it is no longer useful for other creators to submit offers, as the customer has already accepted one. Thus, the listing can be closed.

About Zapier

Zapier is a powerful and versatile tool for integrating different tools into your marketplace. You can learn more about Zapier in our introductory article or through this brief video from Zapier.

If you haven’t read the introduction and the action/event Zapier articles, we encourage you to do so to better understand how Zapier works. But if you want to dive straight into action, feel free to read on!

What you need for this tutorial

External accounts

  1. Zapier Account

    • Create a Zapier account if you don’t already have one. You can sign up at www.zapier.com.

    • During registration, Zapier may ask which apps you plan to use. You can enter Sharetribe at this point or add it later.

How to set up your marketplace

Your marketplace must be configured in a certain way to support this Zap. Here is how you should set things up:

  1. A recent transaction that is in the right state

    • What this means is that you need to do a test transaction and move it forward to the right state. This can be done as follows:

      1. Create a test listing with the reverse price negotiation listing type

      2. Create a second test account, and submit an offer for that listing

      3. Go back to the first account, and accept and pay for the offer

      4. Done!

Getting your Integration API key from Console

You'll need Integration API keys to connect your Sharetribe marketplace to Zapier.

  1. Click on "+ Add a new application".

  2. Give the application a descriptive name (like Zapier), and select "Integration API".

  3. Click "Add application".

  4. Important: Copy and paste the Client ID and Client secret to a safe place, like a password manager.

IMPORTANT: Think of the Client ID and Secret as a sort of a password to your marketplace that can be used to access your marketplace data through other services. Note that you won’t be able to ever see the Client secret to this application again in the Console under any circumstances. Make sure you copy it to a secure place. If you lose it, you will need to create a new application.

Creating the Zap, step by step

(Optional) Importing the Zap template

  1. Go to www.zapier.com and log in with your account (or create a free one if you don't already have one).

  2. Open the pre-made Zap for auto-closing listings here.

  3. Click on "Try this Zap."

Step 1: Find a transaction transition

[Insert brief description, if applicable]

  1. Connect your Sharetribe account by entering your Client ID and Client secret

  2. Choose 'Transaction Events' as the trigger event

  3. Go to the 'Configure' section and choose 'Transaction transitioned' as the Event type

  4. Test your trigger. Make sure it finds your test transaction transition as the latest one.

Step 2: Filter the transition

We want to filter the transaction transitions. A transition is created every time a transaction progresses on your marketplace, and without this step, listings would be closed for every transition.

  1. Select the 'Filter by Zapier' as the app for this action

  2. Create the first filter under 'Only continue if'. Make it as follows:

    1. [Choose this from the dropdown list on the left!] 1. Transaction process name

    2. (Text) Exactly matches

    3. default-negotiation (assuming you are creating this zap for the price negotiation listing flow)

  3. Click '+And' to add a new filter condition. Make it as follows:

    1. [Choose this from the dropdown list on the left!] 1. Transaction Last Transition

    2. (Text) Exactly matches

    3. transition/confirm-payment

  4. Done! Test the filter action and make sure it says 'Your Zap would have continued for this test data'.

Step 3: Close the listing

Now we close the listing associated with the transaction.

  1. Create a new event with the Sharetribe app

  2. In the 'Setup' section, choose 'Close Listing' as the Action event

  3. In the 'Configure' section, select the Listing ID from the first step. So click on the Listing ID field, and look to the left, and choose '1. Transaction Listing ID' from the menu. Again, just like above, don't write this in the field as text: choose it from the dropdown list.

  4. Continue and test the action. If everything went okay, the listing should now be closed on your marketplace.

Final thoughts

Thanks for reading this tutorial about creating a Zap for auto-closing listings after an offer is accepted!

Please get in touch with us from your Console or from the bottom right section of this page from the chat widget if you have any questions about this guide, or anything else. We'll be happy to help!

Did this answer your question?