Skip to main content

Payment processing and order tracking with YooKassa and Google Sheets

Workflow preview

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.

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 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