> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cultura.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Class: RightsBoundAccount

Client for interacting with the Cultura Rights Bound Account contract
Handles payment distributions, royalty claims, and account management

These accounts manage digital asset-related functions and handle royalty distributions to various
stakeholders including attesters, Cultura Treasury, and parent digital asset owners.
They are automatically deployed during the attestation process.

### new RightsBoundAccountClient()

> **new RightsBoundAccountClient**(`publicClient`, `walletClient`, `contractAddress`): [`RightsBoundAccountClient`](./rights-bound-account)

#### Parameters

##### publicClient

##### walletClient

##### contractAddress

`` `0x${string}` ``

#### Returns

[`RightsBoundAccountClient`](./rights-bound-account)

## Methods

### claim()

> **claim**(`period`): `Promise`\<`` `0x${string}` ``>

Claim rewards for a period

#### Parameters

##### period

`bigint`

The period to claim rewards for

#### Returns

`Promise`\<`` `0x${string}` ``>

Transaction hash

#### Remarks

Allows stakeholders to claim their share of royalties for a specific period.

#### Example

```typescript theme={null}
// Stakeholders can claim their share
await rightsBoundAccount.claim(currentPeriod);
```

### setPaymentInfo()

> **setPaymentInfo**(`info`): `Promise`\<`` `0x${string}` ``>

Set payment info for a period

#### Parameters

##### info

Payment information including participants, amounts, and authorization signature

###### participants

readonly `` `0x${string}` ``\[]

###### amounts

readonly `bigint`\[]

###### totalAmount

`bigint`

###### signature

`` `0x${string}` ``

###### signer

`` `0x${string}` ``

#### Returns

`Promise`\<`` `0x${string}` ``>

Transaction hash

#### Remarks

Important Notes:

* Cannot override fixed distributions to:
  * Attester module (for endorsers who helped achieve Verified Rights status)
  * Cultura Treasury
* Used by protocols to define custom royalty distribution logic
* Must include parent digital asset owners if the digital asset is a derivative work

#### Example

```typescript theme={null}
// Set payment distribution for a period
await rightsBoundAccount.setPaymentInfo({
  participants: [parentDigitalAsset1, parentDigitalAsset2],
  amounts: [share1, share2],
  totalAmount: totalRoyalty,
  signature: distributionSignature,
  signer: authorizedSigner
});
```

### getCurrentPeriod()

> **getCurrentPeriod**(): `Promise`\<`bigint`>

Get current period

#### Returns

`Promise`\<`bigint`>

The current period as a bigint

### getPaymentAmount()

> **getPaymentAmount**(`period`, `beneficiary`): `Promise`\<`bigint`>

Get payment amount for a beneficiary in a specific period
This can be used to determine if a royalty has been claimed

#### Parameters

##### period

`bigint`

The payment period

##### beneficiary

`` `0x${string}` ``

The address of the beneficiary

#### Returns

`Promise`\<`bigint`>

The payment amount for the beneficiary in the specified period

### getVerifierModule()

> **getVerifierModule**(): `Promise`\<`` `0x${string}` ``>

Get verifier module address

#### Returns

`Promise`\<`` `0x${string}` ``>

The address of the verifier module contract

### getCulturaTreasury()

> **getCulturaTreasury**(): `Promise`\<`` `0x${string}` ``>

Get Cultura treasury address

#### Returns

`Promise`\<`` `0x${string}` ``>

The address of the Cultura treasury
