Merchant Integration Guide
This guide covers how merchants integrate with Vero to send encrypted, itemized receipts to customers.How Vero Works for Merchants
Transaction Flow
- Transaction completes as normal through your POS
- POS system generates itemized receipt in JSON-LD format
- Your private key signs the receipt cryptographically
- Receipt encrypted with customer’s public key (provided by issuer)
- Transmitted to customer’s bank
Integration Options
POS System Plugins (simplest)
If you use Square, Toast, Shopify, or other major POS platforms, install the Vero plugin from their marketplace. Setup takes 15-30 minutes.Direct API Integration
For custom POS systems, integrate Vero API directly. Open-source libraries available in:- JavaScript/Node.js
- Python
- Go
- PHP
Payment Processor Integration
As payment processors adopt Vero, receipts can route through existing payment infrastructure with minimal merchant configuration.Implementation Steps
Step 1: Register merchant keys Generate public/private key pair, register public key with participating issuers Step 2: Add receipt generation Create itemized JSON-LD receipts from existing transaction data Step 3: Sign and encrypt Use Vero library to sign with your private key, encrypt with customer public key Step 4: Transmit Send to issuer via webhook or payment processor Complete documentation and code samples available in the developer portal.Data Privacy & Security
Merchant data
- Receipt content comes from your existing transaction records
- No third-party platforms access your sales data
- Cryptographic signing prevents receipt tampering
Customer privacy
Receipts are encrypted before transmission—merchants cannot read receipts after they’re sent (by design). This protects customer privacy while giving them data ownership.Technical FAQ
What does Vero integration cost?
What does Vero integration cost?
Vero is free and open-source. There are:
- No transaction fees
- No licensing costs
- No ongoing platform charges
Does Vero slow down checkout?
Does Vero slow down checkout?
No. Receipt generation, signing, and encryption happen asynchronously after payment authorization. The Vero process adds less than 100ms to post-transaction processing with no impact on customer experience.
What if my POS system isn't supported?
What if my POS system isn't supported?
You have three options:
- Direct API integration: Use open-source libraries (JavaScript, Python, Go, PHP) to integrate with any custom POS
- Request POS provider support: Contact your POS provider and request Vero integration
- Payment processor integration: As processors adopt Vero, it will work automatically through existing payment infrastructure
Do I need to change my receipt format?
Do I need to change my receipt format?
No. Vero converts your existing itemized transaction data into JSON-LD format. If your POS already generates itemized receipts (most do), Vero uses that data.
How do I handle returns if receipts are encrypted?
How do I handle returns if receipts are encrypted?
Customer presents the receipt from their banking app (they decrypt it client-side). You verify the cryptographic signature to confirm authenticity.
Can customers opt out of Vero receipts?
Can customers opt out of Vero receipts?
Yes. Vero is opt-in at the issuer level—only customers whose banks have integrated Vero receive encrypted receipts. Customers who prefer email or paper receipts continue receiving them as before.
What data privacy obligations do I have with Vero?
What data privacy obligations do I have with Vero?
Minimal. Since receipts are encrypted before transmission and you cannot decrypt them after sending, you have no ongoing data custody obligations for Vero receipts.
How does Vero prevent receipt forgery?
How does Vero prevent receipt forgery?
Every receipt includes your cryptographic signature. Any tampering breaks the signature, making forgery immediately detectable. Combined with issuer signatures, Vero provides strong fraud protection.