Skip to content

[SC-6159] Add kycHash to StakeOptions for XDC masternode staking#8298

Draft
Doddanna17 wants to merge 1 commit intomasterfrom
SC-6159-xdc-kyc-hash-stake-options
Draft

[SC-6159] Add kycHash to StakeOptions for XDC masternode staking#8298
Doddanna17 wants to merge 1 commit intomasterfrom
SC-6159-xdc-kyc-hash-stake-options

Conversation

@Doddanna17
Copy link
Contributor

@Doddanna17 Doddanna17 commented Mar 16, 2026

Summary

Add kycHash?: string to StakeOptions in iStakingWallet.ts to support XDC masternode staking.

File changed: modules/sdk-core/src/bitgo/staking/iStakingWallet.ts

/** XDC masternode KYC document hash — IPFS CIDv0 (Qm...) or CIDv1 (bafy...) */
kycHash?: string;

Context

XDC masternode staking requires a 2-step flow:

  1. Upload KYC PDF → POST /kyc/upload{ hash: "QmTzQ1..." }
  2. Submit stake request with { validator, kycHash } → creates AUTHORIZE + DELEGATE txs

The kycHash is obtained from the staking-service KYC upload endpoint (PR: BitGo/staking-service#6582) and must be forwarded in the stake request body. Since stakingWallet.stake() spreads all StakeOptions fields into the POST body, only this interface change is needed.

validator?: string already exists in StakeOptions — no further changes required.

Related

Ticket: SC-6159

Add optional kycHash field to StakeOptions interface to support XDC
masternode staking. The field carries the IPFS CID of the KYC document
uploaded via the staking-service KYC upload endpoint before staking.

stakingWallet.stake() spreads all StakeOptions fields into the POST
body automatically, so no further changes are needed.

Ticket: SC-6159
@Doddanna17 Doddanna17 force-pushed the SC-6159-xdc-kyc-hash-stake-options branch from 9303cc5 to a99eb82 Compare March 16, 2026 03:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant