Show HN: Small Transfers – charge from 0.000001 USD per request for your SaaS (smalltransfers.com)

198 points by strnisa ↗ HN
Hi HN,

I built Small Transfers, a payments platform for SaaS / API makers who want to bill customers per request instead of pushing them into subscriptions or pre-buy packages.

*Why?*

  - Many customers hate subscriptions and/or want to use a service occasionally.
  - Traditional payment processors add a fixed fee to every charge, making charges below 1 USD impractical.
  - Stripe UBB tracks usage, but you still need to write your own auth, add spending limits, and each merchant charges cards separately (extra fees for customers).
*How it works?*

  - Each merchant has a Small Transfers account linked to their Stripe account via Stripe Connect, which is used to transfer payouts to merchants.
  - Each customer has a Small Transfers account where we verify them using Google Sign-In, 3-D Secure, and Stripe Radar to minimise the chances of a customer not paying their balance.
  - Customers allow your service to identify and charge them via platform's own OAuth. This also removes the need for your service to implement its own auth. (Simple services don't even need their own database.)
  - Merchants call a simple REST API to authorize and capture a charge with a minimum amount of 0.000001 USD. Note that you can authorize more than you capture, allowing you to authorize the max amount your request might use, and then capture your actual cost plus margin (great for many use cases, e.g., AI).
  - The platform takes care of charging customers and sending payouts to merchants.
  - Merchants pay a flat 3% fee. Customers pay payment processing fees when they pay for their balance.
There's a Next.js Starter project (https://github.com/smalltransfers/nextjs-starter) and a live demo (https://nextjs-starter.smalltransfers.com/).

I've been dog-fooding the platform with my own service (https://unattach.com/) and would love your feedback, specifically:

  - The general approach and whether there is anything I should do differently.
  - Any concerns and how I could mitigate them.
  - Any other feedback.
I'm also looking for more merchants to try out the platform, and can help you with the integration.

Thank you for your time! Happy to answer questions here.

29 comments

[ 3.7 ms ] story [ 69.8 ms ] thread
(comment deleted)
I had 100% same idea since a few months now. Didn't pursue it because of lack of companies and customers willing to use such a platform as intermediatory.

Secondly, the legal aspect. Will this be considered as a wallet?

Anyways, loved to see it implemented by someone.

I've been wanting something like this for a long time. There's a lot of ways this could go wrong, but I hope it works.

I'd especially love a video platform using this model. I can't afford patreon for every YouTube channel, but I'd love to pay 10¢ per hour of video watched.

10¢ per hour seems low to me — I’d happily pay ~$1 per hour. $10 per week is less than I currently pay for subscriptions, and I don’t want to spend more than 10 hrs per week watching video anyway.
Where YouTube is my movie player and podcast player and general video player, all of which is done at 2x speed I can't imagine paying $4-6/day for YouTube.

Just my commute listening to a podcast that I downloaded before leaving would cost me $1.50 each way? Nah I'll keep my subscription thanks.

$0.10 per hour is already WAY more than a creator usually gets from your viewing. I'd happily pay that amount for good youtube-like content. Creators would love it because it's far more money than they get now. Consumers would like it because for a lot of people it's cheaper than a subscription, and they could forgo ads
I mean this in the most constructive way possible: why do you think this idea hasn’t worked before, when it’s been fairly obvious and easy to build for a long time? And what’s your fix for that issue? You present the merchant side of things, but not the customer side which is more important to me, as a potential Small transfers adopter. What’s customer conversion like? Are micropayments actually better than typical payment amounts? Based on my experience I’d expect the conversion rate of a $0.01 and $1 fee to be pretty similar. The friction of inputting a credit card and trusting a service is way higher than the actual payment amount. I’d also have to introduce 2 more services to my customers: Small transfers powered by stripe, and customers would have to fund an account that realistically speaking can’t be used anywhere other than my site. Just offering some questions to think about!
Micropayments introduced too much friction for you, a human. You have to think about how much the thing is worth, and consider whether the merchant is trustworthy, and enter your details to perform the transaction. Maybe you’re unsatisfied and want a refund.

Say it costs 1.7 cents and delivers 3.2 cents of “value”, you need to be able to do all that work in less than 1.5 cents worth of your time. You can’t do that as a human. But an agent maybe could, to pay for content or MCP calls. I see a big role for micropayments in this genetic future.

I think micropayments are important for a healthy web economy.

In 2018 I built a pay-per-call API paywall using the Lightning Network (a Bitcoin Layer 2 protocol/network that enables instant, low-fee payments): https://github.com/philippgille/ln-paywall

But most people are either unwilling to touch crypto at all, or holding on to it tightly as investment and not willing to use as payment. So I wish you luck to make this work in the fiat world!

(comment deleted)
Why would you use this over Bitcoin Lightning payments?
unsecured lending in the crypto world is nonexistent or implodes immediately, and even more nonexistent in the bitcoin side of things

