Skip to main content

Upgrade Module

Run a trade-in program with device evaluation, offer management, and processing workflow.

Base URL: https://app.proign.com/[tenant]/upgrade/api

Overview

The Upgrade module manages trade-in programs:

  • Customer trade-in submissions
  • Photo documentation
  • Offer generation and acceptance
  • Shipping kit fulfillment
  • Inspection and final valuation
  • Customer profiles and accounts

Key Features

Condition Assessment

Structured device evaluation:

  • Photo Documentation - Multi-angle photos of trade-in items
  • Condition Grading - Standardized grading scale
  • Quote Generation - Automatic offers based on condition
  • Credit Issuance - Store credit or refund processing

Trade-in Process

  1. Submit - Customer provides device details and photos
  2. Offer - Admin creates offer based on condition
  3. Accept - Customer accepts or declines the offer
  4. Ship - Shipping kit sent to customer
  5. Receive - Device arrives at facility
  6. Inspect - Technician evaluates condition
  7. Complete - Final offer confirmed, credit issued

API Endpoints

Authentication

POST   /api/[tenant]/auth/register          # Customer registration
POST   /api/[tenant]/auth/login             # Customer login
POST   /api/[tenant]/auth/logout            # Logout
GET    /api/[tenant]/auth/me                # Get current user

Submissions

GET    /api/[tenant]/submissions            # List submissions
POST   /api/[tenant]/submissions            # Create submission
GET    /api/[tenant]/submissions/[id]       # Get submission details
PUT    /api/[tenant]/submissions/[id]       # Update submission
POST   /api/[tenant]/submissions/[id]       # Submit for review

Submission Actions

POST   /api/[tenant]/submissions/[id]/inspect   # Start/complete inspection
POST   /api/[tenant]/submissions/[id]/receive   # Mark as received
POST   /api/[tenant]/submissions/[id]/ship      # Ship kit or return label

Offers

POST   /api/[tenant]/offers                 # Create offer (admin)
POST   /api/[tenant]/offers/[id]            # Accept/decline offer (customer)

Photos

POST   /api/[tenant]/photos                 # Upload photo
GET    /api/[tenant]/photos/[id]            # Get photo

Profile

GET    /api/[tenant]/profile                # Get customer profile
PUT    /api/[tenant]/profile                # Update profile

Admin Endpoints

# Valuations (Trade-in Values)
GET    /api/[tenant]/admin/valuations       # List valuations
POST   /api/[tenant]/admin/valuations       # Create valuation
GET    /api/[tenant]/admin/valuations/[id]  # Get valuation
PUT    /api/[tenant]/admin/valuations/[id]  # Update valuation
DELETE /api/[tenant]/admin/valuations/[id]  # Delete valuation

# Customers & Stats
GET    /api/[tenant]/admin/customers        # List all customers
GET    /api/[tenant]/admin/stats            # Dashboard statistics

Request Examples

Create Submission

POST /api/[tenant]/submissions
Content-Type: application/json

{
  "product_id": "prod_123",
  "serial_number": "SN-12345678",
  "condition": "good",
  "description": "Minor scratches on grip",
  "photos": ["photo_abc", "photo_def"]
}

Create Offer

POST /api/[tenant]/offers
Content-Type: application/json

{
  "submission_id": "sub_123",
  "amount": 350.00,
  "notes": "Based on good condition assessment",
  "expires_at": "2024-02-01T00:00:00Z"
}

Submission Status Flow

Each trade-in moves through these statuses:

StatusDescriptionActor
draftCustomer started but hasn't submittedCustomer
submittedUnder admin review, pending offerCustomer
offeredOffer sent, waiting for acceptanceAdmin
acceptedCustomer accepted, shipping kit sentCustomer
shippedItem in transit to facilitySystem
receivedItem arrived, awaiting inspectionAdmin
inspectedInspection complete, final valuation confirmedAdmin
completedCredit issued, process finishedSystem
declinedCustomer declined offer or item rejectedCustomer/Admin

Device Evaluation

Condition-based pricing:

ConditionValue Modifier
Excellent100% of base value
Good80% of base value
Fair60% of base value
Poor40% of base value

Configuration

  • Valuations - Set base values per product in admin
  • Condition Modifiers - Percentage adjustments by condition
  • Photo Requirements - Required angles and documentation
  • Shipping Integration - Configure shipping kit fulfillment

Related