TransactionSEALED

╱╱■!#▪▒█?╳*╲*●▫●◆●@!@~□╳○●!╲■╳▓●!*░□^?^█╳!%○◆*█@$░@@$□○$╲▫%^~○░●

Transaction ID

Timestamp

Jan 19, 2026, 07:14:43 AM UTC
1mo ago

Block Height

139,361,035

Computation

0

Execution Error

Error Code: 1009

error caused by: 1 error occurred:

Raw Error

[Error Code: 1009] error caused by: 1 error occurred: * transaction verification failed: [Error Code: 1006] invalid proposal key: public key 6 on account f380b22ef386ac7e does not have a valid signature: [Error Code: 1009] invalid envelope key: public key 6 on account f380b22ef386ac7e does not have a valid signature: signature is not valid

Transaction Summary

Transaction

Script Arguments

0identifierString
A.2d4c3caffbeab845.FLOAT.NFT
1childAddrAddress
2receiverAddress
3ids[UInt64]
[
  "75866303338937"
]

Cadence Script

1import HybridCustody from 0xd8a7e05a7ac670c0
2import CapabilityFilter from 0xd8a7e05a7ac670c0
3import NonFungibleToken from 0x1d7e57aa55817448
4import MetadataViews from 0x1d7e57aa55817448
5import ViewResolver from 0x1d7e57aa55817448
6
7
8transaction(identifier: String, childAddr: Address, receiver: Address, ids: [UInt64]) {
9  prepare(signer: auth(Storage) &Account) {
10    let type = CompositeType(identifier)
11    let identifierSplit = identifier.split(separator: ".")
12    let address = Address.fromString("0x".concat(identifierSplit[1]))!
13    let name = identifierSplit[2]!
14    let viewResolver = getAccount(address).contracts.borrow<&{ViewResolver}>(name: name)
15        ?? panic("Could not borrow ViewResolver from NFT contract")
16    // signer is the parent account
17    // get the manager resource and borrow childAccount
18    let m = signer.storage.borrow<auth(HybridCustody.Manage) &HybridCustody.Manager>(from: HybridCustody.ManagerStoragePath)
19        ?? panic("manager does not exist")
20    let childAcct = m.borrowAccount(addr: childAddr) ?? panic("child account not found")
21    
22    let collectionData = viewResolver.resolveContractView(resourceType: nil, viewType: Type<MetadataViews.NFTCollectionData>()) as! MetadataViews.NFTCollectionData?
23        ?? panic("Could not get the vault data view for <NFT> ")
24
25    //get Ft cap from child account
26    let capType = Type<auth(NonFungibleToken.Withdraw) &{NonFungibleToken.Provider}>()
27    let controllerID = childAcct.getControllerIDForType(type: capType, forPath: collectionData.storagePath)
28        ?? panic("no controller found for capType")
29    
30    let cap = childAcct.getCapability(controllerID: controllerID, type: capType) ?? panic("no cap found")
31    let providerCap = cap as! Capability<auth(NonFungibleToken.Withdraw) &{NonFungibleToken.Provider}>
32    assert(providerCap.check(), message: "invalid provider capability")
33    let collectionRef = providerCap.borrow()!
34
35
36    let receiverChildAcct = m.borrowAccount(addr: receiver) ?? panic("child account not found")
37    let receiverControllerId = receiverChildAcct.getControllerIDForType(type: capType, forPath: collectionData.storagePath)
38        ?? panic("no controller found for capType")
39    let receiverCap = receiverChildAcct.getCapability(controllerID: receiverControllerId, type: capType) ?? panic("no cap found") 
40    let publicCap = receiverCap as! Capability<&{NonFungibleToken.CollectionPublic}>
41    let receiverRef =  publicCap.borrow()!
42
43    for id in ids {
44      let nft <- collectionRef.withdraw(withdrawID: id)
45      receiverRef.deposit(token: <- nft)
46    }
47  }
48}