# Log successful Adyen payments to Google Sheets and Slack

> The moment Adyen confirms a card payment, we add a row to your Google Sheets ledger and post a short heads-up to your team's Slack channel.

- Workflow type: code
- Services: Adyen, Google Sheets, Slack Bot
- Categories: Finance, Operations
- Published: 2026-07-17

## What it does

- Every time a card payment goes through in Adyen, adds a fresh row to your Google Sheets payment ledger with the payment reference, shopper email, amount, currency, and payment method.
- Posts a short one-line notification to your Slack channel so finance and ops see each new payment the moment it lands.
- Only successful authorisations are recorded. Declined or failed charges are skipped so the numbers you see reflect real revenue.
- Runs the instant Adyen confirms the payment rather than on a schedule, so your ledger and your team's Slack channel stay in sync in real time.

## What you'll need

- An Adyen account you can point notifications at
- A Google Sheets spreadsheet to use as your payment ledger
- A Slack workspace and a channel where payment notifications should land

## Prompt

Set up a webhook trigger that receives Adyen AUTHORISATION notifications. For each notification where the success flag is true, run these two steps in order. When success is false, do nothing.

Step 1. Use the Google Sheets Append Values operation to add a new row to a designated ledger spreadsheet. Populate one column per field from the webhook payload: the event timestamp, pspReference, merchantReference, shopper email, amount, currency code, and payment method name. Adyen sends the amount value in the smallest currency unit, so divide by 100 for most currencies before writing it to the sheet so the ledger shows human amounts (for zero-decimal currencies like JPY, write the value as is).

Step 2. Use the Slack Bot Send a Message operation to post to a preconfigured Slack channel (default #payments). The message text should follow this exact format: "New payment: {amount} {currency} from {shopperEmail} (ref {merchantReference})".

No AI reasoning is required. The same fields flow from every payload into the same spreadsheet and the same Slack channel every time. This is a real-time payment ledger and is intentionally separate from any scheduled payment digest workflow.

## How to customize

- Choose which spreadsheet and tab we append the row to, and which columns you want on the ledger
- Pick which Slack channel receives the notification (many teams use a dedicated #payments channel)
- Reword the Slack message or swap in different fields, for example including the payment method or a link back to the Adyen dashboard

## FAQ

### What happens if a payment is declined or fails?

Only successful authorisations are logged. Declined or failed charges do not appear in your ledger or in Slack, so the totals you see reflect real revenue.

### Do I need to write any code to use this?

No. This runs as a background workflow. You just connect your Adyen account, pick the spreadsheet, and pick the Slack channel.

### How fast does the ledger update after a payment?

As fast as Adyen sends the notification, which is typically within seconds of the payment being authorised. There is no polling delay.

### Which columns does it fill in on the spreadsheet?

Timestamp, Adyen payment reference, your merchant reference, shopper email, amount, currency, and payment method by default. You can add or drop columns to match your ledger format.

### Does this handle refunds or captures too?

This specific workflow only reacts to successful authorisations. Refunds, captures, and cancellations are separate Adyen notification types and are best handled by their own workflow.

Use this prompt in General Input: https://www.generalinput.com/prompts/log-successful-adyen-payments-to-google-sheets-and-slack