← Документація / Посібники
Імпорт із Stripe
Експортуйте платежі зі Stripe, налаштуйте шаблон імпорту, а Nordlet облікує комісії, клієнтів, рахунки та повернення котів.
Цей посібник охоплює імпорт файлів із платежами Stripe через шаблон імпорту: що експортувати, як налаштувати шаблон та що створюється під час імпорту. Відомості про API наведено в розділі Банківські імпорти та імпорти платежів.
1. Експорт файлу платежів зі Stripe
В панелі керування Stripe відкрийте Payments → Export, виберіть діапазон дат, залиште позначку All columns і додайте стовпці метаданих, які ви використовуєте (Stripe експортує кожен ключ метаданих як стовпчик із назвою <key> (metadata), наприклад orderNo (metadata)). Завантажте CSV-файл. Працює експорт як із реального середовища (live), так і з тестового (test-mode).
Рядки, за якими не відбувалося руху коштів, під час імпорту пропускаються: спроби платежу, які завершилися невдало, були скасовані або все ще потребують способу оплати, а також платежі (charges), які ніколи не були списані (captured).
2. Створення банківського рахунку для Stripe
Кожен імпорт надходить на банківський рахунок. У розділі Bank натисніть New bank account, виберіть Type: Stripe (рахунок Stripe не має IBAN), назвіть його, наприклад, "Stripe", виберіть валюту, в якій ви приймаєте платежі, та відповідний рахунок обліку (ledger account). Баланс Stripe поводиться як банківський рахунок: платежі надходять, комісії списуються, а виплати (payouts) переносять баланс на ваш реальний банківський рахунок.
3. Створення шаблону імпорту
У розділі Bank → Import templates натисніть New import template, виберіть тип Type: Stripe та введіть назву шаблону.
Поля (Fields). Кожен стовпчик експорту Stripe відповідає одному рядку. Прапорець Required in file означає, що стовпчик має бути присутнім у завантаженому файлі; файл, у якому бракує обов'язкового стовпчика, відхиляється із зазначенням відсутніх назв. 19 стовпчиків із префіксом Card … за замовчуванням не мають позначки, оскільки Stripe пропускає їх для деяких облікових записів.
Рахунок обліку (Ledger account). Рядки, що містять кошти (Amount, Fee, Amount Refunded), можна призначити на рахунок обліку — наявний або новий, створений безпосередньо з цього рядка. Кожна операція, згенерована з призначеного поля, проводиться в момент імпорту: надходження коштів дебетує банківський рахунок Stripe і кредитує призначений рахунок, виплата робить навпаки, а банківська транзакція позначається як зіставлена з цим записом журналу (journal entry). Стандартне налаштування:
| Поле | Рахунок | Ефект |
|---|---|---|
Fee |
рахунок витрат на комісію PSP (6800 у стандартному план рахунків) | Кожна комісія Stripe обліковується як витрата |
Amount |
залиште "Not posted" | Платежі залишаються відкритими для зіставлення з рахунками (див. крок 5) |
Amount Refunded |
залиште "Not posted" | Повернення обробляються через кредитові ноти (див. крок 5) |
Створення відсутніх клієнтів (Create missing customers). Установіть цей прапорець у рядку Customer Email. Для кожної електронної адреси у файлі, якої ще немає серед контрагентів, створюється клієнт: ім'я береться з поля Customer Description (або email, якщо воно порожнє), а адреса — зі стовпчиків Card Address …, якщо вони заповнені. Наявні контрагенти розпізнаються за електронною поштою без урахування регістру, тому нічого не створюється двічі.
Створення контрагента Stripe (Create partner Stripe). Установіть цей прапорець у рядку Fee. Імпорт один раз створює контрагента-постачальника з назвою Stripe (наявний контрагент із такою назвою використовується повторно) і записує кожну комісію в журнал із контрагентом Stripe, щоб в обліку комісій було видно, кому здійснено платіж.
Поля метаданих (Metadata fields). Додайте по одному рядку для кожного ключа метаданих, який має зчитувати імпорт, наприклад orderNo. Для цих рядків можна встановити два прапорці:
- Створення або зв'язування рахунків (Create or link invoices) — позначає ключ, який ідентифікує замовлення (крок 5). Цей прапорець може бути лише в одному рядку. Поруч з'являється ставка ПДВ для створених рахунків та необов'язкове поле Каталожний елемент (Catalog item): якщо вибрано, кожен рядок рахунку, створений імпортом, посилається на цей продукт чи послугу, тому дохід зараховується на рахунок товару; текст рядка все одно береться з платежу.
- Ознака компанії (Company flag) — позначає ключ, значення якого вказує, що покупцем є компанія (
true,1,yes,company,businessабоb2b). Клієнти, створені на основі таких платежів, є контрагентами типу "компанія"; усі інші є фізичними особами.
Збережіть шаблон.
4. Імпорт файлу
У розділі Bank виберіть банківський рахунок Stripe, шаблон і файл, а потім натисніть Import. Кнопка відображає індикатор завантаження, доки імпорт не завершиться; обробка великого файлу може зайняти кілька хвилин, оскільки рахунки виставляються по черзі. У рядку результатів зазначається, скільки транзакцій було імпортовано, скільки вже існувало, скільки операцій було проведено та скільки клієнтів, рахунків і кредитових нот створено. Попередження містять перелік замовлень, які не вдалося обробити, і причини цього.
Повторний імпорт того самого файлу є безпечним: транзакції розпізнаються за ідентифікатором платежу Stripe (charge id), клієнти — за електронною поштою, а замовлення — за значенням їхніх метаданих.
5. Що робить функція "Створення або зв'язування рахунків"
Платежі та повернення групуються за значенням вибраного ключа метаданих (номером замовлення).
- Якщо рахунок на продаж для такого значення вже існує — замовлення клієнта (sales order), чиїм зовнішнім посиланням є це значення, або рахунок, чий номер збігається із цим значенням — платежі зіставляються з ним як оплатні транзакції.
- В іншому випадку для клієнта створюється рахунок на продаж: один рядок на кожен платіж, із текстом рядка платежу та сумою платежу як ціною з урахуванням ПДВ за ставкою шаблону, датований днем першого платежу. Рахунок одразу виставляється та проводиться, а платежі зіставляються з ним, тому він відображається як оплачений. Замовлення клієнта з каналом
stripeреєструється з номером замовлення, щоб під час наступного імпорту відбувалося зв'язування, а не створення нового запису. - Кожне повернення в групі перетворюється на виставлену кредитову ноту (credit note) до цього рахунку на суму повернення, і транзакція повернення зіставляється з нею.
Групи без електронної пошти клієнта, з платежами в різних валютах, або чий наявний рахунок досі перебуває в статусі чернетки чи вже сплачений, пропускаються й заносяться до списку попереджень. Їхні транзакції залишаються незіставленими в розділі Bank → Transactions.
Номери рахунків беруться із серії поточного року навіть для платежів, датованих попередніми роками, тому історичні імпорти не конфліктують із наявними номерами.
6. Шість необов'язкових полів у нижній частині шаблону
Більшість компаній залишають усі шість полів порожніми, і імпорт працює абсолютно однаково. Вони існують для двох вузьких сценаріїв: якщо ви хочете реєструвати бронювання карток як документи або якщо ви збираєте кошти, які частково належать комусь іншому.
Чому випадаючі списки виглядають порожніми
Три випадаючі списки "типів операцій" містять типи операцій, які вашій компанії створено в розділі Account → Operation types. Якщо ви ще не створили жодного типу, список буде порожнім. Це не помилка; спочатку створіть тип операції або залиште поле порожнім.
Випадаючий список Lender metadata field містить назви стовпчиків метаданих, які ви ввели у списку Metadata fields вище в цій самій формі. Спочатку додайте поле метаданих там, і воно з'явиться тут.
Мітка часткового повернення та Мітка повного повернення (Partial refund label і Full refund label)
Коли імпорт створює кредитову ноту для повернення котів, ці поля визначають слово, яке друкується у верхній частині PDF-файлу цієї кредитової ноти.
| Ситуація | Використовуване слово | За замовчуванням |
|---|---|---|
| Повернення менше за загальну суму рахунку | Мітка часткового повернення | DEPOZITAS |
| Повернення дорівнює загальній сумі рахунку | Мітка повного повернення | ANULIAVIMAS |
Змінюйте їх лише в тому разі, якщо на таких документах вашої компанії мають друкуватися інші слова. Вони не впливають на нумерацію та бухоблік.
Тип операції авторизації (Authorization operation type)
Авторизація картки — це кошти, зарезервовані на картці клієнта, які ви ще не списали. В експорті Stripe такі рядки мають значення Captured, встановлене в положення false. Зазвичай імпорт ігнорує їх, оскільки жодного руху коштів не відбувалося.
Заповніть це поле, і кожен такий рядок перетвориться на виставлений торговий документ із використанням цього типу операції та серії документів, на яку вказує цей тип операції. Залиште поле порожнім, і ці рядки будуть пропущені, а результат імпорту покаже попередження "authorization(s) skipped: template has no authorization operation type".
Якщо ви точно не знаєте, що ваш бізнес зобов'язаний відображати резервування як документи, залиште це поле порожнім.
Тип операції виплати, Тип операції комісії та Поле метаданих позикодавця (Payout operation type, Commission operation type, Lender metadata field)
Пропустіть цей розділ повністю, якщо ваш бізнес не збирає кошти, які належать комусь іншому — наприклад, торговельний майданчик (marketplace), що виплачує кошти продавцям, або платформа, що виплачує кошти позикодавцям. Звичайний магазин ніколи не заповнює ці поля.
Stripe подає ці дані у двох файлах. Експорт платежів (payments) показує, скільки заплатив кожен клієнт. Окремий експорт переказів (transfers) вказує, яку частину цих коштів ви перевели іншій стороні. Імпорту потрібні обидва файли, щоб обчислити, що залишилося у вас.
У розділі Bank форма імпорту відображає поле файлу Stripe transfers export, якщо існує принаймні один шаблон Stripe; виберіть файл переказів там поруч із файлом платежів. Через API це відповідає полю transfersCsv у запиті bank/statements/import.
Коли наявні обидва файли:
| Поле | Що воно робить |
|---|---|
| Тип операції виплати (Payout operation type) | Для кожного переказу іншій стороні створюється один запис обліку на переказану суму. Рахунки дебету та кредиту беруться з цього типу операції. Якщо залишити поле порожнім, натомість будуть використовуватися правила проводок за зобов'язаннями перед продавцями та постачальниками. |
| Тип операції комісії (Commission operation type) | Частина коштів, яка залишається у вас, обчислена як сума платежу за мінусом комісії Stripe та мінусом переказаної суми, і записується лише тоді, коли вона більша за нуль. Рахунки беруться з цього типу операції, інакше — з правил проводок за зобов'язаннями перед продавцями та доходами від комісій. |
| Поле метаданих позикодавця (Lender metadata field) | Назва стовпчика метаданих Stripe, де вказано, кому пішли кошти. Контрагент із таким значенням створюється або використовується повторно, якщо він уже існує, і призначається для обох зазначених вище записів. Якщо залишити поле порожнім або для рядка без такого значення, з'явиться попередження "lender not identified", і запис буде створено без контрагента. |
Якщо обидва поля типів операцій залишаться порожніми, жодних записів щодо переказів чи комісій створено не буде, незалежно від інших налаштувань.
7. Виплати на ваш банківський рахунок
Експорт платежів не містить рядків виплат, тому кошти, які Stripe надсилає на ваш реальний банківський рахунок, обліковуються на підставі звіту про виплати. В панелі керування Stripe відкрийте Reports → Payouts → Payout reconciliation, itemized, завантажте звіт та імпортуйте його в розділі Bank → Settlements на ваш реальний банківський рахунок, після чого проведіть кожну виплату.
Для кожного рядка виплати, чиї платежі, комісії або повернення цей імпорт уже заніс на банківський рахунок Stripe, проведення переносить чисту суму рядка з банківського рахунку Stripe на реальний банківський рахунок. Комісії та платежі за рахунками не обліковуються вдруге. Рядки виплат від Stripe, які цей імпорт ніколи не бачив, обліковуються так, як описано в розділі Банківські імпорти та імпорти платежів.
Кожна виплата показує значення Difference to imported payments: різницю між сумою, переказаною виплатою, і залишком на банківському рахунку Stripe за тими самими платежами та поверненнями. Нуль означає, що виплата повністю закриває сальдо рахунку Stripe. Рядок із різницею або з рухом на рахунку Stripe, який досі не проведено, підраховується в полі Lines to check. Експорт платежів містить лише загальну суму повернення за кожним платежем, тому всі рядки повернень одного платежу порівнюються разом із цією загальною сумою.
Якщо виплату було проведено до того, як файл платежів було імпортовано, імпорт пропускає платежі, комісії та повернення цієї виплати та зазначає її в попередженнях.
8. Де шукати результати пізніше
- Bank → Transactions — усі імпортовані рухи котів; зіставлені з них посилаються на рахунок або запис журналу.
- Invoices — створені рахунки та кредитові ноти з номером замовлення в примітках.
- Partners — створені клієнти.
- Ledger → Journal — проводки для комісій, платежів і рахунків.
Біллінг (Billing)
Файли розміром до 10 МБ і кількістю рухів до 50 000. Кожні 10 імпортованих рухів зараховуються як один запит API.