Pay-per-Content with IOTA


i started a pay-per-content gateway ( GitHub - F-Node-Karlsruhe/ghost-iota-pay: Pay per content in ghost blog with IOTA ) and am currently looking for some helping hands.

The gateway works already very fine, but there are a few minor issues:

  • I still don’t know how to get a link to the PPC Gateway in front of a paid article (at least not possible with the theme)
  • The content is fetched by the admin API and only gets rendered in a very simple html for the paying user. You can find a flask proxy in the repo which could simply stream the entire ghost page to the user, but if have a hard time setting it up (authentication, headers and so on)

I’d love to find contributors who could bring in their knowledge in as well :slight_smile:

Hope to hear from you soon.



I fixed the html rendering issue like described in this post: Accessing Member only or Paid member only post by API - #7 by KIT

The other issue remains. Looking forward to get some help from ghost pros how to integrate this button option into ghost.

Almost finished. The only thing missing now is the wallet browser extension and the deep linking with data attached. In the current phase it is not yet so convenient.

Check it out here: How to pay for the other article


For those who rather watch:

1 Like

This is a promising idea, do you have any plans of doing the same with other currencies (via Stripe)? I had to look up IOTA, I don’t think it’s very mainstream.

1 Like

I have not yet planned to integrate other cryptos, but porting the implementation should be fairly easy:

Just exchange the iota client with another and listen to a given address. The rest stays the same :slight_smile: I encourage you to fork the repo, maybe we can build a multi crypto version together.

Regarding IOTA
The reasons i chose IOTA are the following:

  • Feeless: if paying for a post the price should range in the sub one dollar region, so any fee at all would destroy the incentive to use a pay per content offer.
    Other than that it was the initial idea to implement a feeless version because all other solutions are costly (paypal, stripe, patreon, onlyfans etc.)
  • Scalable: other than blockchains, the IOTA Tangle scales, i.e. even if a million blog users use a such system at the same time it wouldn’t be an issue → still fast and feeless
  • Speed: other than my slow test_wallet in python, the official wallet needs around 2 seconds for a transaction. The internet user is impatient. Even 2 seconds is an eternity for them. Waiting an hour (bitcoin) or minutes (ethereum) for a transaction to confirm is out of question when you want to buy just an article for a quick read.

On top IOTA is very well known and connected here in the DACH region as a non-profit based in Germany. But afaik. it is less known around the world, that’s right.

Regarding stripe
I don’t have much experience with stripe. But as far as i know it is already part of the ghost stack. So maybe it would be better to build a pay per content solution with it within ghost (?) other than using my gateway approach.
Still, stripe is a costly payment provider and may prove not cost-effective in a pay per content situation.

Hope i could answer all your questions properly :slight_smile:

1 Like

Thanks for clarifying. You are right Stripe fees are highs, but I was thinking of higher value items ($5.00+) akin to ebooks.

As for forking, my coding skill is weak to non-existent. Sad!

1 Like

Call for action

I just pushed the first alpha release :)

I’m currently abusing the location field to manage an authors personal address. This is not optimal, but works, as this field takes all kind of strings.
I already looked into ghost but i’m not familiar enough with it to make a pull request.

This pull request should contain:

I hope somebody attends to do a such PR.

Further i would appreciate if you could give some feedback on my work :nerd_face:

Looking forward to it

I am currently waiting for this issue (Allow messages/data attachments on transactions · Issue #1256 · iotaledger/firefly · GitHub) to become a PR and get finally merged.

Because in the current state the solution is not very convenient for the consumer.

When merged, the purchase process will finally be a 2 click experience :)

Stay tuned.

The idea evolved into a service which is quite easy to use :slight_smile:

Check it out.

1 Like