Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add payments guide #2388

Merged
merged 4 commits into from
Feb 22, 2018
Merged

add payments guide #2388

merged 4 commits into from
Feb 22, 2018

Conversation

ccarruitero
Copy link
Contributor

I just ported the guide for payments from spree.

Let me know what you think.


## Supported Gateways

Access to a number of payment gateways is handled with the usage of the [solidus_gateway](https://github.com/solidusio/solidus_gateway) extension. This extension currently supports the following gateways:
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just used Stripe from solidus_gateway. So, not sure if this list of supported gateways apply to solidus_gateway right now?

* USA ePay
* WorldPay

## Adding your custom gateway
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this reference for how to add a custom gateway is too vague. I think we should extend this information in another guide maybe.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is actually on my to-do list!

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree this is useless here as it currently is

You can get a list of these log entries by calling the `log_entries` on any
`Spree::Payment` object. To get the `Active::Merchant::Billing::Response` out of these `Spree::LogEntry` objects, call the `details` method.

## Supported Gateways
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure if we should maintain a list of supported gateways here. I think that reference to another resource where we can find gateway extensions could be better.

What do you think?

I was thinking in extensions.solidus.io. I like how show the builds for each version, so you can know if a project is maintained, but don't have a way to filter the extensions. Another option could be solition that find extensions from github (finding by repository description and name, I think so). Another option?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree we'll probably don't need to keep this list, even because the direction on gateways is trying to build a gem for each geteway for several reason. They don't share any logic in solidus_gateway gem and 99% of times stores just use one gateway from that list.

process credit card payments, and may also include non credit card payment
methods such as Check or StoreCredit, which are provided in Solidus by default.

The `Payment` model in Solidus tracks payments against [Orders](orders).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right now the [Orders](orders) link here doesn't go anywhere, and we don't have an equivalent page worth linking to yet.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll remove that link

@benjaminwil
Copy link
Contributor

Thanks for this!

In case you haven't seen #2353 and #2375, I'm working through all of the existing Solidus documentation and adding more. In the near future I would like to break up this payments documentation into multiple articles.

I think this would give us more space to provide examples and tutorials, like you pointed out in your comment on the "Adding your custom gateway" sub-article.

Copy link
Contributor

@cbrunsdon cbrunsdon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll defer to @benjaminwil expertise on this, we have him in charge of docs going forward.

@cbrunsdon
Copy link
Contributor

Defering to @benjaminwil on my 👍, but thanks for sending the PR! Updating docs is a terrible, thankless task but we really appreciate it.

Copy link
Member

@kennyadsl kennyadsl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just left some comment that could be useful to @benjaminwil when this section will be faced. Thanks a lot!

You can get a list of these log entries by calling the `log_entries` on any
`Spree::Payment` object. To get the `Active::Merchant::Billing::Response` out of these `Spree::LogEntry` objects, call the `details` method.

## Supported Gateways
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree we'll probably don't need to keep this list, even because the direction on gateways is trying to build a gem for each geteway for several reason. They don't share any logic in solidus_gateway gem and 99% of times stores just use one gateway from that list.

* USA ePay
* WorldPay

## Adding your custom gateway
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree this is useless here as it currently is

@ccarruitero
Copy link
Contributor Author

Thanks all for your comments.

I'll update this accordingly

@benjaminwil
Copy link
Contributor

Thanks for the updates. I would 👍 this.

There's still more work to be done here (for example, around getting started with custom payment gateways), but the essentials are covered clearly.

Thanks for your work on this @ccarruitero.

@jhawthorn jhawthorn merged commit 68bd591 into solidusio:master Feb 22, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants