Yotpo
Yotpo is a cloud-based content marketing platform for e-commerce businesses that enables users to collect user-generated content and accelerate direct-to-consumer growth.
Data integration: Skyvia supports importing data to and from Yotpo, exporting Yotpo data to CSV files, replicating Yotpo data to relational databases and synchronizing Yotpo data with other cloud apps and relational databases.
Backup: Skyvia Backup does not support Yotpo backup.
Query: Skyvia Query supports Yotpo.
Establishing Connection
To create a connection with Yotpo, you need to use App key and Secret Key. To work with Yotpo Loyalty objects, specify the Api Key and Guid also.
Getting Credentials
App Key and Secret key
To get your authentication credentials:
- Login to your Yotpo account.
- Click on the user icon and choose Settings.
-
Look for API Credentials sections.
- Copy App Key from the corresponding field.
-
Click Get Secret Key. A confirmation code will be sent to your email. Enter the code in the box appeared and click Submit to get the Secret Key.
Loyalty API Credentials
If you use Yotpo Loyalty, obtain the Api Key and Guid:
- Login to your Yotpo Loyalty account.
- Click Settings -> General Settings.
-
Copy the API Key and GUID values from the corresponding boxes.
Creating Connection
To create a connection to Yotpo, enter your App Key and Secret Key.
If you want to work with Yotpo Loyalty objects, also specify the Api Key and Guid. If you don’t use Yotpo Loyalty, you can omit these parameters.
Additional Connection Parameters
Suppress Extended Requests
Suppress Extended Requests parameter disables the use of additional requests for getting ProductsApps values from the Reviews object.
Connector Specifics
Object Peculiarities
Customers
This object supports only Insert operation in Import. The ExternalId field is required. If you set an ExternalId value during the mapping setup and that record does not exist in Customers object, a new record will be added. If you set a value that already exists, it will be updated.
Reviews
When you load data into the Reviews object, you cannot get ids of the resulting records. Records will not be displayed in the Log or in the Returning feature.
It takes approx. 2-3 minutes for the updated data to appear in the Reviews object after the successful Insert execution.
LoyaltyRecentCustomers
This object displays a list of customers, who were updated for the last 7 days, and customer data registered in the Yotpo Loyalty database, when querying.
DML Operations Support
Skyvia supports the following DML operations for Yotpo objects:
Operations | Objects |
---|---|
INSERT, UPDATE | Collections, Orders, Products, ProductVariants |
INSERT, DELETE | OrderFulfillments |
INSERT | Customers, Reviews, Unsubscribers |
Incremental Replication and Synchronization
Skyvia supports Incremental Replication for the following objects: Collections, CollectionProducts, LoyaltyCampaigns, Orders, OrderFulfillments, Products, ProductVariants, QuestionAnswers, Questions, Reviews, TopThree5StarReviews.
Skyvia tracks only the new records for the QuestionAnswers, Questions and TopThree5StarReviews objects.
Skyvia supports Synchronization for the Collections, Orders, Products, and ProductVariants objects.
These objects only support Insert and Update operations. Thus, only inserted and updated records will be affected. Running Synchronization which needs to delete the records from the objects will cause the error “Table does not support DELETE statement” in the log.
Stored Procedures
Skyvia represents part of the supported Yotpo features as stored procedures. You can call a stored procedure, for example, as a text of the command in the ExecuteCommand action in a Target component of a Data Flow or in Query.
AddProductToCollection and RemoveProductFromCollection
Use the following procedures to add or delete records from the CollectionProducts object:
call AddProductToCollection(:yotpoCollectionId, :externalProductId)
call RemoveProductFromCollection(:yotpoCollectionId, :externalProductId)
CreateCustomerRecord
Use the following command to create a customer Loyalty record.
call CreateCustomerRecord(:email, :first_name, :last_name, :phone_number, :has_account, :opted_in, :pos_account_id, :tags,:opted_in_at)
PARAMETER NAME | DESCRIPTION |
---|---|
The customer’s email address. | |
First_name | The customer’s first name. |
Last_name | The customer’s last name. |
Phone_number | The customer’s phone number in the +XXXXXXXXX format. |
Has_account | Whether the customer has an account with the platform. |
Opted_in | Whether the customer should be opted in to loyalty program. If null, will rely on the account settings of opt in. |
Pos_account_id | The Point of Sale unique account identifier. |
Tags | A comma separated list of tags (or collections) this customer belongs to. Note: This will overwrite existing tags |
Opted_in_at | Date and time when the customer was opted in to the loyalty program. |
For example,
call CreateCustomerRecord ('georg.born@gmail.com', 'Georg', 'Born', '+380501234567', true, true,'','Tag1','2023-10-30')
UpdateCustomerBirthdays
Use the following command to update the customer’s date of birth.
call UpdateCustomerBirthdays(:customer_email,:day,:month,:year)
UpdateCustomerAnniversary
Use the following command, to update the customer’s anniversary.
call UpdateCustomerAnniversary(:customer_email,:day,:month,:year)
RemoveCustomerAnniversary
The following command removes the existing anniversary value for the specific customer.
call RemoveCustomerAnniversary(:customer_email)
Supported Actions
Skyvia supports all the common actions for Yotpo.