credit cards solve that market need and are wildly popular for decades

What's the payment threshold? I assume you're paying 2.9% and $0.30 (or around there) for the transaction. You charge that to the customer but what if their bill is $0.01, are you really going to make them pay $0.32 for $0.01 of usage? How do you expect SaaS providers to communicate that on their pricing page? If they charge $0.01 per request and the end-user makes 100 requests their bill is actually $1.33 which means the actual per-request charge is $0.0133.

Several years ago Stripe offered more favorable pricing for small transactions but it's my understanding that that pricing is no longer available to new Stripe businesses.

If I need this I don’t deserve to survive in the SaaS business.
Some API questions/observations

- I don't see an idempotency key in the request to authorize a charge; that might be something nice for people looking to build reliable systems on this. - How long are accessTokens valid? Forever? Do they become invalid if the subject metadata (firstName, lastName, email) changes?

I think this is a super-cool idea, but I think the idea of extending net30 terms to every customer of some B2C product seems pretty iffy; since you're deferring charging until the end of the month, you won't get most of the fraud signals from Stripe until then and anything popular that used this system seems like it'd be pretty inundated with fraud. I would at least consider doing the charges more frequently (i.e., charge at the end of the month or every $50, whichever comes first) to put a better bound on how long you can go before finding out that someone gave you a stolen card.

> anything popular that used this system seems like it'd be pretty inundated with fraud

I coined "micropayments means microfraud"; I would expect this to have similar situations to the AWS mystery bill problem, but on a tiny scale. If you can charge customers without their confirmation it's easy to run up bills. And of course the amounts are so tiny you can't afford dispute resolution.

Interesting ... A web2 equivalent to the x402 specification. Thanks for the explanation of how fees are handled below.

https://x402.org

This could be a great way to charge ai for access to content.
I misunderstood this comment originally. In principle, Small Transfers (ST) could let a content site bill AI agents per request. Each site (acting as an ST merchant) would expose a simple "content" endpoint. The AI agent (as an ST customer) would perform a headless OAuth flow, after which the content site could charge for access. We currently don't support headless OAuth, but if anyone is interested in exploring this use case, please get in touch.
And as someone building an app I do want subscriptions for all the reasons everyone knows about. That's probably why no one really does this despite being talked about for years.
nice idea. Web3 was supposed to solve this (by skipping visa/mastercard/paypal's crazy fees) still waiting..
That's a very cool idea!

To me the main barrier of adoption would be asking my users to create an account with a 3rd party provider in order to be able to pay me.

That's a lot of added friction and I'd be afraid of the impact this would have on conversion rates.

Wouldn't it be possible to embed your solution on my website so the user just adds their Credit Card once then gets properly billed from there?

You're correct that this adds a barrier to entry, but for many users, that hurdle is still lower than asking them to start a subscription or buy a prepaid bundle.

We plan to provide the classic "Google Sign-In" style pop-up window instead of a redirect. Research indicates that it can increase conversion by approximately 5-10%.

Additionally, we are considering a white-label onboarding flow. If the merchant provides proof of customer identity, we can also skip the sign-in step. Both of these should help improve conversion rates.

A fully embedded solution is possible, but it would require the merchant to collect the customer's card details on Small Transfers' behalf (using Small Transfers' Stripe publishable key), which complicates things from both implementation and legal perspectives.

Cool! I've added you on linkedin I'd love to chat more about this
I'll probably use your unattach service soon (gmail keeps bugging me about being 98% full).

Your pricing is a bit weird though. For a $9 subscription a year, I might as well upgrade my gmail storage to 100gb.

The pay-as-you-go is $0.01 per email, but I don't know how many emails with attachment I have in there. Gmail only tells me of "many". Could be tens of thousands... I have no idea...

I have 250 emails with attachment since June, so a bit less than 100 per month, and I 've had that inbox since 2004 ish. So conservatively, I have 1200 emails a year, so about 25k emails to clean up. So that would be a one time fee of $24. But perhaps much less because attachments were rarer back then.

But I could also pay a one year subscription. Only use it once to clean up the whole thing, and then cancel and come back the next time I need it, like in 5 years. But yeah, I don't really want to do that, cause I don't want to forget that it's a subscription...

What I would like is a usage-based price, that's based off the inbox size in gb and that's quite cheaper than upgrading my gmail.

So maybe cleaning 15gb for $15 would be great. Or maybe $2 for each gb that's freed (I wouldn't know how much exactly that would cost, but I know it'd less that $30).

I understand not wanting another subscription. You can subscribe and then immediately turn off auto-renewal — your access stays active for the full year you paid for.

On PAYG, you can target the largest emails first and stop whenever you've freed enough space. For example, processing 300 of the largest emails at $0.01 each is about $3; if they average around 10 MB, that's 3 GB freed.