Skip to content

Example fulfillment service app to demonstrate fulfillment flow concepts using the fulfillment Admin APIs.

Notifications You must be signed in to change notification settings

29next/demo-fulfillment-service-app

Repository files navigation

Fulfillment Service App Demo

This app demonstrates the core concepts of a Fulfillment Service App that processes order fulfillments for a store using the Fulfillment Admin APIs.

Features

Screenshots

image image
image image

How to Setup

Create App In Partner Account

The first step is to create an App in your 29 Next Partner Account. You'll need your app Client ID and Client Secret later on in the setup process.

You need your App Client ID and Client Secret for the Oauth install flow.

Take note of your App Client ID and Client Secret, you'll need it when configuring your app.

Install Docker & Docker Compose

The demo app uses Docker and Docker Compose to setup a full development environment with Django, Postgres, Celery, and RabbitMQ.

Option 1 - Install Docker Desktop
Option 2 - Manual Install

Setup Public Tunnel

To access your localhost for app development, you can use Ngrok or LocalTunnel to create and open a public tunnel to your local machine.

Your tunnel should expose port 3000, take note of your public domain for the next setup.

Update your App Oauth Settings

Update your App Oauth Redirect URLs to match your local tunnel domain.

https://<YOUR LOCAL TUNNEL DOMAIN>/stores/auth/setup/

Configure Your Application

To run the app, we need to configure it to use your local tunnel domain and Oauth credentials.

source setup.sh

This script will configure environment variables in app.env file.

Run Application

To run the application on your local, use the following command.

In a new terminal

docker compose up

You should now be able to access the app on your tunnel domain and localy at localhost:3000.

Migrate Database & Create Super User

With your application now running, you need to migrate the database and create a super user.

In a new terminal, shell into your running django container

docker compose exec app bash

Once inside the container, run this command to migrate the database and create a superuser.

python manage.py migrate && python manage.py createsuperuser

The full Django admin is available at http://localhost:3000/admin/

Install on Development Store

You can now connect your app to your development store which will initiate the Oauth setup flow and configure Admin API access. 🎉

About

Example fulfillment service app to demonstrate fulfillment flow concepts using the fulfillment Admin APIs.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published