Payment Gateways
Payment gateways lists every gateway modules...
Settings > Payment gateways lists every gateway module in your release. For each one you can switch it on, enter its keys, and choose where it is offered. The gateways you leave off never appear at checkout.
Test mode first #
Every gateway has Live and Test settings. Enter the test (sandbox) keys, make a test payment, then enter the live keys. A key from the other mode is refused before anything is sent. Test connection checks the keys you saved.
The two kinds of gateway #
- Pay on the gateway's own page (a redirect or a pop-up): the customer never types a card into your site. Examples here: SSLCommerz and PayPal.
- Card on your own invoice page (Stripe): the card is typed into Stripe's own secure field on your invoice page. Card numbers never reach your server, and the card can be saved for one-click payment and automatic charges.
Stripe #
Cards typed into Stripe's own field on the invoice page. You need a Stripe account.
- In the Stripe Dashboard, under Developers > API keys, copy the publishable key (
pk_…) and secret key (sk_…). Do this in test mode first and then in live mode. - In LBM, open Payment gateways > Stripe, switch it on, and paste the test publishable and secret keys, then the live ones.
- The webhook signing secret is filled in for you: saving a secret key with the webhook box left empty registers the webhook with Stripe. Paste one yourself only when Stripe cannot reach your address.
- Press Test connection.
Customers can tick Save this card to keep it. A saved card can be used for one-click payment and for automatic charges.
SSLCommerz #
For cards, mobile banking and internet banking in Bangladesh.
- Enter your Store ID and Store password (the API password SSLCommerz sent you, not the merchant panel login). Use a sandbox store from developer.sslcommerz.com for testing.
- Choose the Integration:
- Easy Checkout Integration (the default): SSLCommerz's payment page opens in a layer over your invoice page, so the customer stays on your site.
- Hosted Payment Integration: the customer goes to SSLCommerz's own page and comes back.
- Every payment is checked with SSLCommerz's validation API before it is recorded, and refunds go through its API.
SSLCommerz can only refund a converted payment in full. A payment made in a currency other than BDT is recorded in the invoice's currency.
PayPal #
PayPal takes the payment on its own page.
- At developer.paypal.com, Apps & Credentials, create a REST app. Copy the client ID and secret, for Sandbox and for Live.
- In LBM, switch PayPal on and enter the sandbox and live client IDs and secrets.
- The webhook ID is filled in for you when the client ID and secret are saved.
Offline payments #
For a bank transfer, cash or any method you check by hand.
- Payment instructions: shown to the customer on the invoice, as you wrote them: the bank, the account, and the reference to quote.
- Boxes the customer fills in: what the customer must tell you after paying, such as a transaction number.
The customer reports the payment; nothing is settled until staff have checked it and recorded it.
Where a gateway is offered #
For each gateway you can limit the countries it is offered to. A client outside them never sees it.
Charging saved cards #
Switch on automatic charges on the gateways screen to charge saved cards when an invoice is due. Set how many days before a card is tried. A charge that needs the customer to confirm with their bank is not retried silently: the customer is emailed and pays the invoice themselves. Failed attempts are logged.
Fraud checks #
Settings > Fraud check chooses which fraud module screens every order and payment. A payment from another currency than the invoice's, or one that a check blocks, is held for staff instead of being recorded.
Only the gateways you use need to be in your release. A gateway module that is not in modules/Gateways/ is simply not offered.
Something missing or wrong? Tell us or contact us.