Skip to content
Kill Bill Payment plugin to connect to Qualpay
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.idea Add tests for payment methods management Sep 9, 2019
.gitignore Initial implementation Sep 9, 2019
pom.xml Initial PaymentGateway implementation Sep 11, 2019


Plugin to use Qualpay as a gateway.

Release builds are available on Maven Central with coordinates

Kill Bill compatibility

Plugin version Kill Bill version
0.0.y 0.20.z


The plugin needs a database. The latest version of the schema can be found here.


The following properties are required:

  • org.killbill.billing.plugin.qualpay.apiKey: Qualpay API security key
  • org.killbill.billing.plugin.qualpay.merchantId: Qualpay merchant id

The following properties are optional:

  • org.killbill.billing.plugin.qualpay.baseUrl: Qualpay endpoint (default:
  • org.killbill.billing.plugin.qualpay.connectionTimeout: connect timeout in millis for the Qualpay client (default: 30000)
  • org.killbill.billing.plugin.qualpay.readTimeout: read timeout in mills for the Qualpay timeout (default: 60000)
  • org.killbill.billing.plugin.qualpay.chargeDescription: statement description (default: Kill Bill charge)
  • org.killbill.billing.plugin.qualpay.kbUsername: plugin username to communicate with Kill Bill (default: admin)
  • org.killbill.billing.plugin.qualpay.kbPassword: plugin password to communicate with Kill Bill (default password)


To avoid sending the full PAN to Kill Bill, your front-end application should tokenize first the card in Qualpay using either the Add a Customer Vault API (recommended) or Tokenize Card API. The Vault API is recommended as some functionality (such as retrieving the payment method details from Qualpay or deleting the card in Qualpay) won't be available when using the Gateway API.

When using the Vault API, Qualpay will return a customer id that needs to be set as a the custom field QUALPAY_CUSTOMER_ID on the Kill Bill account. You can then trigger a refresh to sync back all cards in the Vault to Kill Bill.

When using the Payment Gateway API, you need to add the payment method directly by passing the card id as the card_id plugin property.


To migrate to Kill Bill, you first need to create one Kill Bill account for each of your customers and follow the tokenization step(s) above for each account.


To build the plugin, you need to setup Maven to use the GitHub Package Registry


To install the plugin:

kpm install_java_plugin qualpay --from-source-file=target/killbill-qualpay-plugin-0.0.1-SNAPSHOT.jar --destination=/var/tmp/bundles

On AWS or in our Docker images, the destination should be /var/lib/killbill/bundles.

You can’t perform that action at this time.