PayByBill is a payment method, which issues bills as a way of paying. The customer has the choice of using this instead of credit cards and netbank transfers. If the customer chooses to pay by bill, additional information is collected, e.g. social security number, postal code, etc. In addition to the order, this information is forwarded to the invoice acquirer. e.g., Gothia. The invoice acquirer then makes an evaluation of the customer and the order, and decides whether to accept the bill or not.
If accepted, the shop receives payment for the order from the invoice acquirer, while the customer eventually pays the invoice acquirer. So in effect, the customer gets a credit (depending on the invoice acquirer), while the shop gets its payment immediately.
In Flexwin it behaves similar to using a net-bank, in that Flexwin informs the customer, that he is about to be transferred to the PayByBill service, called the invoice window. The invoice window communicates with the invoice acquirer, and upon completion, the customer is returned to Flexwin and finally back to the shop.
PayByBill features a number of parameters, some mandatory, some optional. The list comprises the following parameters, which are further described on the parameter page: structuredOrderInformation, email, createInvoiceNow, customerId, distributionType, doNotShowLastPage, lang, orgno, ssn, and zip.
PayByBill is only available for Flexwin.
Parameters marked [parameter] are optional.
Parameter | Description |
orderid | For payments with PBB orderid is limited to 20 characters |
structuredOrderInformation | This is a string which contains all necessary order information. E.g., the items purchased and their quantity, item description, unit price, sum total, etc., all formatted in XML. Only has effect for PayByBill. |
email (optional, but required | This is the customer's email address. The bill will be sent to this address if distributionType is set to email. Only has effect for PayByBill. |
createInvoiceNow | Specifies whether the order is to be shipped automatically upon order creation. Allowed values: true, false. Default: false. |
doNotShowLastPage | Whether to show the last page in the invoice window. |
[customerId] | The customer's ID with the shop. |
[distributionType] | On which media should the bill be sent to the customer? |
[lang] | Specifies which language to use in the invoice window. |
[orgno] | Organization number. If not specified, the customer may be prompted for it in the invoice window. |
[ssn] | Social security number. If not specified, the customer may be prompted for it in the invoice window. |
[zip] | The postal/zip code where the customer lives. If not specified, the customer may be prompted for it in the invoice window. |
Below are the parameters for the structured order information available with PayByBill. You also find an example.
Parameter | Description |
[ourRef] | The shop's order reference. |
[yourRef] | The customer's order reference. |
[statCodeNum] | Numerical code used for labelling orders, e.g., the code of the seller who handled the order. Used for statistical purposes. |
[statCodeAlphaNum] | Textual code used for labelling orders, e.g., the code of the seller who handled the order. Used for statistical purposes. |
[comments] | The place for any additional comments. |
orderItem | Each item in the order is specified by an orderItem tag. The item is described through a list of attributes listed below. • orderRowNumber (required): Each item is numbered, starting with 1 and then incremented sequentially. Items are sorted according to this sequence. As a consequence, items may be listed in any order inside the parameter structuredOrderInformation. |
<?xml version="1.0" encoding="UTF-8"?> <orderInformation> <exchangeRate>0.0</exchangeRate> <ourRef>ourRef123</ourRef> <yourRef>yourRef123</yourRef> <statCodeNum>statCodeNum</statCodeNum> <statCodeAlphaNum>statCodeAlphaNum</statCodeAlphaNum> <comments>some order comments</comments> <orderItem VATPercent="10" itemDescription="suzuki red bike" itemID="1234"
orderRowNumber="1" price="200" quantity="1" unitCode="pcs"/> <orderItem VATAmount="100" itemDescription="triumph green bike" itemID="1234"
orderRowNumber="2" price="300" quantity="1" unitCode="pcs"/> </orderInformation>
Returns from Flexwin are described in general under return pages. In addition to the normal return parameters you will recive the PBB specific values listed below. Please note that some of the values are only returned to callbackurl, not to accepturl, which means you need to use callback functionality.
Parameter | Description |
customerId | Customer id on Gothia |
deliveryAddress | Delivery address from national registry. Note that goods have to be delivered to the address returned here. |
deliveryCountryCode | Delivery country code |
deliveryPostalCode | Delivery postal code from national registry |
deliveryPostalPlace | Delivery postal place from national registry |
firstName | Customer's first name from national registry |
lastName | Customer's last or company name from national registry |
If an error occurs when performing a PBB payment you can view the error code and the error message. This is done by right clicking on the error page that appears and by selecting “view html source”. For more details see the example screen shots below.
You need to enable the return of all CGI variables in DIBS Admin under Integration > Return Values. (check all the boxes)
It is recommended to reduce the number of clicks/steps needed for the customer to return to the shop after payment is fullfilled bu using both of the two following ways.
1. In DIBS Administration, Integration, Flexwin check the " Skip accept page" checkbox. See documentation.
2. Use the doNotShowLastPagev = true described in the list paramater list above.