/AWS1/CL_WA2SETTLEMENTRECORD¶
A single settlement transaction record for AI bot monetization. Contains details about the payment including timestamp, amount, status, and the parties involved.
CONSTRUCTOR¶
IMPORTING¶
Required arguments:¶
iv_timestamp TYPE /AWS1/WA2TIMESTAMP /AWS1/WA2TIMESTAMP¶
The timestamp when the settlement was recorded.
iv_status TYPE /AWS1/WA2SETTLEMENTSTATUS /AWS1/WA2SETTLEMENTSTATUS¶
The status of the settlement. Possible values:
SETTLED- The payment was successfully settled on the blockchain and the transfer from the payer's wallet to the publisher's wallet is confirmed. TheTransactionIdfield contains the on-chain transaction hash. Content is served to the client.
PENDING- The blockchain transaction has been submitted but not yet confirmed on-chain. This is a transient state that automatically resolves to eitherSETTLEDorFAILED. No action is required. While pending, content is not served and the API returns a 402 response. Clients can retry the request.
FAILED- The payment settlement was attempted but failed. Possible causes include insufficient funds, an expired payment authorization, or a reverted blockchain transaction. ThefailureReasonfield contains a machine-readable error code. Content is not served.
SERVICE_ERROR- Settlement could not be completed due to an internal service issue or an issue with the payment network. Content is not served. The client's payment authorization remains valid and the request can be retried.
SKIPPED_ORIGIN_ERROR- The origin returned a non-2xx response, so settlement was intentionally skipped. The client is not charged.
DUPLICATE- A prior request with the same payment payload has already been settled. This status typically appears when a previous attempt timed out but the payment was ultimately processed. The client is not charged again.
iv_amount TYPE /AWS1/WA2MONETIZATIONAMTVALUE /AWS1/WA2MONETIZATIONAMTVALUE¶
The payment amount in the specified currency.
Optional arguments:¶
iv_payeraddress TYPE /AWS1/WA2SETTLEMENTFILTSTRING /AWS1/WA2SETTLEMENTFILTSTRING¶
The blockchain wallet address of the paying AI agent.
iv_walletaddress TYPE /AWS1/WA2SETTLEMENTFILTSTRING /AWS1/WA2SETTLEMENTFILTSTRING¶
Your receiving wallet address.
iv_currency TYPE /AWS1/WA2CURRENCY /AWS1/WA2CURRENCY¶
The currency of the payment amount.
iv_network TYPE /AWS1/WA2SETTLEMENTFILTSTRING /AWS1/WA2SETTLEMENTFILTSTRING¶
The blockchain network on which the settlement occurred.
iv_transactionid TYPE /AWS1/WA2SETTLEMENTIDSTRING /AWS1/WA2SETTLEMENTIDSTRING¶
The blockchain transaction identifier. You can use this to verify the transaction on a blockchain explorer.
iv_requestid TYPE /AWS1/WA2SETTLEMENTFILTSTRING /AWS1/WA2SETTLEMENTFILTSTRING¶
The WAF request ID associated with this settlement.
iv_sourcename TYPE /AWS1/WA2FILTERSTRING /AWS1/WA2FILTERSTRING¶
The name of the AI bot that made the payment.
iv_organization TYPE /AWS1/WA2FILTERSTRING /AWS1/WA2FILTERSTRING¶
The organization associated with the AI bot.
iv_sourcecategory TYPE /AWS1/WA2FILTERSTRING /AWS1/WA2FILTERSTRING¶
The category of the AI bot source.
iv_intent TYPE /AWS1/WA2FILTERSTRING /AWS1/WA2FILTERSTRING¶
The declared intent of the AI bot request.
iv_verified TYPE /AWS1/WA2VERIFIEDSTATUS /AWS1/WA2VERIFIEDSTATUS¶
Whether the AI bot's identity was verified.
iv_contentpath TYPE /AWS1/WA2FILTERSTRING /AWS1/WA2FILTERSTRING¶
The content path that was accessed.
iv_webaclarn TYPE /AWS1/WA2RESOURCEARN /AWS1/WA2RESOURCEARN¶
The ARN of the web ACL that processed the request.
iv_requesttimestamp TYPE /AWS1/WA2TIMESTAMP /AWS1/WA2TIMESTAMP¶
The timestamp of the original web request.
Queryable Attributes¶
Timestamp¶
The timestamp when the settlement was recorded.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_TIMESTAMP() |
Getter for TIMESTAMP, with configurable default |
ASK_TIMESTAMP() |
Getter for TIMESTAMP w/ exceptions if field has no value |
HAS_TIMESTAMP() |
Determine if TIMESTAMP has a value |
PayerAddress¶
The blockchain wallet address of the paying AI agent.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_PAYERADDRESS() |
Getter for PAYERADDRESS, with configurable default |
ASK_PAYERADDRESS() |
Getter for PAYERADDRESS w/ exceptions if field has no value |
HAS_PAYERADDRESS() |
Determine if PAYERADDRESS has a value |
WalletAddress¶
Your receiving wallet address.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_WALLETADDRESS() |
Getter for WALLETADDRESS, with configurable default |
ASK_WALLETADDRESS() |
Getter for WALLETADDRESS w/ exceptions if field has no value |
HAS_WALLETADDRESS() |
Determine if WALLETADDRESS has a value |
Status¶
The status of the settlement. Possible values:
SETTLED- The payment was successfully settled on the blockchain and the transfer from the payer's wallet to the publisher's wallet is confirmed. TheTransactionIdfield contains the on-chain transaction hash. Content is served to the client.
PENDING- The blockchain transaction has been submitted but not yet confirmed on-chain. This is a transient state that automatically resolves to eitherSETTLEDorFAILED. No action is required. While pending, content is not served and the API returns a 402 response. Clients can retry the request.
FAILED- The payment settlement was attempted but failed. Possible causes include insufficient funds, an expired payment authorization, or a reverted blockchain transaction. ThefailureReasonfield contains a machine-readable error code. Content is not served.
SERVICE_ERROR- Settlement could not be completed due to an internal service issue or an issue with the payment network. Content is not served. The client's payment authorization remains valid and the request can be retried.
SKIPPED_ORIGIN_ERROR- The origin returned a non-2xx response, so settlement was intentionally skipped. The client is not charged.
DUPLICATE- A prior request with the same payment payload has already been settled. This status typically appears when a previous attempt timed out but the payment was ultimately processed. The client is not charged again.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_STATUS() |
Getter for STATUS, with configurable default |
ASK_STATUS() |
Getter for STATUS w/ exceptions if field has no value |
HAS_STATUS() |
Determine if STATUS has a value |
Amount¶
The payment amount in the specified currency.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_AMOUNT() |
Getter for AMOUNT, with configurable default |
ASK_AMOUNT() |
Getter for AMOUNT w/ exceptions if field has no value |
HAS_AMOUNT() |
Determine if AMOUNT has a value |
Currency¶
The currency of the payment amount.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_CURRENCY() |
Getter for CURRENCY, with configurable default |
ASK_CURRENCY() |
Getter for CURRENCY w/ exceptions if field has no value |
HAS_CURRENCY() |
Determine if CURRENCY has a value |
Network¶
The blockchain network on which the settlement occurred.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_NETWORK() |
Getter for NETWORK, with configurable default |
ASK_NETWORK() |
Getter for NETWORK w/ exceptions if field has no value |
HAS_NETWORK() |
Determine if NETWORK has a value |
TransactionId¶
The blockchain transaction identifier. You can use this to verify the transaction on a blockchain explorer.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_TRANSACTIONID() |
Getter for TRANSACTIONID, with configurable default |
ASK_TRANSACTIONID() |
Getter for TRANSACTIONID w/ exceptions if field has no value |
HAS_TRANSACTIONID() |
Determine if TRANSACTIONID has a value |
RequestId¶
The WAF request ID associated with this settlement.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_REQUESTID() |
Getter for REQUESTID, with configurable default |
ASK_REQUESTID() |
Getter for REQUESTID w/ exceptions if field has no value |
HAS_REQUESTID() |
Determine if REQUESTID has a value |
SourceName¶
The name of the AI bot that made the payment.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_SOURCENAME() |
Getter for SOURCENAME, with configurable default |
ASK_SOURCENAME() |
Getter for SOURCENAME w/ exceptions if field has no value |
HAS_SOURCENAME() |
Determine if SOURCENAME has a value |
Organization¶
The organization associated with the AI bot.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_ORGANIZATION() |
Getter for ORGANIZATION, with configurable default |
ASK_ORGANIZATION() |
Getter for ORGANIZATION w/ exceptions if field has no value |
HAS_ORGANIZATION() |
Determine if ORGANIZATION has a value |
SourceCategory¶
The category of the AI bot source.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_SOURCECATEGORY() |
Getter for SOURCECATEGORY, with configurable default |
ASK_SOURCECATEGORY() |
Getter for SOURCECATEGORY w/ exceptions if field has no valu |
HAS_SOURCECATEGORY() |
Determine if SOURCECATEGORY has a value |
Intent¶
The declared intent of the AI bot request.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_INTENT() |
Getter for INTENT, with configurable default |
ASK_INTENT() |
Getter for INTENT w/ exceptions if field has no value |
HAS_INTENT() |
Determine if INTENT has a value |
Verified¶
Whether the AI bot's identity was verified.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_VERIFIED() |
Getter for VERIFIED |
ContentPath¶
The content path that was accessed.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_CONTENTPATH() |
Getter for CONTENTPATH, with configurable default |
ASK_CONTENTPATH() |
Getter for CONTENTPATH w/ exceptions if field has no value |
HAS_CONTENTPATH() |
Determine if CONTENTPATH has a value |
WebAclArn¶
The ARN of the web ACL that processed the request.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_WEBACLARN() |
Getter for WEBACLARN, with configurable default |
ASK_WEBACLARN() |
Getter for WEBACLARN w/ exceptions if field has no value |
HAS_WEBACLARN() |
Determine if WEBACLARN has a value |
RequestTimestamp¶
The timestamp of the original web request.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_REQUESTTIMESTAMP() |
Getter for REQUESTTIMESTAMP, with configurable default |
ASK_REQUESTTIMESTAMP() |
Getter for REQUESTTIMESTAMP w/ exceptions if field has no va |
HAS_REQUESTTIMESTAMP() |
Determine if REQUESTTIMESTAMP has a value |
Public Local Types In This Class¶
Internal table types, representing arrays and maps of this class, are defined as local types:
TT_SETTLEMENTRECORDLIST¶
TYPES TT_SETTLEMENTRECORDLIST TYPE STANDARD TABLE OF REF TO /AWS1/CL_WA2SETTLEMENTRECORD WITH DEFAULT KEY
.