Skip to content

feat(payment-instructions): allow USDT as an Ethereum wallet assetType - #766

Closed
ls-bolt[bot] wants to merge 1 commit into
mainfrom
07-29-ethereum-wallet-usdt-asset-type
Closed

feat(payment-instructions): allow USDT as an Ethereum wallet assetType#766
ls-bolt[bot] wants to merge 1 commit into
mainfrom
07-29-ethereum-wallet-usdt-asset-type

Conversation

@ls-bolt

@ls-bolt ls-bolt Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

This PR has been claimed. The active PR is now #767.

Summary

Allows USDT as an assetType on the Ethereum wallet payment-instruction schema, so an internal account denominated in USDT can return Ethereum L1 funding instructions. Previously PaymentEthereumWalletInfo.assetType accepted only USDC, which meant a USDT balance had no way to express an Ethereum L1 deposit address.

USDT is already a valid assetType on the Tron wallet schema; this brings Ethereum in line.

Changes

  • openapi/components/schemas/common/PaymentEthereumWalletInfo.yaml — add USDT to the assetType enum
  • openapi.yaml, mintlify/openapi.yaml — rebundled via make build

No change to EthereumWalletExternalAccountInfo: external accounts carry no assetType, and their currency comes from the request body, which already accepts USDT.

Test plan

  • make lint-openapi — 0 errors (the 136 warnings / 494 infos are pre-existing repo-wide schema-properties-have-{examples,descriptions} noise; none reference this schema)
  • oasdiff breaking <main> <head> --format singleline --fail-on ERR0 errors, 37 warnings, all response-property-enum-value-added for the operations that return payment instructions. Adding a value to a response enum is non-breaking, so info.version is intentionally unchanged.

Reply with a comment (e.g. LGTM) to approve — emoji reactions don't notify me here.

Requested by @jklein24

@ls-bolt ls-bolt Bot added the bolt label Jul 29, 2026
@vercel

vercel Bot commented Jul 29, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

2 Skipped Deployments
Project Deployment Actions Updated (UTC)
grid-flow-builder Ignored Ignored Preview Jul 29, 2026 11:08pm
grid-wallet-demo Ignored Ignored Preview Jul 29, 2026 11:08pm

Request Review

@mintlify

mintlify Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
Grid 🟢 Ready View Preview Jul 29, 2026, 11:09 PM

akanter commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

This stack of pull requests is managed by Graphite. Learn more about stacking.

@github-actions

github-actions Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

✱ Stainless preview builds for grid

This PR will update the grid SDKs with the following commit messages.

cli

chore(internal): regenerate SDK with no functional changes

go

chore(internal): regenerate SDK with no functional changes

kotlin

chore(internal): regenerate SDK with no functional changes

openapi

feat(api): add USDT to asset type enum

php

chore(internal): regenerate SDK with no functional changes

python

chore(internal): regenerate SDK with no functional changes

ruby

chore(internal): regenerate SDK with no functional changes

typescript

chore(internal): regenerate SDK with no functional changes

Edit this comment to update them. They will appear in their respective SDK's changelogs.

grid-typescript studio · code · diff

Your SDK build had at least one "note" diagnostic, but this did not represent a regression.
generate ✅build ⏭️lint ⏭️test ✅

grid-cli studio · code · diff

Your SDK build had at least one "warning" diagnostic, but this did not represent a regression.
generate ⚠️build ❗lint ❗test ❗

grid-php studio · code · diff

Your SDK build had at least one "note" diagnostic, but this did not represent a regression.
generate ✅lint ✅test ✅

grid-openapi studio · code · diff

Your SDK build had at least one "warning" diagnostic, but this did not represent a regression.
generate ⚠️

grid-ruby studio · code · diff

Your SDK build had at least one "note" diagnostic, but this did not represent a regression.
generate ✅build ⏭️lint ✅test ✅

grid-go studio · code · diff

Your SDK build had at least one "note" diagnostic, but this did not represent a regression.
generate ✅build ⏭️lint ❗test ❗

go get github.com/stainless-sdks/grid-go@a39dfb2aef34ddeda31468d6d271f27f16298add
grid-python studio · code · diff

Your SDK build had at least one "note" diagnostic, but this did not represent a regression.
generate ✅build ⏭️lint ⏭️test ❗

grid-kotlin studio · code · diff

