Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

Document Logs Change log:

Date:

Author:

Version:

Changes:

Completed

Ext.

Int.

Is in Core

 


 

 


 

1.0

Doc. created

Yes

 

 

 

1.1Added Pay per email parameter entryYes   

Terms and Definitions:

Terms/definitions:

Meaning:

TBD

To be defined

N/A

Not applicable

 


Overview

This document describes the interfacing between the Rator Customer Care and Billing System (Rator) and the Buckaroo BPE 3.0 payment systems. There are two engines involved in integrating Rator with Buckaroo Payment interface version 3.0: Buckaroo Request Generator Engine and Buckaroo Payment Response Reader Engine. The Request Generator handles generation of the payment request csv file that is sent to Buckaroo. The Response Reader engine processes the payment response files received from Buckaroo. This document describes the request generator functionality in detail. 

The Request Generator Engine collects all the Buckaroo Direct Debit Payments which are ready for capture in the system and inserts required payment information in buckaroo payment request tables. The engine handles the Account Payment Request records one by one to create entries in these tables. These records are then processed by a File Processor engine instance which creates the payment request csv file to be sent to Buckaroo. 

Important Note: The Request Generator engine will only load the necessary payment data into DB tables. The file generation is not done by this engine. The File Processor engine creates the payment csv file using the data loaded into these tables, so the payment request file creation is a two-step process and must be done as below:

  1. First run the Buckaroo Request Generator engine.
  2. Then run the File Processor Generator engine instance. The file processor engine will create a file only if the request engine processed the data successfully, and the DB tables contain some records ready to be processed. Please note that it is possible to configure the layout of request file (i.e. which of the fields should be present and at which position in the request record) by using the File processor generator configuration. 
    For example: It is possible skip adding the PayperEmail fields to the request record in the file even if they are present in the BUCKAROO_REQUEST_RECORD_BPE3 table. 

Document Usage

This document is primarily intended for the Rator implementation team and for understanding the interface with Buckaroo. It will also be used as a basis for acceptance tests.

Note: Please note that we have a separate integration with Buckaroo BPE 2.0 payment interface. This is also file based. For more information on Request Generator engine for integration with Buckaroo BPE 2.0 interface, please look here.

Production Date

XX November 2013.

Customer Configuration

The Buckaroo request generator engine is configurable by editing the engine configuration file.

<base_path>/engines/BuckarooRequestGeneratorBPE3/conf/engine.conf

The files can be edited in a normal text editor, like Windows Notepad.

Engine Specific Properties

Some properties in the configuration file are specifically for engines, and are shown in the format below:

wrapper.java.mainclass

com.CDRator.billing.engine.GenericEngineStarter

 

This property specifies the Java path for CDRator engine starter. Main class property must be specified in order to start the engine framework.

 

 

wrapper.app.parameter.1

-S

 

The -S property is optional, but it is a parameter for the GenericEngineStarter which enables the engine starter to make a sleep just before it stops. The reason for this is that in cases where the engine has nothing to do, it can complete very quickly. The Windows NT Service environment might see this as a possible failure and will do a failure count. When the count reaches a specific number, it will halt completely and the service has to be restarted manually.

 

 

wrapper.app.parameter.2

300

 

Number of seconds engine starter must sleep before it stops.

 

 

wrapper.app.parameter.3

-P

 

Specifies that the next parameter is to start the engine.

 

 

wrapper.app.parameter.4

com.CDRator.billing.paymentInterface.engine.BuckarooBPE3RequestGenerator

 

Specifies the java path of the engine class that the generic engine starter must use to start the engine

 

 

wrapper.app.parameter.5
(customer-assigned number)

Additional command line arguments for the above-named Java class.

 

Parameter to engine. Specifies the engine name and how it will appear in logs and process monitor. This configuration parameter will make it possible to set a different engine name per brand, if multibrand setup is used. 

Used in the call to the Process Monitor together with the Instance Number.

Examples:  BuckarooBPE3RequestGenerator

wrapper.app.parameter.6
(customer-assigned number)

Additional command line arguments for the above-named Java class.

 

Parameter to engine. Specifies engine's instance number.  

wrapper.app.parameter.7
(customer-assigned number)

Additional command line arguments for the above-named Java class.

 

Parameter to engine. Specifies the max number of payments that the engine can handle in each run. 

Parameters Required

The following parameter entries are used to specify the request generator configuration.

PATH

Type

description

Mandatory

Default value used if the parameter is not present

INTEGRATION.BUCKAROO.BPE3.WEBSITE_KEY

String

Fixed string from Buckaroo portal

YES

 

