ShipKit.one

Purchase & Delivery Flow

End-to-end steps to deliver ShipKit after purchase.

Purchase & Delivery Flow

Overview

This flow explains how a buyer purchases ShipKit and how you deliver access to the private GitHub repository with a license.

Buyer journey

  1. Choose a plan and complete checkout.
  2. Payment is captured and the order is marked paid.
  3. A license is generated and stored with the order.
  4. The buyer receives a GitHub invite (or invite link) to access the repo.

Operator setup

  1. Create a private repo that contains the ShipKit source code.
  2. Create a purchase link for your checkout (pricing page or direct link).
  3. Generate a license on successful payment and associate it with the order and buyer email.
  4. Send repository access using GitHub invites.

GitHub requirements

  • A GitHub personal access token with repo access.
    • Classic token: repo scope.
    • Fine-grained token: Repository permissions with Administration: Read & Write.
  • Repository owner and name (org/user + repo).
  • Optional: a team ID if you want to add org members to a team.

Delivery configuration

Set the GitHub delivery env vars:

GITHUB_DELIVERY_TOKEN=ghp_xxx
GITHUB_DELIVERY_OWNER=your-org
GITHUB_DELIVERY_REPO=shipkit-private
GITHUB_DELIVERY_TEAM_ID=123456  # optional

Delivery methods

  • Use the buyer email on the order to send a GitHub invite automatically after payment.
  • Optionally collect a GitHub username during checkout to improve match accuracy.
  • Email the buyer with the invite link and onboarding steps.

Option B: Manual invite

  • If the buyer does not receive the invite, allow a manual resend from the billing page.
  • As a fallback, invite the buyer manually from the repo settings.

License handling

  • Generate a unique license key per paid order.
  • Store license status: active, revoked, refunded.
  • On refund, revoke repo access and mark the license as revoked.

Failure handling

  • If the GitHub invite fails, ask the buyer to create an account and retry.
  • If email delivery fails, show a "resend invite" action in the admin.
  • If the buyer cannot access the repo, verify invite status and resend.

Verification checklist

  • Payment captured
  • License generated and stored
  • Repo invite sent successfully
  • Buyer accepted invite and can access the repo

On this page