These are the platforms currently supported by the main PaymentSuite team. Each platform has been developed as a wrapper of PaymentCoreBundle
This bundle bring you a possibility to make simple payments through Authorize.Net.
You have to add require line into you composer.json file
"require": {
// ...
"paymentsuite/authorizenet-bundle": "v1.1"
}
Then you have to use composer to update your project dependencies
$ curl -sS https://getcomposer.org/installer | php
$ php composer.phar update paymentsuite/authorizenet-bundle
And register the bundle in your AppKernel.php
file
return array(
// ...
new PaymentSuite\PaymentCoreBundle\PaymentCoreBundle(),
new PaymentSuite\AuthorizenetBundle\AuthorizenetBundle(),
);
If it's first payment method of PaymentSuite in your project, first you have to configure PaymentBridge Service and Payment Event Listener following this documentation.
Configure the AuthorizenetBundle parameters in your config.yml
.
authorizenet:
# authorizenet keys
login_id: XXXXXXXXXXXX
tran_key: XXXXXXXXXXXX
test_mode: true
# By default, controller route is /payment/authorizenet/execute
controller_route: /my/custom/route
# Configuration for payment success redirection
#
# Route defines which route will redirect if payment success
# If order_append is true, Bundle will append cart identifier into route
# taking order_append_field value as parameter name and
# PaymentOrderWrapper->getOrderId() value
payment_success:
route: cart_thanks
order_append: true
order_append_field: order_id
# Configuration for payment fail redirection
#
# Route defines which route will redirect if payment fails
# If cart_append is true, Bundle will append cart identifier into route
# taking cart_append_field value as parameter name and
# PaymentCartWrapper->getCartId() value
payment_fail:
route: cart_view
cart_append: false
cart_append_field: cart_id
About Authorizenet login_id
and tran_key
you can learn more in
Authorizenet documentation page.
AuthorizenetBundle allows developer to specify the route of controller where Authorize.Net callback is processed.
By default, this value is /payment/authorizenet/callback
but this value can be changed in configuration file.
Anyway AuthorizenetBundle's routes must be parsed by the framework, so these lines must be included into routing.yml
file.
authorizenet_payment_routes:
resource: .
type: authorizenet
Once your AuthorizenetBundle is installed and well configured, you need to place your payment form.
AuthorizenetBundle gives you all form view as requested by the payment module.
{% block content %}
<div class="payment-wrapper">
{{ authorizenet_render() }}
</div>
{% endblock content %}
authorizenet_render()
just print a basic form.
As every project need its own form design, you can overwrite default form located in: app/Resources/AuthorizenetBundle/views/Authorizenet/view.html.twig
.
For testing you can use these example these examples. More detail about Authorizenet API you can find in this web.
This bundle bring you a possibility to make simple payments through Google Wallet.
You have to add require line into you composer.json file
"require": {
// ...
"paymentsuite/google-wallet-bundle": "v1.1"
}
Then you have to use composer to update your project dependencies
$ curl -sS https://getcomposer.org/installer | php
$ php composer.phar update paymentsuite/google-wallet-bundle
And register the bundle in your AppKernel.php
file
return array(
// ...
new PaymentSuite\PaymentCoreBundle\PaymentCoreBundle(),
new PaymentSuite\GoogleWalletBundle\GoogleWalletBundle(),
);
If it's first payment method of PaymentSuite in your project, first you have to configure PaymentBridge Service and Payment Event Listener following this documentation.
Configure the GoogleWalletBundle parameters in your config.yml
.
google_wallet:
# google wallet keys
merchant_id: XXXXXXXXXXXX
secret_key: XXXXXXXXXXXX
# Configuration for payment success redirection
#
# Route defines which route will redirect if payment success
# If order_append is true, Bundle will append cart identifier into route
# taking order_append_field value as parameter name and
# PaymentOrderWrapper->getOrderId() value
payment_success:
route: cart_thanks
order_append: true
order_append_field: order_id
# Configuration for payment fail redirection
#
# Route defines which route will redirect if payment fails
# If cart_append is true, Bundle will append cart identifier into route
# taking cart_append_field value as parameter name and
# PaymentCartWrapper->getCartId() value
payment_fail:
route: cart_view
cart_append: false
cart_append_field: cart_id
To get merchant_id
and secret_key
you have to register for Sandbox Settings or Production Settings. Also there you have to set postback URL (must be on public DNS and not localhost). For more information you can visit page of Google Wallet APIs.
PaymentBridge Service must return, at least, these fields.
- order_name
- order_description
GoogleWalletBundle allows developer to specify the route of controller where Google Wallet callback is processed.
By default, this value is /payment/googlewallet/callback
but this value can be changed in configuration file.
Anyway GoogleWalletBundle's routes must be parsed by the framework, so these lines must be included into routing.yml
file.
google_wallet_payment_routes:
resource: .
type: googlewallet
Once your GoogleWalletBundle is installed and well configured, you need to place submit button which open Google Wallet pop-up.
GoogleWalletBundle gives you all code as requested by the payment module.
{% block content %}
<div class="payment-wrapper">
{{ googlewallet_render() }}
</div>
{% endblock content %}
{% block foot_script %}
{{ parent() }}
{{ googlewallet_scripts() }}
{% endblock foot_script %}
As every project need its own form design, you can overwrite default button located in: app/Resources/GoogleWalletBundle/views/GoogleWallet/view.html.twig
.
For testing, you just have to use sandbox settings. More details about Google Wallet API you can find in this web.
Configure the PaymillBundle configuration in your config.yml
paymill:
# paymill keys
public_key: XXXXXXXXXXXX
private_key: XXXXXXXXXXXX
# By default, controller route is /payment/paymill/execute
controller_route: /my/custom/route
# Configuration for payment success redirection
#
# Route defines which route will redirect if payment successes
# If order_append is true, Bundle will append card identifier into route
# taking order_append_field value as parameter name and
# PaymentOrderWrapper->getOrderId() value
payment_success:
route: card_thanks
order_append: true
order_append_field: order_id
# Configuration for payment fail redirection
#
# Route defines which route will redirect if payment fails
# If card_append is true, Bundle will append card identifier into route
# taking card_append_field value as parameter name and
# PaymentCardWrapper->getCardId() value
payment_fail:
route: card_view
card_append: false
card_append_field: card_id
PaymentBridge Service must return, at least, these fields.
- order_description
PaymillBundle allows developer to specify the route of controller where paymill
payment is processed.
By default, this value is /payment/paymill/execute
but this value can be
changed in configuration file.
Anyway, the bundle routes must be parsed by the framework, so these lines must
be included into routing.yml file
Once your Paymill is installed and well configured, you need to place your payment form.
PaymillBundle gives you all form view as requested by the payment module.
paymill_render()
only print form in a simple way.
As every project need its own form design, you should overwrite in
app/Resources/PaymillBundle/views/Paymill/view.html.twig
, paymill form render
template placed in
PaymentSuite/Paymill/Bundle/Resources/views/Paymill/view.html.twig
.
This bundle bring you a possibility to make simple payments through Stripe.
You have to add require line into you composer.json file
"require": {
// ...
"paymentsuite/stripe-bundle": "v1.1"
}
Then you have to use composer to update your project dependencies
$ curl -sS https://getcomposer.org/installer | php
$ php composer.phar update paymentsuite/stripe-bundle
And register the bundle in your AppKernel.php
file
return array(
// ...
new PaymentSuite\PaymentCoreBundle\PaymentCoreBundle(),
new PaymentSuite\StripeBundle\StripeBundle(),
);
If it's first payment method of PaymentSuite in your project, first you have to configure PaymentBridge Service and Payment Event Listener following this documentation.
Configure the StripeBundle parameters in your config.yml
.
stripe:
# stripe keys
public_key: XXXXXXXXXXXX
private_key: XXXXXXXXXXXX
# By default, controller route is /payment/stripe/execute
controller_route: /my/custom/route
# Configuration for payment success redirection
#
# Route defines which route will redirect if payment success
# If order_append is true, Bundle will append cart identifier into route
# taking order_append_field value as parameter name and
# PaymentOrderWrapper->getOrderId() value
payment_success:
route: cart_thanks
order_append: true
order_append_field: order_id
# Configuration for payment fail redirection
#
# Route defines which route will redirect if payment fails
# If cart_append is true, Bundle will append cart identifier into route
# taking cart_append_field value as parameter name and
# PaymentCartWrapper->getCartId() value
payment_fail:
route: cart_view
cart_append: false
cart_append_field: cart_id
About Stripe public_key
and private_key
you can learn more in Stripe documentation page.
StripeBundle allows developer to specify the route of controller where Stripe callback is processed.
By default, this value is /payment/stripe/callback
but this value can be changed in configuration file.
Anyway StripeBundle's routes must be parsed by the framework, so these lines must be included into routing.yml
file.
stripe_payment_routes:
resource: .
type: stripe
Once your StripeBundle is installed and well configured, you need to place your payment form.
StripeBundle gives you all form view as requested by the payment module.
{% block content %}
<div class="payment-wrapper">
{{ stripe_render() }}
</div>
{% endblock content %}
{% block foot_script %}
{{ parent() }}
{{ stripe_scripts() }}
{% endblock foot_script %}
stripe_render() just print a basic form.
As every project need its own form design, you can overwrite default form located in: app/Resources/StripeBundle/views/Stripe/view.html.twig
following Stripe documentation.
In another hand, Stripe recommend use jQuery form validator.
For testing you can use these examples. More detail about Stripe API you can find in this web.