Hi All,

My first entry to the Stellar Build Challenge is finally at a stage where I'm ready to release it for testing.

It's a drop-in UI for web sites to use to receive payments in lumens.

It's intended to be used as an alternative payment method for shopping carts.

You can view the repository @ https://github.com/brewaa/stellar-checkout.

It's also available via npm @ https://www.npmjs.com/package/stellar-checkout.

I'm fairly certain there are some bugs to resolve and the documentation and examples need to be cleaned up too. I'll be working on that over the next few days.

Please take a look at the readme in github.

Looks like a great idea.... there is however another project called 'paywithstellar' you will be able to find it on this forum. But options is good ?

Thanks Kris. Yeah I just checked it out. I like it. There seems to be room for more players in this space and the differences in implementation can serve different use cases.

I just updated the readme and did some code clean up. All packages have been updated.

Better examples and more features to come

UPDATE

Enhancements
1. Code refactoring and simplification
2. Better config. validation
3. Wiki documentation - https://github.com/brewaa/stellar-checkout/wiki
4. Styling improvements
5. Improved readme
6. Removed requirement to signup to an external service
7. General code improvements

NPM:
https://www.npmjs.com/package/stellar-checkout

Repository:
https://github.com/brewaa/stellar-checkout

For a basic example and some screenshots, see the basic configuration example:
https://github.com/brewaa/stellar-checkout/wiki/Basic-configuration-example

View the demo:
https://brewaa.github.io/stellar-checkout/demo.html

Any feedback is welcome.

There are still some missing pieces to the puzzle and as I become more familiar with the API I'll keep adding functionality. What is missing at this point is more verification of the payment transaction and how to do this in a way that can't be tampered with. I'd prefer to be able to do it without requiring the use of a middleman but at this stage I'm not 100% certain of the best way to approach it.

I'll keep this thread updated with my progress.

Thanks for reading this.

7 days later

Hi all,

StellarCheckout is coming along nicely.

https://github.com/brewaa/stellar-checkout

The latest release has full client side verification of payment transactions and a heap of UI improvements plus more documentation. It’s also much easier to copy payment info now as there’s QR code support for XDR and Stargazer wallet.

Nice work on providing doco for the stargazer json format. I found that many of the other wallets listed on Stellar.org don’t have this info available or I just couldn’t find it as easily.

I may implement support for more wallets in the future but I was wondering if Stargazer will allow importing of an XDR envelope or if any other wallets support this?

I briefly looked into decoding this myself but didn’t get that far yet.

It seems like an XDR envelope is the easiest way to package up the transaction info because all that’s required is to sign it and submit it to the network.

It would be nice if there was just one standard that everyone was using so there didn’t need to be so much fuss about qr codes.

Either way, I’ve had lots of fun working on this and hope to take it further.

StellarCheckout can easily be implemented as a plug-in to any of the popular CMS’ out there.

I was thinking of doing a Kentico or Sitecore plug-in but would be just as happy to see someone else do it.

StellarCheckout has a lot of activity on npm which is nice.

https://www.npmjs.com/package/stellar-checkout

It could just be bots but that’s better than nothing. Tough crowd here so I’ll take what I can get ?

    brewaa

    What do you need that's not in the Payment Request QR format?

      dzham Starazer QR code format is fine. It has everything I needed. Your github doc and umbrel's npm package seem to be the best info out there.

      Nice package umbrel. I was going to use it but wasn't sure if it would bloat my package by including the stellarsdk as I'm just loading it via cdn to keep my package weight small.

      I read this thread and there didn't seem to be a final decision on what to use:
      https://galactictalk.org/d/12-formats-for-qr-codes-uris-nfcs

      It is nice travelling on well trodden ground though.

      I really just want to use a format that can be used by everyone rather than provide a method to make users choose.

      It feels like there should be a standard but then maybe we should all just be using XDR and I'm trying to solve a problem that already has a solution.

      Am i right that the issue is that XDR is not easily decoded?

      I could find a few methods in the SDK with the fromXDRObject signature but didn't have much luck with that yet.

      Stellar Laboratory seems to have no problem doing it in the labs:
      https://www.stellar.org/laboratory/#xdr-viewer?type=TransactionEnvelope&network=test

      And Stellar have this but i'm not sure if I need to use it because the js SDK provides this already?
      https://github.com/stellar/js-xdr

      If a wallet imports a transaction, the user will certainly want to review the info that they're about to sign rather than just be presented with a button to confirm.

      I'd just like to use one simple format and have cross-project compatibility.

      Yes, I was anxious about including stellar-sdk because of the size, but then I thought I can always optimize later. The point of my package was exactly to introduce XDR as QR code option. There is still no wallet though, which can scan it, I was going to make one, but got stuck with other stuff...

        After setting up a new project last night I remembered the main reason why i didn’t include the sdk in stellarcheckout. Installing on windows I encountered the node-gyp error which became more trouble than it was worth bothering to fix so ended up loading the script in manually. A nice byproduct of that was keeping the ever growing StellarCheckout lib size small.

        umbrel i noticed the umbrel anchor in the dashboard. Interesting project. I’ll do a search too but do you have a blog or forum post that explains your setup ?

          6 days later

          StellarCheckout 1.0.29 has been updated in NPM with a decent reduction in file size.

          5 days later

          StellarCheckout
          - Added localization support for 'en', 'de-DE', 'es-ES', 'it-IT', 'fr-FR', 'ja-JP', 'ko-KR', 'pt-BR', 'ru-RU', 'th-TH', 'zh-CN', 'zu-ZA';

          This project seems really interesting.

          This is a cool project I've found for WooCommerce.
          http://swplug.com/

          I haven't looked at the code to see if it's safe or not. I like how you are using GitHub ?

          Asking44Friend Nice buttons. I might try to make use of these in the future. I think some widgets made using your buttons could be very useful.

          StellarCheckout
          - Added support for more cultures:
          'cs-CZ',
          'da-DK',
          'hu-HU',
          'id-ID',
          'pl-PL',
          'sv-SE',
          'tr-TR'