INTEGRATION.BUCKAROO.BPE3.ACCOUNT_PAYMENT_TYPES

String

payment_type_id value of the
account_payment entries used to choose 
what type of account payments are 
picked up by the request
generator engine for creating the 
payment export file.
Ex: 200

YES

 

INTEGRATION.BUCKAROO.BPE3.DESCRIPTION_PREFIX

String

Prefix for the description field

YES

 

INTEGRATION.BUCKAROO.BPE3.VAT_VALUE

String

VAT value : 21 for BPE3

YES

 

INTEGRATION.BUCKAROO.BPE3.CURRENCY

String

Currency Code: EUR

YES

 

INTEGRATION.BUCKAROO.BPE3.DUE_DATE_OFFSET

String

Payment due date offset

YES

 

INTEGRATION.BUCKAROO.BPE3.EXPORT_FILE_PREFIX

String

Prefix with which export file name
will start with

YES

 

INTEGRATION.BUCKAROO.BPE3.EXPORT_FILE_EXTENSION

String

Extension used for export file.
For ex: .CSV

YES

 

INTEGRATION.BUCKAROO.BPE3.CULTURE_CODE

String

ISO culture code:  nl-NL

YES

 

INTEGRATION.BUCKAROO.BPE3.PAYMENT_METHODS_ALLOWED

String

Allowed payment methods

NO

machtiging

INTEGRATION.BUCKAROO.BPE3.PAYMENT_METHOD_INVALID_BANK_ACC

String

Allowed payment method if the bank account number is null or zero

NO

ideal

INTEGRATION.BUCKAROO.BPE3.DUMMY_BANK_ACC_NUMBER

String

Dummy bank account number used in case the customer bank account number is either null or zero or in anyway invalid.

NO

<Empty String>

INTEGRATION.BUCKAROO.BPE3.COUNTRY

String

Country code value

NO

NL

INTEGRATION.BUCKAROO.BPE3.SEPA_MANDATE_DATEDateThe default mandate date to be used if the Bank account valid_from date is null or valid_from date is before 2013-12-11.YES2013-12-11
INTEGRATION.BUCKAROO.BPE3.SEPA_COLLECT_DATENumberThe collect date offset : number of days from the invoice close date that is used as the Collect date for this invoice.YES7
INTEGRATION.BUCKAROO.BPE3.USE_PAY_PER_EMAILStringIndicates whether the PayPerEmail service is used: If value = 'true', then Payperemail service is enabled i.e. PayPerEmail fields will be filled with proper data when the bank account info is invalid.YEStrue

Database Tables

Following DB tables are used by the Buckaroo BPE3 Request Generator. 

Name:

ACCOUNT_PAYMENT_REQUEST

Description:

Each record represents a direct debit payment request. The InvoiceHandlerEngine will create an  account payment request record for each invoice that is successfully closed. The Buckaroo Request Generator engine will then read the payment requests in this table that are ready for capture and inserts the required payment data into buckaroo tables mentioned below.
NOTE: For BPE2, the ACCOUNT_PAYMENT records are created during the invoice close process i.e. one ACCOUNT_PAYMENT for every closed invoice and the BPE2 request generator reads the data from the ACCOUNT_PAYMENT table. But for BPE3, a new payment solution is implemented to handled various types of payments (like partial payments, creditnotes, write offs etc..). As per this new solution, the invoice close process will not create ACCOUNT_PAYMENT records. It will create ACCOUNT_PAYMENT_REQUEST records which are used by the Buckaroo BPE3 request generator. The ACCOUNT_PAYMENT records are created by the Buckaroo BPE3 Response reader (Capture) engine when the response file from Buckaroo is processed. For every successfully processed payment response, an ACCOUNT_PAYMENT and an INVOICE_PAYMENT record will be created. So with BPE3 solution, there will be one-to-one relation between InvoicePayments and AccountPayments.

 

 

Name:

BUCKAROO_REQUEST_HEADER_BPE3

Description:

Each record represents a header which holds reference to the record data needed to generate a payment request file. Each header entry can have one or more corresponding request records in BUCKAROO_REQUEST_RECORD_BPE3 table. So for each record (not in ERROR status) in this table, a payment file will be generated and sent to the Buckaroo containing the information like name of the file, status, file generation date, number of records in the file etc.

 

 

Name:

BUCKAROO_REQUEST_RECORD_BPE3

Description:

Each record represents a a payment record in the payment request file. Each record in this table contains actual payment information like amount, VAT, user info like name, bank account info, address etc.

 

 

 

Unknown macro: {table-plus}

 

 

 

  • No labels