# [Ride v4 and v3] InvokeScriptTransaction
⚠️ This is the documentation for the Standard library version 4 and 3. We recommend to use version 6. Go to version 6
Structure of an invoke script transaction.
# Fields
| # | Name | Data type | Description | 
|---|---|---|---|
| 1 | dApp | Address|Alias | Address or alias of the account which is calling a function | 
| 2 | payment | AttachedPayment|Unit | Payment attached to the transaction. ⚠️ The field is deleted in Standard library version 4 | 
| 2 | payments | List[AttachedPayment] | Payments attached to the transaction. The field is added in Standard library version 4 | 
| 3 | feeAssetId | ByteVector|Unit | Token to pay the commission | 
| 4 | function | String | Name of the function | 
| 5 | args | For version 3: List[Boolean|ByteVector|Int|String] For version 4: List[Boolean|ByteVector|Int|String|List[Boolean|ByteVector|Int|String]] | Parameters of the function | 
| 6 | id | ByteVector | Transaction ID | 
| 7 | fee | Int | Transaction fee | 
| 8 | timestamp | Int | Transaction timestamp | 
| 9 | version | Int | Transaction version | 
| 10 | sender | Address | Address of the transaction sender | 
| 11 | senderPublicKey | ByteVector | Account public key of the transaction sender | 
| 12 | bodyBytes | ByteVector | Transaction body bytes | 
| 13 | proofs | List[ByteVector] | Array of proofs |