> ## Documentation Index
> Fetch the complete documentation index at: https://docs.junojourney.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Payments & Requests

> Manage learning requests, approvals, and payment processing.

export const InternalNote = ({children}) => {
  const [isInternal, setIsInternal] = useState(false);
  useEffect(() => {
    const user = window.__mintlify_user__;
    if (user?.groups?.includes("internal")) setIsInternal(true);
  }, []);
  if (!isInternal) return null;
  return <div className="internal-note">
      <strong className="internal-note-title">🔒 Internal Note</strong>
      <div>{children}</div>
    </div>;
};

export const FeatureAvailability = ({module, feature}) => {
  const label = feature || module;
  return <Info title="Feature availability">
      {label ? <>This feature requires the <strong>{label}</strong> module. </> : <>This feature may not be enabled for your organization. </>}
      If you don't see it in Juno, contact your administrator.
    </Info>;
};

<FeatureAvailability module="LXP" />

## Learning requests

When employees request paid external content, requests flow through an approval process.

***

## Request statuses

| Status                       | What it means                                |
| ---------------------------- | -------------------------------------------- |
| **Pre-Approval**             | Initial draft, not yet submitted             |
| **Pending**                  | Awaiting manager/admin approval              |
| **Approved**                 | Fully approved — content unlocked            |
| **Approved with Conditions** | Approved but with restrictions               |
| **Budget Locked**            | Budget reserved, awaiting final confirmation |
| **Rejected**                 | Denied by approver                           |

<InternalNote>
  Request status codes: MANAGER\_APPROVED (2), BUDGET\_LOCKED (4), HR\_VALIDATION (6), HR\_PAYED (8), DECLINED (-2), CANCELED (-18). User moves from `waitingList` to `sessionMembers` when `budgetStatus >= 4`.
</InternalNote>

***

## Managing requests

From **Admin → Budget → Requests**:

* View all pending requests with user, amount, type, and provider
* **Approve** or **Reject** with an optional note
* Request more information from the requester
* Bulk approve multiple requests
* Filter by status, user, date, or amount

***

## Payments

The **Payments** section tracks invoicing and payment processing:

* View invoices from content providers
* Record payments
* Track payment status
* Export billing reports for accounting
