Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Shopify: Destination Connector #389

Open
Mohith93 opened this issue Sep 30, 2024 · 1 comment
Open

Shopify: Destination Connector #389

Mohith93 opened this issue Sep 30, 2024 · 1 comment

Comments

@Mohith93
Copy link

Issue Type:
New Feature / Connector Request

Description

We need to build a Shopify Destination Connector that allows users to send data from Multiwoven to their Shopify stores. This connector will help users automatically sync data such as product information, customer details, orders, and inventory levels into Shopify, making it easier to manage e-commerce operations efficiently.

Requirements

Authentication:
The connector should support OAuth 2.0 authentication to interact securely with Shopify's API. The user will need to generate an API key and secret from their Shopify admin panel.

Configuration:
The connector should require the following configuration parameters:
shop_name: The Shopify store name.
api_key: The API key generated in Shopify.
api_secret: The API secret key.
access_token: The access token generated via OAuth 2.0.
Optional: Scopes to specify which data can be accessed (e.g., write_products, write_orders).

Connector Features:
The destination connector should be able to:

Send or update the following records in Shopify:
Products
Customers
Orders
Inventory

Provide users with the ability to map their data fields from Multiwoven to the corresponding Shopify fields.
Track and log success or failure of the data sync.

API Interaction:
The connector should use the Shopify Admin API to send and update data. API documentation can be found here:
Shopify Admin API Documentation

Data Format:
The data sent to Shopify must adhere to the structure required for each resource (e.g., products, orders, customers). The connector should ensure that users can map fields appropriately between Multiwoven and Shopify.

Error Handling:
The connector should handle errors gracefully, including:
Invalid API credentials.
Schema validation errors.
API rate limit issues.

Steps to Implement

Authentication Setup:
Implement OAuth 2.0 authentication for the Shopify API to enable secure access.
Request the necessary scopes (e.g., write_products, write_orders, write_customers, write_inventory).

Connector Configuration:
Create a configuration file that accepts the necessary API credentials (shop_name, api_key, api_secret, access_token).

API Integration:

Implement the logic to send data to Shopify using the Admin API. Support the creation and updating of the following Shopify resources:
Products: Sync product listings, descriptions, and pricing.
Customers: Sync customer information like emails and shipping addresses.
Orders: Sync order details including transactions and order statuses.
Inventory: Sync inventory levels for products.

Field Mapping:
Allow users to map Multiwoven data fields to Shopify fields dynamically, ensuring flexibility in the way data is transferred.

Error Handling & Logging:
Implement error handling for invalid data, authentication failures, and API rate limits.
Provide meaningful error messages and logs for troubleshooting.

Testing:
Write unit tests and integration tests to verify the connector’s functionality.
Use mocks to simulate API responses for different Shopify resources.

Documentation:
Create a document that details how to configure and use the connector.
Include example configurations and data field mappings for different Shopify resources.

Acceptance Criteria
The connector successfully creates and updates data in Shopify for products, customers, orders, and inventory.
Comprehensive error handling is implemented, and clear logs are available for debugging.
Unit and integration tests provide coverage for all key scenarios.
The connector is accompanied by clear and comprehensive documentation.

Resources
Shopify Admin API Documentation
Shopify OAuth Authentication
Shopify API Rate Limits

Copy link

linear bot commented Sep 30, 2024

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant