# მოთხოვნა

მეთოდის საშუალებით შესაძლებელია, ეროვნულ ვალუტაში, ერთი ან რამდენიმე ინდივიდუალური დოკუმენტის შექმნა.

## პარამეტრები

- `Nomination` — string, required

  გადარიცხვის საფუძველი, დანიშნულება / მაქსიმუმ 250 სიმბოლო

- `PayerInn` — string, max-length: 11, required

  გადამხდელი ფიზიკური პირის პირადი ნომერი ან იურიდიული პირის საიდენტიფიკაციო კოდი. ივსება მხოლოდ ბიუჯეტის სასარგებლოდ მესამე პირის ნაცვლად/მაგივრად გადარიცხვის შესრულებისას და ეთითება მესამე პირის საიდენტიფიკაციო კოდი.

- `PayerName` — string

  გადამხდელის დასახელება. ივსება მხოლოდ ბიუჯეტის სასარგებლოდ მესამე პირის ნაცვლად/მაგივრად გადარიცხვის შესრულებისას და ეთითება მესამე პირის საიდენტიფიკაციო კოდი.

- `DispatchType` — string

  გადარიცხვის მეთოდი. მხოლოდ გამავალი გადარიცხვებისთვის. აუცილებელი ველი. იღებს შემდეგ მნიშვნელობებს:
  - BULK - სტანდარტული გადარიცხვა. შესაძლებელია მხოლოდ 10 000 ლარამდე ოპერაციის დროს.
  - MT103 ინდივიდუალური გადარიცხვა.

- `ValueDate` — date, required

  საბუთის ბანკში გატარების თარიღი.

- `IsSalary` — boolean

  არასავალდებულო ველი, სასურველია შეივსოს სახელფასო გადარიცხვისას:
  - TRUE - ხელფასის გადარიცხვისას.
  - FALSE - სხვა შემთხვევაში.

- `UniqueId` — globally unique identifier, required

  გარე (გამომძახებელი) სისტემის უნიკალური იდენტიფიკატორი (Guid).

- `Amount` — decimal number, required

  დოკუმენტის თანხა.

- `DocumentNo` — string, required

  დოკუმენტის ნომერი, მაქს. სიგრძე = 16.

- `SourceAccountNumber` — string, required

  გამგზავნის ანგარიში, ანგარიშიდან / მხოლოდ IBAN-ის ფორმატი, მაგ: GE11BG1111111111111111GEL

- `BeneficiaryAccountNumber` — string, required

  მიმღების ანგარიში.
  საქართველოს ბანკში ან სხვა ბანკში ეროვნული ვალუტის გადარიცხვისას  – მხოლოდ IBAN-ის ფორმატი.
  ხაზინაში გადარიცხვისას - სახაზინო კოდი.
  უცხოური ვალუტის გადარიცხვისას - ანგარიშის ნომერი არსებული ფორმატით.

- `BeneficiaryBankCode` — string, required

  მიმღები ბანკის RTGS კოდი  (სავალდებულო).

- `BeneficiaryInn` — string, required

  ფიზიკური პირის შემთხვევაში მიმღების პირადი  ნომერი, იურიდიული პირის შემთხვევაში მისი საიდენტიფიკაციო კოდი.

- `CheckInn` — boolean

  “საქართველოს ბანკში“ გადარიცხვის დროს, შემოწმდეს თუ არა მიმღების ანგარიშის თავსებადობა მის საიდენტიფიკაციო კოდთან. იღებს ორ მნიშვნელობას:
  - `TRUE` - დამატებით შემოწმდება მიმღების ანგარიშის ნომრის მითითებული საიდენტიფიკაციო კოდით. თუ ანგარიშის ნომერი არ ეკუთვნის მითითებულ საიდენტიფიკაციო კოდზე არსებულ ანგარიშს, დაფიქსირდება შეცდომა.
  - `FALSE` - გადარიცხვა შემოწმდება სტანდარტული წესით.
  სხვა ბანკში გადარიცხვისას ამ ველის მნიშვნელობა უნდა იყოს `False`.

- `BeneficiaryName` — string

  მიმღების დასახელება.

- `CommissionAccountNumber` — string

  საკომისიოს ანგარიში, მხოლოდ ინდივიდუალური გადარიცხვისთვის.

  IBAN-ის ფორმატი, მაგ: GE11BG1111111111111111GEL, ანგარიშის არასწორედ მითითების შემთხვევაში საკომისიო (არსებობის შეთხვევაში) ჩამოიწღება იმ ანგარიშიდან რომლიდანაც გადარიცხვა ხდება

- `IsPayerResident` — boolean

  გადამხდელის რეზიდენტობა. ლოგიკური მნიშვნელობა (Boolean): True — რეზიდენტი, False — არარეზიდენტი.

  ივსება მხოლოდ ბიუჯეტის სასარგებლოდ მესამე პირის ნაცვლად გადარიცხვის შესრულებისას. ამ შემთხვევაში, მიუთითეთ მესამე პირის (ვის ნაცვლადაც იხდით) რეზიდენტობა.

- `PayerTaxRegistrationCode` — string

  რეგისტრაციის კოდი.

  ივსება მხოლოდ ბიუჯეტის სასარგებლოდ მესამე პირის ნაცვლად გადარიცხვის შესრულებისას.

- `PayerPenaltyNumber` — string

  ოქმის ნომერი.

  ივსება მხოლოდ ბიუჯეტის სასარგებლოდ მესამე პირის ნაცვლად გადარიცხვის შესრულებისას.

- `AdditionalInformation` — string

  დამატებითი ინფორმაცია. არ გამოიყენება ეროვნული ვალუტის გადარიცხვისას.

- `AttachmentIds` — array of string

  დანართების ჰეშების სია. თითოეული ჰეში (`externalFileHash`) მიიღება [ფაილის ატვირთვის](../files/upload.md) ენდპოინტიდან. ივსება მხოლოდ მაშინ, თუ დოკუმენტს დანართის მიბმა გსურთ.

- `CheckUniqueId` — boolean

  თუ `true`, დოკუმენტის შექმნამდე შემოწმდება, ბოლო 7 დღის განმავლობაში იმავე `UniqueId`-ით დოკუმენტი უკვე შეიქმნა თუ არა. დუბლიკატის აღმოჩენისას ახალი დოკუმენტი არ იქმნება და ბრუნდება შედეგის კოდი `702`.

**JSON**

```api
POST api/documents/domestic
Content-Type: application/json
```

```json
[
  {
    "Nomination": "sample string 2",
    "PayerInn": "sample string 3",
    "PayerName": "sample string 4",
    "DispatchType": "sample string 5",
    "ValueDate": "2021-06-17T10:31:50.2269037+04:00",
    "IsSalary": true,
    "UniqueId": "066a7743-256a-4b40-b937-78e241dd31ae",
    "Amount": 9.0,
    "DocumentNo": "sample string 10",
    "SourceAccountNumber": "sample string 11",
    "BeneficiaryAccountNumber": "sample string 12",
    "BeneficiaryBankCode": "sample string 13",
    "BeneficiaryInn": "sample string 14",
    "CheckInn": true,
    "BeneficiaryName": "sample string 16",
    "AdditionalInformation": "sample string 17",
    "CommissionAccountNumber": "sample string 18",
    "IsPayerResident": true,
    "PayerTaxRegistrationCode": "sample string 19",
    "PayerPenaltyNumber": "sample string 20",
    "AttachmentIds": ["sample string 21"]
  },
  {
    "Nomination": "sample string 2",
    "PayerInn": "sample string 3",
    "PayerName": "sample string 4",
    "DispatchType": "sample string 5",
    "ValueDate": "2021-06-17T10:31:50.2269037+04:00",
    "IsSalary": true,
    "UniqueId": "066a7743-256a-4b40-b937-78e241dd31ae",
    "Amount": 9.0,
    "DocumentNo": "sample string 10",
    "SourceAccountNumber": "sample string 11",
    "BeneficiaryAccountNumber": "sample string 12",
    "BeneficiaryBankCode": "sample string 13",
    "BeneficiaryInn": "sample string 14",
    "CheckInn": true,
    "BeneficiaryName": "sample string 16",
    "AdditionalInformation": "sample string 17",
    "CommissionAccountNumber": "sample string 18",
    "IsPayerResident": true,
    "PayerTaxRegistrationCode": "sample string 19",
    "PayerPenaltyNumber": "sample string 20",
    "AttachmentIds": ["sample string 21"]
  }
]
```
**XML**

```api
POST api/documents/domestic
Content-Type: application/xml
```

