Skip to content

Add a USDT0 (LayerZero OFT) page to the tokens section - #2795

Open
kaankacar wants to merge 8 commits into
mainfrom
docs/usdt0-page
Open

Add a USDT0 (LayerZero OFT) page to the tokens section#2795
kaankacar wants to merge 8 commits into
mainfrom
docs/usdt0-page

Conversation

@kaankacar

@kaankacar kaankacar commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Closes #2793

What changed

  • New page docs/tokens/usdt0-layerzero.mdx, placed right after the CCTP page in the sidebar (sidebar_position: 100).
  • The CCTP page is unchanged.
  • The page covers: what USDT0 is, mainnet addresses, how LayerZero fits (Stellar EID 30600), integration pointers that link the official USDT0 docs, and amount precision.
  • config/theme/navbar.ts lists the page in the Tokens dropdown, after CCTP.
  • routes.txt gains the new route (regenerated by pnpm build).
  • static/llms.txt lists the new page under Tokens.

New page docs/tokens/usdt0-layerzero.mdx, placed right after the CCTP
page in the sidebar. Covers what USDT0 is, mainnet addresses, how
LayerZero fits, integration pointers to the official USDT0 docs, amount
precision, constraints to check before listing, and a read-only RPC
pre-listing check. Registers the route in routes.txt and llms.txt.
@kaankacar kaankacar self-assigned this Aug 25, 2026
@stellar-jenkins-ci

Copy link
Copy Markdown

@stellar-jenkins-ci

Copy link
Copy Markdown

2 similar comments
@stellar-jenkins-ci

Copy link
Copy Markdown

@stellar-jenkins-ci

Copy link
Copy Markdown

@stellar-jenkins-ci

Copy link
Copy Markdown

2 similar comments
@stellar-jenkins-ci

Copy link
Copy Markdown

@stellar-jenkins-ci

Copy link
Copy Markdown

@kaankacar
kaankacar marked this pull request as ready for review August 26, 2026 10:11
Copilot AI balanced review requested due to automatic review settings August 26, 2026 10:11

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds USDT0/LayerZero documentation and navigation, but omits required issue scope and misrepresents an OFT quote result.

Changes:

  • Adds USDT0 architecture, addresses, integration, and precision guidance.
  • Adds navbar, route, and LLM index entries.
  • Requires issuer constraints, RPC pre-listing check, and quote correction.

Recommendation: NEEDS-CHANGES — address the three blocking review comments.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.

File Description
docs/tokens/usdt0-layerzero.mdx Adds the USDT0 documentation page.
config/theme/navbar.ts Adds USDT0 to Tokens navigation.
routes.txt Registers the generated route.
static/llms.txt Adds the page to the LLM index.
Suppressed comments (1)

docs/tokens/usdt0-layerzero.mdx:60

  • #2793 also requires a read-only pre-listing check using Stellar RPC. The generic integration links and fee quote do not provide that check, so the page does not yet let a protocol verify the expected issuer/SAC/OFT configuration before listing USDT0. Add the requested non-mutating RPC example.
