I compiled my plutus script and generated a payment credential only address. The logic all working fine- no issues.

However when I add a stake credential to my plutus script address, the logic starts to fail. I have tried with PKH and Script hash staking credentials. Even tried using a stake credential created with an always succeeds withdrawal validator.

Anyone know whats going on?

2 Answers 2


some actual code of the contract would help understand the issue better.

The error you describe suggests you are doing some checks for the script address (which is formed by payment credentials + optional staking credentials)

if you are checking for equality with an address built at contract runtime

(something like PCredential.PScriptCredential({ valHash: ownHash }) in plu-ts)

then you are checking for the address to be strictly equal to the one without any stake credentials.


A simple way to generate such an address is by using Eternl.

  1. Go to https://eternl.io/
  2. Open Settings (gear icon in the bottom left)
  3. Open "Franken Address Generator"
  4. Enter your script and stake address parts and generate

enter image description here

Hope this helps. Otherwise please add an example of what you already tried and provide more details on the error you get.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.