7feastr
Get Rate & ETAAPITrack ShipmentContactBlog
LoginRegister
Documentation/Logistics API
Wallet & disputesMenu
Overview

Get started

Getting startedAuthenticationSandbox and production

Plan your integration

Coverage & delivery timesPricing

API reference

Quotes & shipmentsTrackingWallet & disputes

Integrate

WebhooksErrors & rate limits

Resources

Changelog
K
Overview

Get started

Getting startedAuthenticationSandbox and production

Plan your integration

Coverage & delivery timesPricing

API reference

Quotes & shipmentsTrackingWallet & disputes

Integrate

WebhooksErrors & rate limits

Resources

Changelog
7feastr

Nigeria's food delivery and logistics infrastructure. Order from your favourite local restaurants, or ship anywhere in the country with 7feastr Logistics.

support@7feastr.com
+234 905 606 2230
Lagos, Nigeria

Company

  • About Us
  • Blog

Services

  • Nearby Restaurants
  • Logistics
  • Track Shipment
  • API Documentation

Food in Kaduna

  • Food Delivery in Kaduna
  • Shawarma
  • Jollof Rice
  • Chicken
  • Suya & Grills
  • Pizza
  • Swallow & Soup

Partners

  • Become an Agent
  • Become an Ambassador

Support

  • FAQ
  • Contact
  • System status
  • Privacy Policy
  • Terms of Service
  • Monetary Policy
  • Refund Policy

© 2026 7feastr Technologies Ltd. All rights reserved.

API reference

Wallet & disputes

Read your wallet balance and ledger, and open and follow disputes on shipments.

Last updated 21 October 2026

Shipments are prepaid from your 7feastr wallet. Each environment has its own wallet: sandbox starts with ₦500,000 of test credit, and production is funded by card or bank transfer from the merchant dashboard. Funding is a dashboard action and is not part of the API.

Get your wallet balance

GET/wallet

Auth: API key. Returns the balance of the wallet for the key's environment.

cURL
curl "https://api.7feastr.com/api/v1/logistics/v1/wallet" \
  -H "Authorization: Bearer $SEVENFEASTR_API_KEY"

200 OK

JSON
{
  "success": true,
  "message": "OK",
  "sandbox": true,
  "data": { "balance": 491507.5, "currency": "NGN", "environment": "sandbox" }
}
FieldTypeDescription
balancenumberAvailable balance in NGN
currencystringAlways NGN
environmentstringsandbox or production

Errors: 401 authentication_error.

List wallet transactions

GET/wallet/transactions

Auth: API key. Returns the wallet ledger, newest first.

Query parameterTypeRequiredDescription
pageintegerNoPage number, from 1. Default 1
limitintegerNoResults per page, 1 to 100. Default 20
cURL
curl "https://api.7feastr.com/api/v1/logistics/v1/wallet/transactions?page=1&limit=20" \
  -H "Authorization: Bearer $SEVENFEASTR_API_KEY"

200 OK

JSON
{
  "success": true,
  "message": "OK",
  "sandbox": true,
  "data": [
    {
      "_id": "6716a3f3c9e77b0012a4d5f0",
      "type": "shipment_debit",
      "amount": 8492.5,
      "balanceAfter": 491507.5,
      "reference": "shipment_debit_6716a3f2c9e77b0012a4d5e1",
      "shipmentId": "6716a3f2c9e77b0012a4d5e1",
      "description": "Charge for shipment 7F-20261021-4F91A2C8",
      "environment": "sandbox",
      "createdAt": "2026-10-21T09:32:10.000Z"
    }
  ],
  "meta": { "page": 1, "limit": 20, "total": 1, "totalPages": 1 }
}
FieldTypeDescription
typestringfunding, shipment_debit, refund or adjustment
amountnumberAmount in NGN
balanceAfternumberWallet balance after this transaction
referencestringUnique reference for the transaction
shipmentIdstringThe related shipment, for debits and refunds
descriptionstringA readable summary

Errors: 401 authentication_error.

Refunds

When you cancel a shipment before a rider is assigned, the full price is returned to the same wallet automatically as a refund transaction, and the shipment.refunded webhook is sent. See Cancel a shipment.

Low balance alerts

When a shipment charge takes your balance to or below the low-balance threshold set in your dashboard, we send the wallet.low_balance webhook so you can top up before shipments start failing with 402 insufficient_funds.

Disputes

If a shipment is damaged, lost or badly delayed, open a dispute against it. Our support team reviews it and replies in the dispute's message thread.

Open a dispute

POST/disputes

Auth: API key. Returns 201 Created.

FieldTypeRequiredDescription
shipmentIdstringYesThe shipment _id
reasonstringYesWhat went wrong, in your own words
cURL
curl -X POST "https://api.7feastr.com/api/v1/logistics/v1/disputes" \
  -H "Authorization: Bearer $SEVENFEASTR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "shipmentId": "6716a3f2c9e77b0012a4d5e1",
    "reason": "Package arrived damaged and the recipient refused it."
  }'

201 Created

JSON
{
  "success": true,
  "message": "OK",
  "sandbox": true,
  "data": {
    "_id": "6717f0a1b2c3d4e5f6a7b8c9",
    "shipmentId": "6716a3f2c9e77b0012a4d5e1",
    "environment": "sandbox",
    "reason": "Package arrived damaged and the recipient refused it.",
    "status": "open",
    "messages": [
      {
        "senderType": "merchant",
        "message": "Package arrived damaged and the recipient refused it.",
        "at": "2026-10-22T11:04:51.000Z"
      }
    ],
    "createdAt": "2026-10-22T11:04:51.000Z",
    "updatedAt": "2026-10-22T11:04:51.000Z"
  }
}
HTTPerror.codeWhen
400invalid_requestshipmentId or reason is missing, or a dispute is already open on this shipment
404not_foundUnknown shipment
401authentication_errorMissing, invalid or revoked API key

Only one open dispute is allowed per shipment at a time.

List and view disputes

GET/disputes
GET/disputes/:id

Auth: API key. GET /disputes accepts page and limit (1 to 100, default 20) and returns your disputes newest first, with meta: { page, limit, total }. GET /disputes/:id returns one dispute.

cURL
curl "https://api.7feastr.com/api/v1/logistics/v1/disputes/6717f0a1b2c3d4e5f6a7b8c9" \
  -H "Authorization: Bearer $SEVENFEASTR_API_KEY"
FieldTypeDescription
statusstringopen, in_review, resolved or closed
messagesarrayThe conversation: { senderType, message, at }, where senderType is merchant or admin
resolutionstringHow the dispute was resolved, once it is resolved

Errors: 404 not_found for an unknown dispute, 401 authentication_error.

Check GET /disputes/:id or the dashboard for replies from our support team.

PreviousTrackingNext Webhooks

On this page

  • Get your wallet balance
  • List wallet transactions
  • Refunds
  • Low balance alerts
  • Disputes
  • Open a dispute
  • List and view disputes