Briqpay API
This is the API documentation for Briqpay. You can find out more about us and our offering at our website https://briqpay.com. In order to get credentials to the playgrund API Please register at https://app.briqpay.com.
Introduction
Briqpay Checkout is an inline checkout solution for your B2B ecommerce. Briqpay Checkout gives you the flexibility of controlling your payment methods and credit rules while optimizing the UX for your customers.
SDKs
Briqpay offers standard SDKs to PHP and .NET based on these swagger definitions. You can download them respively or use our swagger defintitions to codegen your own versions.
For .NET
Install-Package Briqpay
For PHP
composer require briqpay/php-sdk
Standard use-case
As a first step of integration you will need to create a checkout session. In this session you provide Briqpay with the basic information necessary. In the response from Briqpay you will receive a htmlsnippet that is to be inserted into your frontend. The snippet provided by Briqpay will render an iframe where the user will complete the purchase. Once completed, Briqpay will redirect the customer to a confirmation page that you have defined.
JavaScript SDK
The first step of integration is to add our JS to your site just before closing the <head>
tag. This ensures that our JS library is avaliable to load the checkout.
<script src="https://api.briqpay.com/briq.min.js"></script>
Briqpay offers a few methods avaliable through our Javascript SDK. The library is added by our iframe and is avalable on window._briqpay
If you offer the possibility to update the cart or order amounts on the checkout page, the JS library will help you.
If your store charges the customer different costs and fees depending on their shipping location, you can listen to the addressupdate
event in order to re-calculate the total cost.
window._briqpay.subscribe('addressupdate', function (data) {
console.log(data)
})
If your frontend needs to perform an action when the signup has completed, listen to the signup_finalized
event.
window._briqpay.subscribe('signup_finalized', function (status) {
// redirect or handle status 'success' / 'failure'
})
If you allow customers to change the total cart value, you can utilise the JS library to suspend the iframe while you perform a backend update call towards our services. As described below:
The iframe will auto-resume after 7 seconds if you dont call _briqpay.resume()
before
Session States
The state of the session is very important to notice when handling a session post-purchase. Below is a list and quick explanation of the possible session states:
sessioncreated
- The inital stateclientread
- The session has been rendered to the clientpaymentprocessing
- The customer has completed the checkout, but payment is not yet confirmed.purchasecomplete
- The customer has completed the checkout and the payment has been confirmed by the underlying PSP. At this point you are also able to/capture
a session
Once the customer has completed the checkout, we will send a notification to the endpoint that you have defined. You are expected to read the session at this point and tag the order correctly in your system according to the defined state.
For successful purchases, you should be receiving 2 callbacks from Briqpay. First when the session transitions from clientread
to paymentprocessing
. And again when it transitions from paymentprocessing
to purchasecomplete
.
Test Data
In order to verify your integration you will need to use test data towards our credit engine.
Company identication numbers
- 1111111111 - To receive a high credit scoring company ( 100 in rating)
- 2222222222 - To test the enviournment with a bad credit scoring company (10 in rating)
Card details
In our playground setup your account is by default setup with a Stripe integration. In order to test out the card form you can use the below card numbers:
- 4000002500003155 - To mock 3ds authentication window
- 4000000000000069 Charge is declined with an expired_card code.
You can use any valid expiry and CVC code
Authentication
Briqpay utilizes JWT in order to authenticate calls to our platform.
Authentication tokens expire after 48 hours, and at that point you can generate a new token for the given resource using the /auth
endpoint.
- Basic Auth - only used on the auth endpoint in order to get the Bearer Token
- JWT Bearer Token - All calls towards the API utlizes this method"
Authentication
- HTTP: Basic Auth
- HTTP: Bearer Auth
Security Scheme Type: | http |
---|---|
HTTP Authorization Scheme: | basic |
Security Scheme Type: | http |
---|---|
HTTP Authorization Scheme: | bearer |
Bearer format: | JWT |