woocommerce
Woocommerce SDK for Flutter.
Getting Started
Add the package to your pubspec.yaml and import.
import 'package:flutter_wp_woocommerce/woocommerce.dart';
Create an instance of WooCommerce for your project.
Example:
WooCommerce woocommerce = WooCommerce(
baseUrl: yourBaseUrl,
consumerKey: yourConsumerKey,
consumerSecret: consumerSecret);
Parameter, baseUrl
is the base url of your site. For example, http://me.com, https://me.com or http://my.me.com
Parameter consumerKey
is the consumer key provided by WooCommerce, e.g. ck_12abc34n56j
.
Parameter consumerSecret
is the consumer secret provided by WooCommerce, e.g. cs_1uab8h3s3op
.
Optional Parameter apiPath
is the direct url from your baseUrl to your Woo commerce endpoint.
An example : "/wp-json/wc/v3/"
This is useful if only you changed your default Wordpress Woocommerce path, otherwise default applies.
Optional Parameter isDebug
, tells the library if it should print to debug logs.
/// Useful if you are debuging or in development.
The goal of Woo Commerce SDK is to make building amazing Ecommerce apps with flutter and Woo Commerce as easy as can be, hope it improves your workflow.
Features.
- User Authentication.
- Customer Management
- Cart Management.
- Order Management.
- Products management.
- Categories.
- Tags.
- Variations.
- Ability to filter on methods that returns a list.
- Supports custom endpoints.
- Shipping, Shipping methods, Shipping Locations.
- Payment.
- Tax, TaxClasses.
- Etc and more.
Notes.
Install Jwt Token Plugin, to be able to log in,
Examples
Put your credentials into the example app for a quick demo.
.
Auth
//Login - Returns the access token on success.
final token = woocommerce.authenticateViaJWT(username: username, password: password);
// Login - Signs a user in and returns the logged in user's (WooUser object) details.
final customer = woocommerce.loginCustomer(username: username, password: password);
// Check if a user is Logged In.
bool isLoggedIn = await woocommerce.isCustomerLoggedIn();
// Fetch Logged in user Id
int id = await fetchLoggedInUserId();
// Log User Out.
await logUserOut();
// Creates a new Woocommerce customer and returns the WooCustomer object.
WooCustomer user = WooCustomer(username: username, password: password, email: email);
final result = woocommerce.createCustomer();
Products see SDK reference for filter options.
// Get All Products - Returns list of product object, default is 10 per page.
final myProducts = await woocommerce.getProducts();
//Get All Featured Products - Returns a list of featured products, see Api reference for more filter options.
final myFeaturedProducts = await woocommerce.getProducts(featured: true);
// Get All Products marked with category id '22'.
final mySpecificProduct = await getProducts(category: '22');
Cart!
// Add To Cart! - Returns the added cart item object(Accepts quantity, product id, and list of variations(id) of the product to be added)
final myCart = await woocommerce.addToMyCart(quantity: 2, id: 17);
// Create an Order. - Returns the created order object (Accepts an orderPayload object).
OrderPayload orderPayload = OrderPayload(customerId: customerId, setPaid=true);
final order = await woocommerce.CreateOrder(orderPayload);
Custom Requests - Make your custom authenticated requests to the Woocommerce api.
final response = await woocommerce.put(endpoint, data);
final anotherResponse = await woocommerce.get(endpoint);
Updates
x
Add documentation.x
Add Token Persistence.
WooCommerce SDK Documentation Reference
WooCommerce SDK Docs
(https://pub.dev/documentation/woocommerce/latest/)
WooCommerce Api Documentation Reference
WooCommerce Docs
(https://woocommerce.github.io/woocommerce-rest-api-docs/)
Issues and FeedBack
If you find this useful :blue_heart:, feel free to click :star: You can create a Github issue anytime. Pull requests on both code and documentation are welcomed as well pls :heart_eyes:. You can also send a mail to ray@flutterengineer.com.
For help getting started with Flutter, view the online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.
Libraries
- constants/constants
- generated/i18n
- models/cart
- models/cart_item
- models/coupon
- models/customer
- models/customer_download
- models/jwt_response
- models/order
- models/order_payload
- models/payment_gateway
- models/product_attribute_term
- models/product_attributes
- models/product_category
- models/product_review
- models/product_shipping_class
- models/product_tag
- models/product_variation
- models/products
- models/shipping_method
- models/shipping_zone
- models/shipping_zone_location
- models/shipping_zone_method
- models/tax_classes
- models/tax_rate
- models/user
- utilities/local_db
- woocommerce
- The WooCommerce SDK for Flutter. Bringing your ecommerce app to life easily with Flutter and Woo Commerce.
- woocommerce_error