{
  "meta": {
    "generated": "2026-09-21",
    "source": "lib/use-cases.ts",
    "idScheme": "use-case:<id>"
  },
  "note": "status is the least available status among the capabilities a use case depends on, so a use case is never reported as more available than its weakest part.",
  "useCases": [
    {
      "id": "use-case:collect-from-customers",
      "name": "Collect from customers",
      "question": "How do I accept payments from customers in Africa?",
      "description": "Most customers on the continent hold money in a mobile wallet, not on a card, and each market has different networks. One Ultraner integration reaches all of them, plus card and PayPal for anyone paying from abroad.",
      "status": "live",
      "capabilities": [
        "capability:collection",
        "capability:checkout",
        "capability:fx"
      ],
      "industries": [
        "industry:schools",
        "industry:colleges",
        "industry:ngos",
        "industry:tickets",
        "industry:memberships",
        "industry:marketplaces",
        "industry:agencies"
      ],
      "url": "https://ultraner.com/use-cases/collect-from-customers"
    },
    {
      "id": "use-case:pay-sellers",
      "name": "Pay sellers and suppliers",
      "question": "How do I pay sellers or suppliers in Africa?",
      "description": "Paying many people, often in small amounts, across markets where a bank transfer is slow or unavailable. Payouts reach a mobile wallet where that rail is live, and settlement reaches a bank account anywhere in the world.",
      "status": "live",
      "capabilities": [
        "capability:disbursement",
        "capability:settlement",
        "capability:payroll"
      ],
      "industries": [
        "industry:marketplaces",
        "industry:agencies",
        "industry:payroll"
      ],
      "url": "https://ultraner.com/use-cases/pay-sellers"
    },
    {
      "id": "use-case:marketplace-escrow",
      "name": "Hold funds until delivery",
      "question": "How does escrow work for an African marketplace?",
      "description": "Neither the buyer nor the seller wants to go first. The payment is held rather than forwarded, and released when delivery is confirmed, so the platform is not carrying the risk in the middle.",
      "status": "live",
      "capabilities": [
        "capability:escrow",
        "capability:collection",
        "capability:disbursement"
      ],
      "industries": [
        "industry:marketplaces",
        "industry:tickets"
      ],
      "url": "https://ultraner.com/use-cases/marketplace-escrow"
    },
    {
      "id": "use-case:split-a-payment",
      "name": "Split a payment between parties",
      "question": "How do I take a commission and pay the rest to a seller?",
      "description": "A platform collects the whole amount, keeps its cut, and forwards the remainder. Streamline does this as one operation rather than as a payment followed by a separate payout you reconcile yourself.",
      "status": "live",
      "capabilities": [
        "capability:split-payouts",
        "capability:collection",
        "capability:settlement"
      ],
      "industries": [
        "industry:marketplaces",
        "industry:agencies"
      ],
      "url": "https://ultraner.com/use-cases/split-a-payment"
    },
    {
      "id": "use-case:recurring-billing",
      "name": "Bill on a schedule",
      "question": "How do I run subscriptions on African mobile money?",
      "description": "Card networks store a card on file and charge it; African mobile money does not, so a subscription has to prompt the payer each interval. Ultraner handles both models behind one plan object.",
      "status": "live",
      "capabilities": [
        "capability:subscriptions",
        "capability:catalog",
        "capability:entitlements",
        "capability:webhooks"
      ],
      "industries": [
        "industry:memberships",
        "industry:colleges",
        "industry:developers"
      ],
      "url": "https://ultraner.com/use-cases/recurring-billing"
    },
    {
      "id": "use-case:invoice-and-collect",
      "name": "Invoice and collect",
      "question": "How do I invoice a customer and get paid in local currency?",
      "description": "Issue an invoice, let the customer pay it with whatever they have, and be credited in your own currency. The rate is shown to the payer before they confirm.",
      "status": "live",
      "capabilities": [
        "capability:invoicing",
        "capability:collection",
        "capability:fx"
      ],
      "industries": [
        "industry:agencies",
        "industry:schools",
        "industry:colleges"
      ],
      "url": "https://ultraner.com/use-cases/invoice-and-collect"
    },
    {
      "id": "use-case:pay-staff",
      "name": "Pay staff",
      "question": "How do I run payroll across African markets?",
      "description": "Salaries to many people at once, in the market each person lives in. Submitted as a batch, authorised by a named person rather than by an API key alone.",
      "status": "live",
      "capabilities": [
        "capability:payroll",
        "capability:disbursement",
        "capability:settlement"
      ],
      "industries": [
        "industry:payroll",
        "industry:agencies"
      ],
      "url": "https://ultraner.com/use-cases/pay-staff"
    },
    {
      "id": "use-case:accept-donations",
      "name": "Accept donations",
      "question": "How does a nonprofit accept mobile money donations?",
      "description": "Small amounts from many people, most of whom will not fill in a card form. A link or QR opens a checkout that accepts the wallet they already use.",
      "status": "live",
      "capabilities": [
        "capability:payment-links",
        "capability:qr",
        "capability:collection",
        "capability:checkout"
      ],
      "industries": [
        "industry:ngos"
      ],
      "url": "https://ultraner.com/use-cases/accept-donations"
    },
    {
      "id": "use-case:sell-tickets",
      "name": "Sell tickets",
      "question": "How do I sell event tickets in Africa?",
      "description": "Demand arrives in bursts and most buyers pay from a phone. A hosted checkout takes the payment, and escrow can hold it until the event happens.",
      "status": "live",
      "capabilities": [
        "capability:checkout",
        "capability:collection",
        "capability:escrow",
        "capability:promo-codes"
      ],
      "industries": [
        "industry:tickets"
      ],
      "url": "https://ultraner.com/use-cases/sell-tickets"
    },
    {
      "id": "use-case:group-contributions",
      "name": "Collect group contributions and pay out a round",
      "question": "How does a savings or rotating-credit group collect and pay out?",
      "description": "A savings group collects a contribution from every member each round, then pays the whole pot to whoever is due. Done on trust and a notebook it is the record, not the money, that causes the argument, so every contribution lands against a shared record and the payout is one traceable action.",
      "status": "live",
      "capabilities": [
        "capability:collection",
        "capability:payment-links",
        "capability:disbursement",
        "capability:webhooks"
      ],
      "industries": [
        "industry:fingame"
      ],
      "url": "https://ultraner.com/use-cases/group-contributions"
    },
    {
      "id": "use-case:cross-border-collection",
      "name": "Get paid from another country",
      "question": "Can a customer in one African country pay a business in another?",
      "description": "The payer uses their own network and currency, the business is credited in its own, and the rate is shown before the payer confirms. The two do not need the same rail.",
      "status": "live",
      "capabilities": [
        "capability:cross-border",
        "capability:fx",
        "capability:collection",
        "capability:settlement"
      ],
      "industries": [
        "industry:marketplaces",
        "industry:agencies",
        "industry:colleges",
        "industry:developers"
      ],
      "url": "https://ultraner.com/use-cases/cross-border-collection"
    }
  ],
  "industries": [
    {
      "id": "industry:agencies",
      "name": "Agencies",
      "useCases": [
        "use-case:collect-from-customers",
        "use-case:pay-sellers",
        "use-case:split-a-payment",
        "use-case:invoice-and-collect",
        "use-case:pay-staff",
        "use-case:cross-border-collection"
      ],
      "url": "https://ultraner.com/solutions/agencies"
    },
    {
      "id": "industry:marketplaces",
      "name": "Marketplaces",
      "useCases": [
        "use-case:collect-from-customers",
        "use-case:pay-sellers",
        "use-case:marketplace-escrow",
        "use-case:split-a-payment",
        "use-case:cross-border-collection"
      ],
      "url": "https://ultraner.com/solutions/marketplaces"
    },
    {
      "id": "industry:colleges",
      "name": "Colleges & Universities",
      "useCases": [
        "use-case:collect-from-customers",
        "use-case:recurring-billing",
        "use-case:invoice-and-collect",
        "use-case:cross-border-collection"
      ],
      "url": "https://ultraner.com/solutions/colleges"
    },
    {
      "id": "industry:tickets",
      "name": "Tickets",
      "useCases": [
        "use-case:collect-from-customers",
        "use-case:marketplace-escrow",
        "use-case:sell-tickets"
      ],
      "url": "https://ultraner.com/solutions/tickets"
    },
    {
      "id": "industry:payroll",
      "name": "Companies (Payroll)",
      "useCases": [
        "use-case:pay-sellers",
        "use-case:pay-staff"
      ],
      "url": "https://ultraner.com/solutions/payroll"
    },
    {
      "id": "industry:developers",
      "name": "Developers",
      "useCases": [
        "use-case:recurring-billing",
        "use-case:cross-border-collection"
      ],
      "url": "https://ultraner.com/solutions/developers"
    },
    {
      "id": "industry:memberships",
      "name": "Membership Access",
      "useCases": [
        "use-case:collect-from-customers",
        "use-case:recurring-billing"
      ],
      "url": "https://ultraner.com/solutions/memberships"
    },
    {
      "id": "industry:ngos",
      "name": "NGOs",
      "useCases": [
        "use-case:collect-from-customers",
        "use-case:accept-donations"
      ],
      "url": "https://ultraner.com/solutions/ngos"
    },
    {
      "id": "industry:schools",
      "name": "Schools",
      "useCases": [
        "use-case:collect-from-customers",
        "use-case:invoice-and-collect"
      ],
      "url": "https://ultraner.com/solutions/schools"
    },
    {
      "id": "industry:fingame",
      "name": "Savings & Rotating-Credit Groups",
      "useCases": [
        "use-case:group-contributions"
      ],
      "url": "https://ultraner.com/solutions/fingame"
    }
  ],
  "capabilityIndex": {
    "use-case:collect-from-customers": [
      "Accept payments",
      "Hosted checkout",
      "Currency conversion"
    ],
    "use-case:pay-sellers": [
      "Payouts to a wallet",
      "Settlement to a bank account",
      "Payroll and batch payouts"
    ],
    "use-case:marketplace-escrow": [
      "Escrow",
      "Accept payments",
      "Payouts to a wallet"
    ],
    "use-case:split-a-payment": [
      "Split payouts (Streamline)",
      "Accept payments",
      "Settlement to a bank account"
    ],
    "use-case:recurring-billing": [
      "Recurring billing",
      "Products and prices",
      "Features and entitlements",
      "Webhooks"
    ],
    "use-case:invoice-and-collect": [
      "Invoices",
      "Accept payments",
      "Currency conversion"
    ],
    "use-case:pay-staff": [
      "Payroll and batch payouts",
      "Payouts to a wallet",
      "Settlement to a bank account"
    ],
    "use-case:accept-donations": [
      "Payment links",
      "QR payments",
      "Accept payments",
      "Hosted checkout"
    ],
    "use-case:sell-tickets": [
      "Hosted checkout",
      "Accept payments",
      "Escrow",
      "Promo codes"
    ],
    "use-case:group-contributions": [
      "Accept payments",
      "Payment links",
      "Payouts to a wallet",
      "Webhooks"
    ],
    "use-case:cross-border-collection": [
      "Cross-border payments",
      "Currency conversion",
      "Accept payments",
      "Settlement to a bank account"
    ]
  }
}