Skip to main content

Payment processing and order tracking with YooKassa and Google Sheets

Workflow preview

Workflow preview
100%
Payment processing and order tracking with YooKassa and Google Sheets preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

Accept YooKassa payments and log transactions in Google Sheets Summary This workflow allows you to accept online payments via YooKassa and log both orders and transactions in Google Sheets β€” all...

Best for

  • CRM automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.respondtowebhook, n8n-nodes-base.stickynote, n8n-nodes-base.webhook, n8n-nodes-base.sort, n8n-nodes-base.googlesheets, n8n-nodes-base.httprequest, n8n-nodes-base.if, n8n-nodes-base.set

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Sergey Skorobogatov.

Original n8n.io source

1.1 Workflow description

Title
Payment processing and order tracking with YooKassa and Google Sheets
Workflow name
Payment processing and order tracking with YooKassa and Google Sheets

Accept YooKassa payments and log transactions in Google Sheets

🧾 Summary

This workflow allows you to accept online payments via YooKassa and log both orders and transactions in Google Sheets β€” all without writing a single line of code. It supports full payment flow: product selection, payment initiation, webhook processing, refund updates, and payment status checks.


πŸ‘₯ Who is this for?

This template is ideal for:

  • Online stores with simple checkout flows
  • Sellers of digital products or info-courses
  • Entrepreneurs using Telegram bots or web forms
  • Anyone needing quick payment integration with Google Sheets tracking

🎯 What problem does this workflow solve?

Setting up online payments usually requires backend infrastructure. This no-code solution automates the entire payment flow:

  • Handles product listing and price retrieval
  • Initiates payments with email and return URL
  • Listens for payment.succeeded and refund.succeeded events
  • Records every action into structured Google Sheets

βš™οΈ What this workflow does

1. GET /products

Returns a sorted list of products from a Google Sheet (products).

2. POST /payment

  • Validates required fields (product_id, email, return_url)
  • Checks email format
  • Fetches product data from products
  • Generates a unique idempotence key
  • Sends a request to YooKassa API
  • Saves the order into the orders sheet
  • Returns a payment confirmation link

3. POST /yoomoney

Webhook to process payment/refund events:

  • On payment.succeeded, adds entry to transactions
  • On refund.succeeded, updates transaction status

4. GET /status/:id

Returns real-time payment status from YooKassa


πŸš€ Setup

  1. Connect credentials:

    • Google Sheets (OAuth2)
    • YooKassa (Basic Auth using shopId and secretKey)
  2. Update the following Google Sheets:

    • products: should contain product_id, title, price
    • orders: for saving confirmed purchases
    • transactions: for logging all successful or refunded payments
  3. Test endpoints using any HTTP client:

Example payload for /payment:

{
  "product_id": "abc123",
  "email": "[email protected]",
  "return_url": "https://your.site/success"
}

πŸ”§ How to customize this workflow

  • Add delivery logic (e.g., email with product link after successful payment)
  • Replace Google Sheets with a database (e.g., PostgreSQL)
  • Connect Telegram or other messengers for post-payment notifications
  • Add promo codes, discounts, or subscriptions logic

πŸ’Ό Use cases

  • Simple online checkouts
  • Telegram bots selling access
  • Educational product sales
  • MVP e-commerce flows
  • Donation or membership payments

πŸ“Ž Notes

βœ… Includes Sticky Notes for sections βœ… Includes error handling and validation βœ… No custom code needed except UUID generation

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Respond Products

Type / Role
n8n-nodes-base.respondToWebhook - respondToWebhook
Config choices
Version 1.3

Block 2 - Sticky Note5

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 3 - Get products

Type / Role
n8n-nodes-base.webhook - webhook
Config choices
Version 2

Block 4 - Sorting by price

Type / Role
n8n-nodes-base.sort - sort
Config choices
Version 1

Block 5 - Handle Error (get product)

Type / Role
n8n-nodes-base.respondToWebhook - respondToWebhook
Config choices
Version 1.3

Block 6 - Get Product

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.6

Block 7 - YooKassa Request

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 8 - Save Order

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.6

Block 9 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 10 - Payment

Type / Role
n8n-nodes-base.webhook - webhook
Config choices
Version 2

Block 11 - Check request values

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 12 - Email validation

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 13 - Get product_id

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3.4

Block 14 - Check product_id

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 15 - Handle Error (product_id)

Type / Role
n8n-nodes-base.respondToWebhook - respondToWebhook
Config choices
Version 1.3

Block 16 - Idempotence Key Generation

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 17 - Handle Error

Type / Role
n8n-nodes-base.respondToWebhook - respondToWebhook
Config choices
Version 1.3

Block 18 - Handle Error (yookassa)

Type / Role
n8n-nodes-base.respondToWebhook - respondToWebhook
Config choices
Version 1.3

Block 19 - Handle Error (save order)

Type / Role
n8n-nodes-base.respondToWebhook - respondToWebhook
Config choices
Version 1.3

Block 20 - Respond Payment

Type / Role
n8n-nodes-base.respondToWebhook - respondToWebhook
Config choices
Version 1.3

Block 21 - Handle Error (get product)_1

Type / Role
n8n-nodes-base.respondToWebhook - respondToWebhook
Config choices
Version 1.3

Block 22 - Get Order

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.6

Block 23 - Save Transaction

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.6

Block 24 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Showing the first 24 of 44 workflow blocks. Download the JSON for the full node graph.

3. Summary Table

Workflow Payment processing and order tracking with YooKassa and Google Sheets
Complexity advanced
Nodes 44
Categories CRM
Author Sergey Skorobogatov
Published 06 Jun 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/4749/4749.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Payment processing and order tracking with YooKassa and Google Sheets do?

Accept YooKassa payments and log transactions in Google Sheets Summary This workflow allows you to accept online payments via YooKassa and log both orders and transactions in Google Sheets β€” all...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your CRM use case.