https://github.com/webdna/commerce-affirm
https://github.com/webdna/commerce-affirm
Last synced: 12 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/webdna/commerce-affirm
- Owner: webdna
- License: other
- Created: 2022-10-21T09:10:06.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-05-16T12:29:24.000Z (about 2 years ago)
- Last Synced: 2024-12-24T22:03:24.372Z (over 1 year ago)
- Language: PHP
- Size: 35.2 KB
- Stars: 0
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.md
Awesome Lists containing this project
README

Affirm for Craft Commerce
## Requirements
This plugin requests Craft 4.x and Craft Commerce 4.x
## Installation
You can install this plugin from the Plugin Store or with Composer.
#### From the Plugin Store
Go to the Plugin Store in your project’s Control Panel and search for “Affirm”. Then click on the “Install” button in its modal window.
#### With Composer
Open your terminal and run the following commands:
```bash
# go to the project directory
cd /path/to/my-project
# tell Composer to load the plugin
composer require webdna/commerce-affirm
# tell Craft to install the plugin
./craft install/plugin commerce-affirm
```
## Setup
To add an Affirm payment gateway, go to Commerce → Settings → Gateways, create a new gateway.
Enter the Public & Private API keys (environmental variable are recommended) and a product key if you have one.
## Usage
On the payment page, use the getPaymentFormHtml method passing in a few parameters.
```twig
{% set params = {
cancelUrl: siteUrl('/shop/checkout/payment'),
confirmationUrl: siteUrl('/shop/checkout/order', {number: cart.number, success:'true'}),
mode: 'modal',
} %}
{% namespace cart.gateway.handle|commercePaymentFormNamespace %}
{{ cart.gateway.getPaymentFormHtml(params)|raw }}
{% endnamespace %}
```
### Parameters
`automatic` : automatically launches the payment modal otherwise show a button to launch it. (default: 'true')
`cancelUrl` : the url to return to if the process is cancelled. (only used in 'redirect' mode)
`confirmationUrl` : the url to return to on a successful application. (only used in 'redirect' mode)
`mode` : 'modal' or 'redirect' (default: 'modal')
`showStatus` : show the status updates, processing etc. (default: false)
#### Modal callbacks:
`onFail`, `onSuccess`, `onOpen`, `onValidationError`
if you pass in the `onSuccess` callback, you will need to handle setting the token input with the received `e.checkout_token` and submitting the form.