# 2. Define Shipping Cost

## **Define Product Shipping Cost**

<mark style="color:green;">`POST`</mark> `{{Base Adres}}/api/paywall/product/cargocost`

{% hint style="info" %}
**Important:** To use the Define Shipping Cost service, you must include the **apikeyprivate** and **apiclientprivate** parameters in the **Header** section.\
\
[<mark style="color:green;">**PaymentAPI Address**</mark>](/payment-orchestration-integration-document/environment.md)
{% endhint %}

<table><thead><tr><th width="188">Parameter</th><th width="114.57421875">Type</th><th width="156.6015625">Compolsory</th><th width="403">Descripiton</th></tr></thead><tbody><tr><td>apikeyprivate</td><td>string</td><td>Yes</td><td>Private Key obtained from the merchant panel.</td></tr><tr><td>apiclientprivate</td><td>string</td><td>Yes</td><td>Private Client obtained from the merchant panel.</td></tr></tbody></table>

**The parameters to be sent to the service are as follows:**

<table><thead><tr><th width="197">Parameter</th><th width="157">Type</th><th width="131">Compolsory</th><th width="336">Description</th></tr></thead><tbody><tr><td>ProductId</td><td>int</td><td>Yes</td><td>Product ID information</td></tr><tr><td>CargoOwnerType</td><td>int</td><td>Yes</td><td>The party responsible for covering the shipping cost. Must be set carefully. The shipping cost is deducted from the earnings of the respective party.<br><br>See: <a href="/pages/HAEmKzuyVkej9Ejy0vWs">CargoOwnerType</a></td></tr><tr><td>CargoCost</td><td>decimal</td><td>Yes</td><td>Shipping cost</td></tr></tbody></table>

**The example&#x20;**<mark style="color:green;">**JSON**</mark>**&#x20;and&#x20;**<mark style="color:green;">**sample codes**</mark>**&#x20;to be sent to the service are as follows:**

{% tabs %}
{% tab title="JSON" %}
{% code lineNumbers="true" %}

```json5
{
    "ProductId": 2113995,
    "CargoOwnerType": 1,
    "CargoCost": 120
}
```

{% endcode %}
{% endtab %}

{% tab title="C#" %}

```csharp
// Soon
```

{% endtab %}

{% tab title="GO" %}

```go
// Soon
```

{% endtab %}

{% tab title="Java" %}

```java
// Soon
```

{% endtab %}

{% tab title="PHP" %}

```php
// Soon
```

{% endtab %}

{% tab title="Python" %}

```python
// Soon
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
// Soon
```

{% endtab %}

{% tab title="TypeScript" %}

```typescript
// Soon
```

{% endtab %}

{% tab title="Curl" %}

```sh
// Soon
```

{% endtab %}
{% endtabs %}

**Response returned from the service:**

<table><thead><tr><th width="189">Parameter</th><th width="100.33333333333331">Type</th><th>Description</th></tr></thead><tbody><tr><td>ErrorCode</td><td>int</td><td>Error code. Returns '0' if the operation is successful.</td></tr><tr><td>Result</td><td>bool</td><td>Returns a true or false value. Returns 'true' if the operation is successful.</td></tr><tr><td>Message</td><td>string</td><td>If the operation fails, this is the message describing the error, and it supports localization based on the locale parameter.</td></tr><tr><td>Body</td><td>object</td><td>Detailed information about the transaction</td></tr></tbody></table>

{% tabs %}
{% tab title="JSON" %}
{% code lineNumbers="true" %}

```json
{
    "ErrorCode": 0,
    "Result": true,
    "Message": "",
    "Body": {
        "Id": 466721,
        "CurrencyId": 1,
        "CargoOwnerType": 1,
        "CargoCost": 120.00
    }
}
```

{% endcode %}
{% endtab %}
{% endtabs %}


---

# 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://developer.paywall.one/payment-orchestration-integration-document/payment-service/16.-payment-product-management/2.-shipping-cost/2.-define-shipping-cost.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.
