Step 4 of 7

Step 4: Receive Deposit Payment & Contract Activation

After buyer pays 30% deposit, contract becomes ACTIVE. Supplier immediately sees status change in dashboard. Pool wallet finances 100% to supplier (30% from deposit + 70% financed).

📍 Page Location

URL: /dashboard/authenticated

📸 Visual Representation of the Page

Step 4: Receive Deposit Payment & Contract Activation
SUPPLIER🔔 Notifications

My Contracts

Contract IDProductValueStatusActions
contract-001Wheat$2,627,500PENDING SUPPLIER CONFIRMATION

🎨 Detailed Visual Description

Contract status automatically changes to "ACTIVE" with "Deposit Paid" indicator in green. "Upload Shipping Docs" button appears. Contract shows: "Deposit Received: 30%" and "Payment Status: 100% Financed to Supplier". Supplier dashboard updates in real-time showing active status.

Key Visual Elements:

  • Active status display
  • Deposit confirmation (30%)
  • Upload documents button
  • Real-time status update
  • Payment status: 100% received

⚙️ Backend Process

API Endpoint: POST /api/contracts/:contractId/deposit (buyer action)

Process Flow:
1. Buyer pays 30% deposit
2. Deposit goes to pool wallet (escrow)
3. Pool wallet immediately finances 100% to supplier
4. Supplier receives: 30% (from deposit) + 70% (financed) = 100% total
5. Contract.depositPaid = true
6. Contract.status = "active"
7. Contract.depositPaidAt = timestamp
8. Sends notification to supplier: "Deposit received, contract is active"
9. Transaction recorded in database.transactions
10. Logs audit event: deposit_paid

Database Operations:

  • Table: database.contracts (update), database.wallets (pool deposit, supplier credit), database.transactions (create)
  • Action: Update contract to active, transfer 100% to supplier, create transaction records

➡️ Next Action

Contract is ACTIVE. Supplier has received 100% payment. Supplier can now prepare shipment and upload documents when delivery period arrives.