```xml
<ArrayOfDomesticPayment xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CIBApi.Models">
  <DomesticPayment>
    <AdditionalInformation>sample string 17</AdditionalInformation>
    <Amount>9</Amount>
    <BeneficiaryAccountNumber>sample string 12</BeneficiaryAccountNumber>
    <BeneficiaryBankCode>sample string 13</BeneficiaryBankCode>
    <BeneficiaryInn>sample string 14</BeneficiaryInn>
    <BeneficiaryName>sample string 16</BeneficiaryName>
    <CheckInn>true</CheckInn>
    <Currency>GEL</Currency>
    <DocumentNo>sample string 10</DocumentNo>
    <SourceAccountNumber>sample string 11</SourceAccountNumber>
    <UniqueId>a9ee0b25-6d72-4774-b7d0-0c8415fe9ebf</UniqueId>
    <DispatchType>sample string 5</DispatchType>
    <IsSalary>true</IsSalary>
    <Nomination>sample string 2</Nomination>
    <PayerInn>sample string 3</PayerInn>
    <PayerName>sample string 4</PayerName>
    <ValueDate>2021-06-17T11:22:01.4869236+04:00</ValueDate>
    <CommissionAccountNumber>sample string 18</CommissionAccountNumber>
    <IsPayerResident>true</IsPayerResident>
    <PayerTaxRegistrationCode>sample string 19</PayerTaxRegistrationCode>
    <PayerPenaltyNumber>sample string 20</PayerPenaltyNumber>
    <AttachmentIds xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:string>sample string 21</d3p1:string>
    </AttachmentIds>
  </DomesticPayment>
  <DomesticPayment>
    <AdditionalInformation>sample string 17</AdditionalInformation>
    <Amount>9</Amount>
    <BeneficiaryAccountNumber>sample string 12</BeneficiaryAccountNumber>
    <BeneficiaryBankCode>sample string 13</BeneficiaryBankCode>
    <BeneficiaryInn>sample string 14</BeneficiaryInn>
    <BeneficiaryName>sample string 16</BeneficiaryName>
    <CheckInn>true</CheckInn>
    <Currency>GEL</Currency>
    <DocumentNo>sample string 10</DocumentNo>
    <SourceAccountNumber>sample string 11</SourceAccountNumber>
    <UniqueId>a9ee0b25-6d72-4774-b7d0-0c8415fe9ebf</UniqueId>
    <DispatchType>sample string 5</DispatchType>
    <IsSalary>true</IsSalary>
    <Nomination>sample string 2</Nomination>
    <PayerInn>sample string 3</PayerInn>
    <PayerName>sample string 4</PayerName>
    <ValueDate>2021-06-17T11:22:01.4869236+04:00</ValueDate>
    <CommissionAccountNumber>sample string 18</CommissionAccountNumber>
    <IsPayerResident>true</IsPayerResident>
    <PayerTaxRegistrationCode>sample string 19</PayerTaxRegistrationCode>
    <PayerPenaltyNumber>sample string 20</PayerPenaltyNumber>
    <AttachmentIds xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:string>sample string 21</d3p1:string>
    </AttachmentIds>
  </DomesticPayment>
</ArrayOfDomesticPayment>
```

## დაბრუნებული პარამეტრები#

- `UniqueId` — globally unique identifier

  უნიკალური იდენტიფიკატორი (Guid) გარე სისტემაში.

- `UniqueKey` — integer

  დოკუმენტის უნიკალური იდენტიფიკატორი business online-ში.

- `ResultCode` — integer

  ოპერაციის შედეგის კოდი (ლინკით ResultCode გვერდზე).
  [result code](../result/result-codes.md)

- `Match` — decimal number

  შიდა გადარიცხვის დროს, თანხვედრის % თქვენ მიერ აკრეფილი მიმღების დასახელებასთან. იურიდიული პირის შემთხვევაში მოწმდება ბანკში IBAN-ის ანგარიშის მფლობელის დასახელებასთან, ფიზიკური პირის შემთხვევაში კი – სახელთან და გვართან. შედარების შედეგად ბრუნდება დამთხვევის პროცენტული მაჩვენებელი.

**JSON**

```json

[
  {
    "UniqueId": "57adca88-0aff-4eb7-9648-4785106e77f6",
    "UniqueKey": 2,
    "ResultCode": 1,
    "Match": 1.0
  },
  {
    "UniqueId": "57adca88-0aff-4eb7-9648-4785106e77f6",
    "UniqueKey": 2,
    "ResultCode": 1,
    "Match": 1.0
  }
]

```

**XML**

```xml
<ArrayOfDocumentKey xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CIBApi.Models">
  <DocumentKey>
    <Match>1</Match>
    <ResultCode>1</ResultCode>
    <UniqueId>57adca88-0aff-4eb7-9648-4785106e77f6</UniqueId>
    <UniqueKey>2</UniqueKey>
  </DocumentKey>
  <DocumentKey>
    <Match>1</Match>
    <ResultCode>1</ResultCode>
    <UniqueId>57adca88-0aff-4eb7-9648-4785106e77f6</UniqueId>
    <UniqueKey>2</UniqueKey>
  </DocumentKey>
</ArrayOfDocumentKey>
```