- **Bridging in or out.** End users move USDT0 with the [transfer UI](https://usdt0.to/transfer). Programmatic sends from Stellar go through the OFT contract's `quote_send` and `send` functions, with fees paid in XLM. The [USDT0 developer guide](https://docs.usdt0.to/technical-documentation/developer) documents the OFT interface and the message flow. Query `quote_send` for the current fee rather than relying on a documented number.

💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.


## Integrate USDT0

USDT0 needs no special integration code on Stellar. Use the same paths as for any other Stellar asset with a SAC:

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is intentional. The page is a short link-out page, like the CCTP page next to it. Issuer flags, home_domain checks, and the pre-listing script are out of scope. Protocols read those values from the network. I updated #2793 to match this scope.

Comment thread docs/tokens/usdt0-layerzero.mdx Outdated
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@kaankacar

kaankacar commented Aug 26, 2026

Copy link
Copy Markdown
Contributor Author

Note for reviewers: the PR preview can lag behind the branch. Yesterday it served only the first build of a series of pushes (commit ad6d114, 18:22Z). Jenkins reported success for the three later commits, but their content never appeared, and a hard reload did not help. A single push today (ed7cb62) deployed fine, so this seems to affect back-to-back pushes only. If the preview looks stale, compare the last-modified response header with the latest commit time, or run pnpm build locally.

@stellar-jenkins-ci

Copy link
Copy Markdown

@ElliotFriend ElliotFriend left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is looking pretty great! i wouldn't block on any of these comments, but did provide some thoughts. thanks!!


USDT0 needs no special integration code on Stellar. Use the same paths as for any other Stellar asset with a SAC:

- **Classic accounts and wallets.** The recipient opens a trustline to `USDT0:GATISXX6BZ6NC7IKQBY37CJD4SOZL3CYZJWXEDG6JVIY4WBS6KXJHN6Q` once. After that, any account holding USDT0 can send it with a payment operation. See [Send and Receive Payments](../build/guides/transactions/send-and-receive-payments.mdx) and [Verify Trustlines](../build/guides/basics/verify-trustlines.mdx).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- **Classic accounts and wallets.** The recipient opens a trustline to `USDT0:GATISXX6BZ6NC7IKQBY37CJD4SOZL3CYZJWXEDG6JVIY4WBS6KXJHN6Q` once. After that, any account holding USDT0 can send it with a payment operation. See [Send and Receive Payments](../build/guides/transactions/send-and-receive-payments.mdx) and [Verify Trustlines](../build/guides/basics/verify-trustlines.mdx).
- **Classic accounts and wallets.** The recipient opens a trustline to `USDT0:GATISXX6BZ6NC7IKQBY37CJD4SOZL3CYZJWXEDG6JVIY4WBS6KXJHN6Q` once. After that, any account holding USDT0 can send it to the recipient with a payment operation. See [Send and Receive Payments](../build/guides/transactions/send-and-receive-payments.mdx) and [Verify Trustlines](../build/guides/basics/verify-trustlines.mdx).

the subject of the sentence gets a little mixed up. might be good to clarify which account it'll land in.

USDT0 needs no special integration code on Stellar. Use the same paths as for any other Stellar asset with a SAC:

- **Classic accounts and wallets.** The recipient opens a trustline to `USDT0:GATISXX6BZ6NC7IKQBY37CJD4SOZL3CYZJWXEDG6JVIY4WBS6KXJHN6Q` once. After that, any account holding USDT0 can send it with a payment operation. See [Send and Receive Payments](../build/guides/transactions/send-and-receive-payments.mdx) and [Verify Trustlines](../build/guides/basics/verify-trustlines.mdx).
- **Smart contracts.** Call the SAC at `CBSJZEIO5C7KC2SF3MKSNXXJSW5G3VTNBX4ATMKUI3B2MR4JKM4R26YF` through the [token interface](./token-interface.mdx), the same way as any other token. See [Use Issued Assets in Smart Contracts with the SAC](./stellar-asset-contract.mdx). A contract balance in USDT0 lives in the SAC, separate from account trustlines.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- **Smart contracts.** Call the SAC at `CBSJZEIO5C7KC2SF3MKSNXXJSW5G3VTNBX4ATMKUI3B2MR4JKM4R26YF` through the [token interface](./token-interface.mdx), the same way as any other token. See [Use Issued Assets in Smart Contracts with the SAC](./stellar-asset-contract.mdx). A contract balance in USDT0 lives in the SAC, separate from account trustlines.
- **Smart contracts.** Call the SAC at `CBSJZEIO5C7KC2SF3MKSNXXJSW5G3VTNBX4ATMKUI3B2MR4JKM4R26YF` through the [token interface](./token-interface.mdx), the same way as any other token. See [Use Issued Assets in Smart Contracts with the SAC](./stellar-asset-contract.mdx). A contract balance in USDT0 lives in the SAC storage entries, separate from account trustlines.

this may not be necessary, really. but it feels a little more "complete" to me?

@stellar stellar deleted a comment from gre3n3yes34 Aug 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add a USDT0 (LayerZero OFT) page to the tokens section

3 participants