# Оплата при отриманні

Послуга «Оплата при отриманні» або COD (Cash on Delivery) дозволяє оплатити товар безпосередньо при отриманні без потреби здійснювати передоплату. Відправник може додати цей сервіс до відправлення, а одержувач має можливість оплатити товар при отриманні з урахуванням обмежень щодо способу оплати, встановлених для конкретних країн.

{% hint style="warning" %}

### Географічні обмеження

**Міжнародні напрямки:**

* Польща, Чехія, Німеччина, Словаччина → Україна
* Румунія → Молдова (в тестовому режимі)<br>

**Локальні відправки у межах таких країн:**

* Чехія, Польща, Німеччина

В майбутньому планується поширення послуги на інші країни та напрямки доставки: як для відправлень між країнами, так і для внутрішніх у межах Європи.
{% endhint %}

**Доступні способи оплати:**

* Польща, Чехія, Німеччина → Україна: тільки онлайн за допомогою мобільного застосунку Nova Post або за посиланням
* локальні відправки у межах Чехії, Польщі та Німеччини: тільки онлайн в застосунку
* з Румунії в Молдову\*: готівкою, карткою або через банківський рахунок, онлайн за допомогою мобільного застосунку Nova Post

**Основні особливості послуги «Оплата при отриманні»:**

* Одержувач сплачує вартість посилки при отриманні та має можливість оглянути товар перед оплатою.
* Відправник може задавати параметри оплати при отриманні.\
  \
  Параметри оплати включають вибір валюти, що зазначено у договорі, автоматичну конвертацію, платника за комісію за надання послуги COD.

**Платник комісії за послугу фіксується в договорі для всіх посилок:**

* Відправник
* Одержувач

#### Інтеграція послуги «Оплата при отриманні» (COD) за допомогою API

Для інтеграції послуги через API необхідно використовувати блок "services", що містить інформацію про супутні послуги відправлення. Нижче наведено приклад налаштувань для COD.

<details>

<summary>Приклад</summary>

```
"services": [
  {
    "shipmentParcelRowNumber": null,
    "serviceCode": "COD",
    "amount": 10,
    "contractNumber": null,
    "payerType": "Recipient",
    "additionalParameters": {
      "cod": {
        "cash": null,
        "card": null,
        "bankAccount": {
          "amount": 10,
          "currencyCode": "PLN",
          "bankAccountId": "1234567890",
          "bankAccountName": "PL12345678901234567890123456",
          "description": "test S",
          "commissionPayer": "Recipient"
        }
      }
    }
  }
]
```

</details>

#### Опис полів блоку services

* <mark style="color:$success;">serviceCode:</mark> <mark style="color:$success;">"COD"</mark> — код сервісу, що вказує на наявність послуги «Оплата при отриманні».
* <mark style="color:$success;">amount</mark> — загальна сума, яку одержувач має сплатити в межах послуги COD.
* <mark style="color:$success;">payerType: "Recipient"</mark> — визначає платника послуги, у прикладі це одержувач.
* <mark style="color:$success;">additionalParameters</mark> — додаткові параметри для налаштування COD:
  * <mark style="color:$success;">bankAccount.amount</mark> — сума, яка буде надіслана на рахунок відправника після оплати.
  * <mark style="color:$success;">bankAccount.currencyCode</mark> — валюта транзакції. Визначається за договором відправника.
  * <mark style="color:$success;">bankAccount.bankAccountId</mark> та <mark style="color:$success;">bankAccount.bankAccountName</mark> — унікальні ідентифікатори рахунку та його ім'я, на який буде здійснено переказ.
  * <mark style="color:$success;">bankAccount.commissionPayer</mark> — визначає одержувача як платника комісії за сервіс.

#### **Логіка роботи параметрів**

* **Сума:** вказується сума, яку одержувач має сплатити при отриманні. Можлива автоматична конвертація валюти залежно від країни відправника або одержувача.
* **Валюта:** за замовчуванням використовується валюта країни відправника, проте є можливість задати валюту вручну\*.

#### **Переваги та обмеження**

* **Валюта визначається договором**

Типовим є використання валюти країни відправника, однак можна вказати валюту отримувача, але вона повинна бути вказана у договорі.

* **Ручна корекція**

Якщо потрібно уникнути автоматичної конвертації, API дозволяє вказати валюту отримувача вручну\*<br>

* **Гнучкі параметри оплати**

API дозволяє налаштовувати параметри платежу, включаючи вибір способу оплати та налаштування суми.

* **Блокування видачі**

Видача відправлення блокується до моменту оплати, але оглянути товар можна перед його оплатою.

\*функція у розробці


---

# 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://api-portal.novapost.com/metodi-1/metodi/readme/oplata-poslug-dostavki/oplata-pri-otrimanni.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.