Your SDK build had at least one "warning" diagnostic, but this did not represent a regression.
generate ⚠️build ⏭️lint ⏭️test ❗


This comment is auto-generated by GitHub Actions and is automatically kept up to date as you push.
If you push custom code to the preview branch, re-run this workflow to update the comment.
Last updated: 2026-07-29 23:11:50 UTC

@jklein24

Copy link
Copy Markdown
Contributor

Do we also need to update any docs in mintlify or anything for this?

@greptile-apps

greptile-apps Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR expands Ethereum wallet payment instructions to represent USDT funding.

  • Adds USDT to PaymentEthereumWalletInfo.assetType.
  • Regenerates both committed OpenAPI bundles from the updated source schema.

Confidence Score: 5/5

The PR appears safe to merge with the source schema and generated bundles synchronized.

The additive enum change is represented consistently across all three artifacts, and the existing schema composition permits the new Ethereum wallet asset without introducing a contradictory discriminator or structural contract.

Important Files Changed

Filename Overview
openapi/components/schemas/common/PaymentEthereumWalletInfo.yaml Adds USDT to the Ethereum wallet asset enum, consistent with existing multi-asset wallet schemas.
openapi.yaml Correctly reflects the source-schema change in the generated root bundle.
mintlify/openapi.yaml Correctly mirrors the regenerated root bundle for local documentation use.

Reviews (1): Last reviewed commit: "feat(payment-instructions): allow USDT a..." | Re-trigger Greptile

@ls-bolt

ls-bolt Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor Author

Checked — nothing else to update, and here's what I verified rather than assumed:

  • API reference: generated from the spec, and make build regenerated mintlify/openapi.yaml in this PR, so the assetType enum on Ethereum Wallet picks up USDT automatically. The Mintlify preview above renders it.
  • Hand-written MDX: no page carries an authoritative per-network asset matrix. Every assetType: "USDC" hit under mintlify/ is inside a JSON response example for a USDC flow, which stays correct as-is.
  • The only two places that name chains in prose are open-ended and already didn't enumerate USDT: snippets/sending/cross-currency.mdx ("funding via USDC and BTC on popular blockchains including Solana, Base, Lightning and Spark") and platform-overview/introduction/platform-capabilities.mdx ("BTC, USDC, USDT, and more" / "Spark, Solana, Tron, Base, Polygon, etc.").

That first one is worth a look independently of this PR — it says cross-currency funding is USDC/BTC only, which hasn't been true since USDT-on-Tron shipped. Happy to fix it here or leave it out of scope; it's a docs accuracy issue that predates this change, not something adding the enum value breaks.

@jklein24
jklein24 marked this pull request as draft July 29, 2026 23:41
@jklein24 jklein24 closed this Jul 29, 2026
jklein24 added a commit that referenced this pull request Jul 30, 2026
#767)

## Summary

Allows `USDT` as an `assetType` on the Ethereum wallet
payment-instruction schema, so an internal account denominated in USDT
can return Ethereum L1 funding instructions. Previously
`PaymentEthereumWalletInfo.assetType` accepted only `USDC`, which meant
a USDT balance had no way to express an Ethereum L1 deposit address.

USDT is already a valid `assetType` on the Tron wallet schema; this
brings Ethereum in line.

## Changes

- `openapi/components/schemas/common/PaymentEthereumWalletInfo.yaml` —
add `USDT` to the `assetType` enum
- `openapi.yaml`, `mintlify/openapi.yaml` — rebundled via `make build`

No change to `EthereumWalletExternalAccountInfo`: external accounts
carry no `assetType`, and their currency comes from the request body,
which already accepts USDT.

## Test plan

- `make lint-openapi` — 0 errors (the 136 warnings / 494 infos are
pre-existing repo-wide `schema-properties-have-{examples,descriptions}`
noise; none reference this schema)
- `oasdiff breaking <main> <head> --format singleline --fail-on ERR` —
**0 errors, 37 warnings**, all `response-property-enum-value-added` for
the operations that return payment instructions. Adding a value to a
response enum is non-breaking, so `info.version` is intentionally
unchanged.

Reply with a comment (e.g. LGTM) to approve — emoji reactions don't
notify me here.

Requested by @jklein24

Original PR: #766
@jklein24
jklein24 deleted the 07-29-ethereum-wallet-usdt-asset-type branch July 30, 2026 01:18
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.

2 participants