# PaymentApi

## PaymentApi

All URIs are relative to *<https://vault-api.usemoon.ai>*

| Method                                                          | HTTP request                         | Description |
| --------------------------------------------------------------- | ------------------------------------ | ----------- |
| [**createPaymentIntentConfig**](#createPaymentIntentConfig)     | **POST** /payment/config             |             |
| [**deletePaymentIntentConfig**](#deletePaymentIntentConfig)     | **DELETE** /payment/config/{id}      |             |
| [**getAllPaymentIntentConfigs**](#getAllPaymentIntentConfigs)   | **GET** /payment/config              |             |
| [**getOnePaymentIntentConfigs**](#getOnePaymentIntentConfigs)   | **GET** /payment/config/{id}         |             |
| [**moralisWebhook**](#moralisWebhook)                           | **POST** /payment/webhook/{id}       |             |
| [**paymentCreatePaymentIntent**](#paymentCreatePaymentIntent)   | **POST** /payment                    |             |
| [**paymentDeletePaymentIntent**](#paymentDeletePaymentIntent)   | **DELETE** /payment/{id}             |             |
| [**paymentGetAllPaymentIntents**](#paymentGetAllPaymentIntents) | **GET** /payment                     |             |
| [**paymentGetAvailableChains**](#paymentGetAvailableChains)     | **GET** /payment/chains              |             |
| [**paymentGetPaymentIntent**](#paymentGetPaymentIntent)         | **GET** /payment/{id}                |             |
| [**paymentUpdatePaymentIntent**](#paymentUpdatePaymentIntent)   | **PUT** /payment/{id}                |             |
| [**tatumWebhook**](#tatumWebhook)                               | **POST** /payment/webhook/tatum/{id} |             |
| [**updatePaymentIntentConfig**](#updatePaymentIntentConfig)     | **PUT** /payment/config/{id}         |             |

## **createPaymentIntentConfig**

> kotlin.Any createPaymentIntentConfig(authorization, body)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = PaymentApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
val body : kotlin.Any =  // kotlin.Any | 
try {
    val result : kotlin.Any = apiInstance.createPaymentIntentConfig(authorization, body)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling PaymentApi#createPaymentIntentConfig")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling PaymentApi#createPaymentIntentConfig")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type              | Description | Notes |
| ----------------- | ----------------- | ----------- | ----- |
| **authorization** | **kotlin.String** |             |       |
| **body**          | **kotlin.Any**    |             |       |

#### Return type

[**kotlin.Any**](https://github.com/moon-up/docs-sdk/blob/main/kotlin/docs/kotlin.Any.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json

## **deletePaymentIntentConfig**

> PaymentIntentResponse deletePaymentIntentConfig(authorization, id)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = PaymentApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
val id : kotlin.String = id_example // kotlin.String | 
try {
    val result : PaymentIntentResponse = apiInstance.deletePaymentIntentConfig(authorization, id)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling PaymentApi#deletePaymentIntentConfig")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling PaymentApi#deletePaymentIntentConfig")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type              | Description | Notes |
| ----------------- | ----------------- | ----------- | ----- |
| **authorization** | **kotlin.String** |             |       |
| **id**            | **kotlin.String** |             |       |

#### Return type

[**PaymentIntentResponse**](/sdks/kotlin/paymentintentresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **getAllPaymentIntentConfigs**

> kotlin.collections.List\<PaymentIntentResponse> getAllPaymentIntentConfigs(authorization)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = PaymentApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
try {
    val result : kotlin.collections.List<PaymentIntentResponse> = apiInstance.getAllPaymentIntentConfigs(authorization)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling PaymentApi#getAllPaymentIntentConfigs")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling PaymentApi#getAllPaymentIntentConfigs")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type              | Description | Notes |
| ----------------- | ----------------- | ----------- | ----- |
| **authorization** | **kotlin.String** |             |       |

#### Return type

[**kotlin.collections.List\<PaymentIntentResponse>**](/sdks/kotlin/paymentintentresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **getOnePaymentIntentConfigs**

> PaymentIntentResponse getOnePaymentIntentConfigs(authorization, id)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = PaymentApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
val id : kotlin.String = id_example // kotlin.String | 
try {
    val result : PaymentIntentResponse = apiInstance.getOnePaymentIntentConfigs(authorization, id)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling PaymentApi#getOnePaymentIntentConfigs")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling PaymentApi#getOnePaymentIntentConfigs")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type              | Description | Notes |
| ----------------- | ----------------- | ----------- | ----- |
| **authorization** | **kotlin.String** |             |       |
| **id**            | **kotlin.String** |             |       |

#### Return type

[**PaymentIntentResponse**](/sdks/kotlin/paymentintentresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **moralisWebhook**

> kotlin.Any moralisWebhook(id, iwebhook)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = PaymentApi()
val id : kotlin.String = id_example // kotlin.String | 
val iwebhook : IWebhook =  // IWebhook | 
try {
    val result : kotlin.Any = apiInstance.moralisWebhook(id, iwebhook)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling PaymentApi#moralisWebhook")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling PaymentApi#moralisWebhook")
    e.printStackTrace()
}
```

#### Parameters

| Name         | Type                                     | Description | Notes |
| ------------ | ---------------------------------------- | ----------- | ----- |
| **id**       | **kotlin.String**                        |             |       |
| **iwebhook** | [**IWebhook**](/sdks/kotlin/iwebhook.md) |             |       |

#### Return type

[**kotlin.Any**](https://github.com/moon-up/docs-sdk/blob/main/kotlin/docs/kotlin.Any.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json

## **paymentCreatePaymentIntent**

> PaymentIntentResponse paymentCreatePaymentIntent(authorization, createPaymentIntentInput)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = PaymentApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
val createPaymentIntentInput : CreatePaymentIntentInput =  // CreatePaymentIntentInput | 
try {
    val result : PaymentIntentResponse = apiInstance.paymentCreatePaymentIntent(authorization, createPaymentIntentInput)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling PaymentApi#paymentCreatePaymentIntent")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling PaymentApi#paymentCreatePaymentIntent")
    e.printStackTrace()
}
```

#### Parameters

| Name                         | Type                                                                     | Description | Notes |
| ---------------------------- | ------------------------------------------------------------------------ | ----------- | ----- |
| **authorization**            | **kotlin.String**                                                        |             |       |
| **createPaymentIntentInput** | [**CreatePaymentIntentInput**](/sdks/kotlin/createpaymentintentinput.md) |             |       |

#### Return type

[**PaymentIntentResponse**](/sdks/kotlin/paymentintentresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json

## **paymentDeletePaymentIntent**

> PaymentIntentResponse paymentDeletePaymentIntent(authorization, id)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = PaymentApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
val id : kotlin.String = id_example // kotlin.String | 
try {
    val result : PaymentIntentResponse = apiInstance.paymentDeletePaymentIntent(authorization, id)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling PaymentApi#paymentDeletePaymentIntent")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling PaymentApi#paymentDeletePaymentIntent")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type              | Description | Notes |
| ----------------- | ----------------- | ----------- | ----- |
| **authorization** | **kotlin.String** |             |       |
| **id**            | **kotlin.String** |             |       |

#### Return type

[**PaymentIntentResponse**](/sdks/kotlin/paymentintentresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **paymentGetAllPaymentIntents**

> kotlin.collections.List\<PaymentIntentResponse> paymentGetAllPaymentIntents(authorization)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = PaymentApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
try {
    val result : kotlin.collections.List<PaymentIntentResponse> = apiInstance.paymentGetAllPaymentIntents(authorization)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling PaymentApi#paymentGetAllPaymentIntents")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling PaymentApi#paymentGetAllPaymentIntents")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type              | Description | Notes |
| ----------------- | ----------------- | ----------- | ----- |
| **authorization** | **kotlin.String** |             |       |

#### Return type

[**kotlin.collections.List\<PaymentIntentResponse>**](/sdks/kotlin/paymentintentresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **paymentGetAvailableChains**

> kotlin.collections.List\<kotlin.String> paymentGetAvailableChains()

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = PaymentApi()
try {
    val result : kotlin.collections.List<kotlin.String> = apiInstance.paymentGetAvailableChains()
    println(result)
} catch (e: ClientException) {
    println("4xx response calling PaymentApi#paymentGetAvailableChains")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling PaymentApi#paymentGetAvailableChains")
    e.printStackTrace()
}
```

#### Parameters

This endpoint does not need any parameter.

#### Return type

**kotlin.collections.List\<kotlin.String>**

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **paymentGetPaymentIntent**

> PaymentIntentResponse paymentGetPaymentIntent(authorization, id)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = PaymentApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
val id : kotlin.String = id_example // kotlin.String | 
try {
    val result : PaymentIntentResponse = apiInstance.paymentGetPaymentIntent(authorization, id)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling PaymentApi#paymentGetPaymentIntent")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling PaymentApi#paymentGetPaymentIntent")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type              | Description | Notes |
| ----------------- | ----------------- | ----------- | ----- |
| **authorization** | **kotlin.String** |             |       |
| **id**            | **kotlin.String** |             |       |

#### Return type

[**PaymentIntentResponse**](/sdks/kotlin/paymentintentresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **paymentUpdatePaymentIntent**

> PaymentIntentResponse paymentUpdatePaymentIntent(authorization, id, createPaymentIntentInput)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = PaymentApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
val id : kotlin.String = id_example // kotlin.String | 
val createPaymentIntentInput : CreatePaymentIntentInput =  // CreatePaymentIntentInput | 
try {
    val result : PaymentIntentResponse = apiInstance.paymentUpdatePaymentIntent(authorization, id, createPaymentIntentInput)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling PaymentApi#paymentUpdatePaymentIntent")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling PaymentApi#paymentUpdatePaymentIntent")
    e.printStackTrace()
}
```

#### Parameters

| Name                         | Type                                                                     | Description | Notes |
| ---------------------------- | ------------------------------------------------------------------------ | ----------- | ----- |
| **authorization**            | **kotlin.String**                                                        |             |       |
| **id**                       | **kotlin.String**                                                        |             |       |
| **createPaymentIntentInput** | [**CreatePaymentIntentInput**](/sdks/kotlin/createpaymentintentinput.md) |             |       |

#### Return type

[**PaymentIntentResponse**](/sdks/kotlin/paymentintentresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json

## **tatumWebhook**

> kotlin.Any tatumWebhook(id, tatumTransactionEvent)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = PaymentApi()
val id : kotlin.String = id_example // kotlin.String | 
val tatumTransactionEvent : TatumTransactionEvent =  // TatumTransactionEvent | 
try {
    val result : kotlin.Any = apiInstance.tatumWebhook(id, tatumTransactionEvent)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling PaymentApi#tatumWebhook")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling PaymentApi#tatumWebhook")
    e.printStackTrace()
}
```

#### Parameters

| Name                      | Type                                                               | Description | Notes |
| ------------------------- | ------------------------------------------------------------------ | ----------- | ----- |
| **id**                    | **kotlin.String**                                                  |             |       |
| **tatumTransactionEvent** | [**TatumTransactionEvent**](/sdks/kotlin/tatumtransactionevent.md) |             |       |

#### Return type

[**kotlin.Any**](https://github.com/moon-up/docs-sdk/blob/main/kotlin/docs/kotlin.Any.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json

## **updatePaymentIntentConfig**

> PaymentIntentResponse updatePaymentIntentConfig(authorization, id, body)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = PaymentApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
val id : kotlin.String = id_example // kotlin.String | 
val body : kotlin.Any =  // kotlin.Any | 
try {
    val result : PaymentIntentResponse = apiInstance.updatePaymentIntentConfig(authorization, id, body)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling PaymentApi#updatePaymentIntentConfig")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling PaymentApi#updatePaymentIntentConfig")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type              | Description | Notes |
| ----------------- | ----------------- | ----------- | ----- |
| **authorization** | **kotlin.String** |             |       |
| **id**            | **kotlin.String** |             |       |
| **body**          | **kotlin.Any**    |             |       |

#### Return type

[**PaymentIntentResponse**](/sdks/kotlin/paymentintentresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.usemoon.ai/sdks/kotlin/paymentapi.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
