Guide REST based web services in Automatisk kortbetaling via Betalingsservice

Similar documents
Betalingsservice, Automatic card payment and payment slips Guidelines for Data Suppliers

Guide Setup sign-on pop-up for Automatic Card Payment Service via Betalingsservice

Guide. - How to setup secure communication for REST services in Automatisk kortbetaling. Revision 1.3. Nets A/S. Lautrupbjerg 10.

Credomatic Integration Resources. Browser Redirect API Documentation June 2007

Bank and SecurePay Response Codes

Address Phone & Fax Internet

E*TRADE Developer Platform. Developer Guide and API Reference. October 24, 2012 API Version: v0

GetLibraryUserOrderList

Web Services Credit Card Errors A Troubleshooter

API Reference Guide for Web Services

Cloud Elements! Marketing Hub Provisioning and Usage Guide!

Web Services Credit Card Errors A Troubleshooter

Direct Payment Protocol Errors A Troubleshooter

MyGate Response Codes. Version 2.1

Gateway Direct Post API

Transaction Inquiries

1. Change Log Introduction Flow summary Flow Overview Premium SMS flow Pin Flow Redirect Flow...

Merchant One Payment Systems Integration Resources. Direct Post API Documentation June 2007

Guidelines for Creating Reports

ipayment Gateway API (IPG API)

Web Services Credit Card Errors A Troubleshooter

NPI Reporting Tool User Guide

Network Merchants Inc (NMI) Integration Resources. Direct Post API Documentation April 2010

QIWI Wallet Pull Payments API

Appendix. Web Command Error Codes. Web Command Error Codes

Safeguard Ecommerce Integration / API

AS DNB banka. DNB Link specification (B2B functional description)

Secure XML API Integration Guide - Periodic and Triggered add in

How To Understand The Error Codes On A Crystal Reports Print Engine

Dolphin's Automatic Credit Card Authorisation and Fund Transfer - Servebase

Payment Processor Errors A Troubleshooter

REST Webservices API Reference Manual

Table and field properties Tables and fields also have properties that you can set to control their characteristics or behavior.

Recurring Payments (Pay as Order) Guide

Internet Payment Gateway Response Codes

e-filing Secure Web Service User Manual

HireDesk API V1.0 Developer s Guide

Online signature API. Terms used in this document. The API in brief. Version 0.20,

US Secure Web API. Version 1.6.0

API Reference Guide for Web Services

Supply Chain Finance WinFinance

Alias Manager. Supplement to the Advanced Integration guides, v epdq 2014, All rights reserved.

int_adyen Version

API Integration Payment21 Recurring Billing

HTTP Data Logging Protocol

Merchant Administration

Virtual Terminal & Online Portal

HTTP and HTTPS Statistics Services

Specific API Usage Limitations... 6 Daily Limitation... 6 Concurrency Limitation API Description... 7 Site Data API... 7

SmarterMeasure Inbound Single Sign On (SSO) Version 1.3 Copyright 2010 SmarterServices, LLC / SmarterServices.com PO Box , Deatsville, AL 36022

Internet Technologies. World Wide Web (WWW) Proxy Server Network Address Translator (NAT)

WEB TERMINAL AND RECURRING BILLING

VMware vcenter Log Insight Developer's Guide

How to Use Print from Register the printer

Platron API. Technical description. version 3.5

Contents. 2 Alfresco API Version 1.0

UFTP AUTHENTICATION SERVICE

Server and Direct Shared Protocols

Grandstream Networks, Inc. UCM6100 Series IP PBX Appliance CDR and REC API Guide

OAuth2lib. implementation

SFTP Batch Processor. Version 1.0

Analytics Configuration Reference

Taxi Service Design Description

Secure Payment Form User s Guide

Easy CollECt and the transaction ManagEr interface

Form And List. SuperUsers. Configuring Moderation & Feedback Management Setti. Troubleshooting: Feedback Doesn't Send

Refer to the Integration Guides for the Connect solution and the Web Service API for integration instructions and issues.

Credit Card Retrieval API Implementation Guide This guide illustrates how to implement the Credit Card Retrieval API.

ANZ - Extensive Response Code Report. 00 -Approved Approved. The transaction completed successfully. Who to Contact. The transaction was approved

FACULTY & STAFF RESOURCES

SRFax Fax API Web Services Documentation

FSD. Finance One. User Manual. Accounts Receivable

Virtual Payment Client Integration Reference. April 2009 Software version:

Grandstream Networks, Inc.

SVEA HOSTED SERVICE SPECIFICATION V1.13

Specification document for the PID-CPR service

itransact Gateway Recurring Billing Guide

bbc Developing Service Providers Adobe Flash Media Rights Management Server November 2008 Version 1.5

Pensio Payment Gateway Merchant API Integration Guide

Merchant Interface User Guide

SMSMAIL 3.0. Implementation Guide SMSMAIL 3.0 Version 2.0

NAB TRANSACT. XML API Integration Guide

BS1000 command and backlog protocol

Global Transport Secure ecommerce. Web Service Implementation Guide

JET Payment File Specification Version 1.3. JET File Technical Specification Appendix H

Online Banking Record Descriptions

MXSAVE XMLRPC Web Service Guide. Last Revision: 6/14/2012

This Annex uses the definitions set out in the Agreement on service of payment cards on the Internet (hereinafter the Agreement).

Advanced Credit Card processing Service

Department Service Integration with e-pramaan

SEPA Direct Debit Implementation Guide. Version 1.7

Web Services API Developer Guide

INTRODUCTION MERCHANT INTEGRATION. Ha noi, 10/7/2012

Recurring Payments Manual

Merchant Plug-In. Specification. Version SIX Payment Services

State of North Dakota. Module 5 Accounts Receivable PeopleSoft Financials 9.0

vcommander will use SSL and session-based authentication to secure REST web services.

Transcription:

Guide REST based web services in Automatisk kortbetaling via Betalingsservice Version 3.1 Nets A/S Lautrupbjerg 10 2750 Ballerup DK T +45 44 68 44 68 F +45 44 86 09 30 www.nets.eu 1

Contents 1. Background... 3 2. Purpose of the REST-services... 3 3. Security via Certificate... 3 4. Input format... 4 5. Types of REST-services available... 6 5.1 First time payment history... 7 5.2 First time transaction(s) status service... 9 5.3 AUTH transaction service... 10 5.4 Cancel AUTH transactions service... 11 5.5 Capture AUTH transactions service... 13 5.6 Credit transaction service... 15 5.7 List temporary customer numbers... 17 5.8 Debtors contacts service... 19 5.9 Card mandate status service... 20 5.10 Transaction status service... 22 5.11 Active mandates service... 24 5.12 Outstanding payments service... 26 5.13 Transaction history service... 27 5.14 Expiring card service... 29 5.15 Transaction credit service... 30 5.16 Incomplete payment service from the Tast-selv module... 31 2

1. Background This document describes the informational services that are used by Automatic card payments via Betalingsservice users in order to retrieve information from different logical entities created via system. This includes information about card mandates, first time payments, recurring payments and telemarketing requests. The services also allows performing actions with first time payments, such as capturing the amount, cancellation and reversal. All these services are only accessible if user is authorized with FOCES certificate. 2. Purpose of the REST-services The web-services for automatic card payments are based on REST-services. RESTservices are a simple way to implement web-services in regard to collect data and to initiate updates. The advantages of REST-services are, that they can be called any time by adding input parameters in a specific URL and receive the output by XML. It is possible to collect status on different information about the automatic card payments. As well as to initiate a few card transactions via a REST call e.g. a credit transfer, which will be described below. REST services can be implemented in the merchants existing ERP system for the purpose of introducing the business user of a standardized overview or they can be called of technical users by doing ad hoc calls and read the results directly as XML. Find examples of the call syntax and reply format under the individual services below. 3. Security via Certificate In regard to secure and authorize the system a Functional Signature Certificate (FOCES) from Nets DanID is to be used to authorize the REST-service calls. The Functional Signature Certificate is used when two systems are communicating. It is not a check of an user and a system. Find further information her: www.nets-danid.dk/produkter/funktionssignatur/ The merchant need to do the following step for implementing Functional Signature Certificate. See specific Guide for Functional Signature Certificate for Automatic card payment on Nets.eu - click here. 3

4. Input format The format of the different REST based web-services are: Input parameters: Name Description Format Mandatory pbsno Creditors ID with Nets Number, 1-8 digits Yes debgrno The debtor group number that the customer Number, 1-5 digits Yes is enrolled to customerno Creditors ID for the debtor String No date Date when transaction was placed Date in DDMMYY Yes format orderno Nets ID for the transaction Number No transactionid ID for transaction in NetAxept String transactionstatus The current status of the transaction: Code RESERVED, PAID, RESCANCL, REVERSED amount The amount of first time payment String CreditorReference Data specified by creditor as a reference for String No payment statuscode The current status of the transaction: Code RESERVED, PAID, RESCANCL, REVERSED reservationdate Date when reservation was made Date in DDMMYY format cardexpirydate Month of card expiration Date in MMYY format DateFrom* Begin date of the requested period Date in DDMMYY No** format DateTo* End date of the requested period Date in DDMMYY No** format transactionstatus The current status of the transaction: Code No*** RESERVED, PAID, RESCANCL, REVERSED From Start date of the requested period when String No mandate was created To End date of the requested period when String No mandate was created debtorname Debtor name retrieved via CPR lookup Number address Debtor 1st address retrieved via CPR lookup String postalcode Debtor postal code retrieved via CPR lookup Number, 4 digits city Debitor city retrieved via CPR lookup String mandatetype The type of agreement that the debtor has signed up for (e.g. always card payments, card payments until BS and so forth) 3 letters code WBS - Card until BS OCA - Card Only mandatestatus The current status of the mandate: ACTIVE, Code CANCELLED, EXPIRED mandateregdate Date when card mandate was registered Date in DDMMYY format paymentduedate Due date when payment should be done Date in DDMMYY format originalduedate Original due date when payment should be Date in DDMMYY done format 4

* The requested period may be maximum 1 year. Service will respond with error if period greater than one year is entered. ** If period is not entered, then the list will contain info for all registered transactions for the particular creditor (and perhaps debtor) taken for the period 1-year before the date of query. *** If no operation type is specified, then the list will contain the transactions will all possible statuses using both dates (paid_date and reservn_cancl_date). Otherwise, only corresponding dates will be used to obtain data within required time range : paid_date for PAID and REVERSED, reservn_cancl_date for RESERVE and RESCANCL. 5

5. Types of REST-services available The following REST-services will be available: REST-services 1-7 when first time payment together with mandate enrolment. REST-services 8-15 when no first time payment together with mandate enrolment. REST-service 16 is an extra service used if the Tast-Selv module is used. 1. First time payment history service - Get overview of mandates with 1. time payment together with enrolment for a given period. 2. First time transaction(s) status service - Get status on a specific 1. time payment success or failed. 3. AUTH transaction service - Get overview of reserved 1. time payments (AUTH) 4. Cancel AUTH transactions service - Cancel/annul a reserved 1. time payment 5. Capture AUTH transactions service - Initiate a payment process of a reserved payment (Capture) 6. Credit transaction service - Initiate a reversal/credit transfer of a specific 1. time payment. 7. List temporary customer numbers - Get list of mandates with temporary customer numbers. 8. Debtors contacts service - Get data of customers with card mandates. 9. Card mandate status service - Get overview of card mandates for a given period. 10. Transaction status service - Get status of a specific card payment. 11. Active mandates service - Get overview of all active mandates. 12. Outstanding payments service - Get overview of pending payments. 13. Transaction history service - Get overview of card payments for a given period. 14. Expiring card service - Get overview of mandates with cards that are about to expire within the coming two months. 15. Transaction credit service - Initiate a reversal/credit transfer of a specific card payment. 16. Incomplete payment service - Used when using the Tast-selv module to get list of all incomplete and unsuccessful transactions. When testing the Rest-services are to be called via: https://bsekspress-test.nets.no/bsekspress/rest/cardmandate/active/pbsnumber Note: be aware that in the test URL you should use your own pbs no. In production the Rest-services are to be called via: https://bsekspress.nets.no/bsexpress/rest/... 6

5.1 First time payment history Description The web service provides a list of first-time payment transactions, which took place within the specified period. Output results will be sorted with the most recent on top. Input parameters /bsexpress/rest/cardpaymentfirst/history/pbsno/debgrno/datefrom/datefrom/dateto/ DateTo/customerNo/CustomerNo/status/TransactionStatus * The requested period may be maximum 1 year. Service will respond with error if period greater than one year is entered. ** If period is not entered, then the list will contain info for all registered transactions for the particular creditor (and perhaps debtor) taken for the period 1-year before the date of query. Output parameters Client will receive one or many JSON objects [pbsno, debgrno, customerno, date, orderno, transactionid, transactionstatus] Example Requests: /bsexpress/rest/cardpaymentfirst/history/24997/95623 /bsexpress/rest/cardpaymentfirst/history/24997/95623/customerno/000024996cust04 /bsexpress/rest/cardpaymentfirst/history/24997/95623/datefrom/010113/dateto/131213 /bsexpress/rest/cardpaymentfirst/history/24997/95623/status/paid /bsexpress/rest/cardpaymentfirst/history/24997/95623/datefrom/010113/dateto/131213/cus tomerno/000024996cust04 /bsexpress/rest/cardpaymentfirst/history/24997/95623/datefrom/010113/dateto/131213/stat us/reserved /bsexpress/rest/cardpaymentfirst/history/24997/95623/customerno/000024996cust04/statu s/rescancl /bsexpress/rest/cardpaymentfirst/history/24997/95623/datefrom/010113/dateto/131213/cus tomerno/000024996cust04/status/reversed Response: Output will contain the list of one specific transaction or more. 7

[ ] "pbsno": 24997, "debgrno": 95623, "customerno": "000024996CUST04", "date": "011213", "orderno": 6252065, "transactionid": "2d3dc50b429d44b0a9c28640c4a2c718", "transactionstatus": "PAID" "amount": "DKK 1.000,15", "pbsno": 24997, "debgrno": 95623, "customerno": "000024996CUST04", "date": "010213", "orderno": 6268007, "transactionid": "f1d50bf2a74f4f058c688b1c3ff77af7", "transactionstatus": "RESERVED" "amount": "DKK 412,00", "pbsno": 24997, "debgrno": 95623, "customerno": "000024996CUST04", "date": "031213", "orderno": 6268007, "transactionid": "142cfaee908e4872b48dcb67fc030416", "transactionstatus": "REVERSED" "amount": "DKK 9,99" Error handling If the user has requested a Web service that does not exist, or provided a wrong set of parameters, he will receive a general 404 http response If service path as well as provided parameters are ok, but there is no data to return a 204 http response will be returned If service path as well as provided parameters are ok, but during execution an error occurs, then the service will return an error object with code and description fields "code": -1, "description": "Invalid date range, expected range must not exceed 1 year, got: 011110-290114" 8

5.2 First time transaction(s) status service Description The web service provides information about the status of first-time payment transaction for specified creditor and debtor. Input parameters /bsexpress/rest/cardpaymentfirst/status/pbsno/debgrno/ customerno/customerno/creditorreference/creditorreference/orderno/orderno * One of OrderNo and CreditorReference should be specified. Output parameters Client will receive one or many JSON objects [pbsno, debgrno, customerno, orderno, creditorreference, statuscode] Example Requests: /bsexpress/rest/cardpaymentfirst/status/24997/95623/0002499600exp02/orderno/6502777 /bsexpress/rest/cardpaymentfirst/status/24997/95623/0002499600exp02/creditorreference/pt9956ex2 Response: Output will contain the list of one specific transaction or more. "pbsno": 24997, "debgrno": 95623, "customerno": "0002499600EXP02", "orderno": 6502777, "creditorreference": "PT9956EX2", "statuscode": "RESERVED" "amount": "DKK 1.099,99" Error handling If user has requested a Web service that does not exist, or provided a wrong set of parameters, he will receive a general 404 http response. If both service path and provided parameters are ok, but there is no data to return, a 204 http response will be returned. If both service path and provided parameters are ok, but during execution an error occurs, error response with code and description fields will be returned. "code": -1, "description": "Value '10110%' of parameter 'orderno' is not a valid Number" 9

5.3 AUTH transaction service Description The web service provides a list of first-time payment transactions, for which reservation was made within recent 19 days and haven't been captured yet. Output results will be sorted with the most recent on top. Input parameters /bsexpress/rest/cardpaymentfirst/reservations/pbsno/debgrno Output parameters Client will receive one or many JSON objects [pbsno, debgrno, customerno, reservationdate, cardexpirydate, creditorreference, orderno] Example Request: /bsexpress/rest/cardpaymentfirst/reservations/24997/95623 Response: Output will contain the list of one specific transaction or more. "pbsno": 24997, "debgrno": 95623, "customerno": "000024996CUST04", "reservationdate": "011213", "cardexpirydate": "0122", "creditorreference": "PT9956EX2", "orderno": 6252065 "amount": "DKK 100,00", "pbsno": 24997, "debgrno": 95623, "customerno": "000024996CUST04", "reservationdate": "111213", "cardexpirydate": "1221", "creditorreference": "PT9920STN", "orderno": 6268007 "amount": "DKK 9,09", "pbsno": 24997, "debgrno": 95623, "customerno": "000024996CUST04", "reservationdate": "111213", "cardexpirydate": "0222", "creditorreference": "PT9924STD", "orderno": 6268206 "amount": "DKK 2.500,10" 10

Error handling If the user has requested a Web service that does not exist, or provided a wrong set of parameters, he will receive a general 404 http response If service path as well as provided parameters are ok, but there is no data to return a 204 http response will be returned If service path as well as provided parameters are ok, but during execution an error occurs, then the service will return an error object with code and description fields "code": -1, "description": "Value '2$' of parameter 'debgrno' is not a valid Number" 5.4 Cancel AUTH transactions service Description The web service allows creditor to initiate a cancellation of reservation for first-time payment transaction, to remove a reservation for a specific transaction and given customer. Input parameters /bsexpress/rest/cardpaymentfirst/reservation/cancel/pbsno/debgrno/kundenummer/ OrderNo Output parameters Client will receive one JSON object message in case of success Name Description Format message Result message of the cancelled operation, "Annul succeeded" String In case of exception, an error JSON object will be returned (see below) Examples Request: bsexpress/rest/cardpaymentfirst/reservation/cancel/24997/95682/0002499600exp02/895299 9 Response (success): "message": "Annul succeeded" 11

Error handling If user has requested a Web service that does not exist, or provided a wrong set of parameters, then he will receive a general 404 http response. If service path as well as provided parameters are ok, but during execution an error occurs, then the service will return an error object with code and description fields. In case of input parameter validation exception (e.g. accidently typed symbol in DebGrNo or OrderNo) response will contain JSON object with code "-1" and detailed description of failed parameter as a message. In case if no data was found (e.g. OrderNo doesn't exist for used DebGrNo, PbsNo and CustomerNo) response will have code "-2" and text "Payment not found". In case if Netaxept returned error while actually processing the payment response will consist of code "-3" and text with error from Netaxept. In case of any other internal Netaxept error response will be "-500" as a code and details in text. "code": -1, "description": "Value '124997$' of parameter 'pbsno' is not a valid Number." "code": -2, "description": "Payment not found" "code": -3, "description": "Netaxept error occurs: Unable to annul, wrong state" 12

5.5 Capture AUTH transactions service Description The web service allows creditor to initiate a capture operation on reservation for firsttime payment transaction, to capture payment reservation for a specific transaction and given customer. Input parameters /bsexpress/rest/cardpaymentfirst/reservation/capture/pbsno/debgrno/kundenummer/ OrderNo Output parameters Client will receive one JSON objects code, message Name Description Format message Result message of the capture operation, "Capture succeeded" String In case of exception, an error JSON object will be returned (see below). Examples Request: bsexpress/rest/cardpaymentfirst/reservation/capture/24997/95682/0002499600exp02/8952999 Response (success): "message": "Capture succeeded" Error handling If user has requested a Web service that does not exist, or provided a wrong set of parameters, then he will receive a general 404 http response If service path as well as provided parameters are ok, but during execution an error occurs, then the service will return an error object with code and description fields In case of input parameter validation exception (e.g. accidently typed symbol in DebGrNo or OrderNo) response will contain JSON object with code "-1" and detailed description of failed parameter as a message In case if no data was found (e.g. OrderNo doesn't exist for used DebGrNo, PbsNo and CustomerNo) response will have code "-2" and text "Payment not found" In case if Netaxept returned error while actually processing the payment response will consist of code "-3" and text with error from Netaxept In case of any other internal Netaxept error response will be "-500" as a code and details in text 13

"code": -1, "message": "Value '2!' of parameter 'debgrno' is not valid Number." "code": -2, "message": "Payment not found" "code": -3, "message": "Netaxept error occurs: Transaction amount must be greater than zero." 14

5.6 Credit transaction service Description The web service allows creditor to initiate a credit operation on completed first-time payment transaction, to reverse payment for a specific transaction and given customer. Input parameters /bsexpress/rest/cardpaymentfirst/credit/pbsno/debgrno/kundenummer/orderno Output parameters Client will receive one JSON objects code, message Name Description Format message Result message of the credit operation, "Credit succeeded" String In case of exception, an error JSON object will be returned (see below) Examples Request: bsexpress/rest/cardpaymentfirst/credit/24997/95682/0002499600exp02/8952999 Response (success): "message": "Credit succeeded" Error handling If user has requested a Web service that does not exist, or provided a wrong set of parameters, then he will receive a general 404 http response If service path as well as provided parameters are ok, but during execution an error occurs, then the service will return an error object with code and description fields. In case of input parameter validation exception (e.g. accidently typed symbol in DebGrNo or OrderNo) response will contain JSON object with code "-1" and detailed description of failed parameter as a message. In case if no data was found (e.g. OrderNo doesn't exist for used DebGrNo, PbsNo and CustomerNo) response will have code "-2" and text "Payment not found". In case if Netaxept returned error while actually processing the payment response will consist of code "-3" and text with error from Netaxept. 15

In case of any other internal Netaxept error response will be "-500" as a code and details in text "code": -1, "description": "Value '10888(' of parameter 'orderno' is not a valid Number." "code": -2, "description": "Payment not found" "code": -3, "description": "Netaxept error occurs: Transaction amount must be greater than zero." 16

5.7 List temporary customer numbers Description The web service allows to retrieve information about mandates that have temporary generated CustomerNo. Input parameters /bsexpress/rest/cardmandatetempno/status/pbsno/debgrno/from/to * If the dates are not set, then all relevant card mandates will be returned. Time range can be set up to exact time in format DDMMYYYYhhmm, or without it DDMMYYYY. If the time range is set with time (hours/minutes), then these will be used, otherwise all active mandates will be returned for the full date, from/to midnight. Output parameters Client will receive one or many JSON objects [pbsno, debgrno, customerno, DebtorName, address, postalcode, city] Example Requests: /bsexpress/rest/cardmandatetempno/status/24997/2/200120141400/200120141600 /bsexpress/rest/cardmandatetempno/status/24997/2/01012014/29012014 /bsexpress/rest/cardmandatetempno/status/24997/2 Response: Output will contain the list of one specific mandate or more. [ "pbsno": 24997, "debgrno": 95623, "customerno": "0002499600EXP02", "debtorname": "Niels Holm", "address": "Industrivænget 2,2 tv", "postalcode": 9000, "city": "Aalborg" ] Error handling If user has requested a Web service that does not exist, or provided a wrong set of parameters, he will receive a general 404 http response 17

If service path as well as provided parameters are ok, but there is no data to return a 204 http response will be returned If service path as well as provided parameters are ok, but during execution an error occurs, the service will return an error object with code and description fields "code": -1, "description": "Value '2499%' of parameter 'pbsno' is not a valid Number." 18

5.8 Debtors contacts service Description Web service that provides information about registered mandates for defined debtor Input parameters /bsexpress/rest/cardmandate/contacts/pbsno/kundenummer Output parameters JSON array of [debgrno, customerno, mandatetype, mandatestatus] Example Request: /bsexpress/rest/cardmandate/contacts/78945614/12345678912adf Response: "debgrno": 1, "customerno": "CARD25", "mandatetype": "UBS", "mandatestatus": "ACTIVE", "debgrno": 2, "customerno": "CARD25", "mandatetype": "OCA", "mandatestatus": "CANCELLED" Error handing If user has requested a Web service that does not exist, or provided a wrong set of parameters, then he will receive a general 404 http response If service path as well as provided parameters are ok, but during execution an error occurs, then the service will return an error object with code and description fields "code": -1, "description": "Value '214036@' of parameter 'pbsno' is not a valid Number." 19

5.9 Card mandate status service Description Web service that provides information about current status of registered Card Mandates Input parameters /bsexpress/rest/cardmandate/status/pbsno/debgrpno/kundenummer /bsexpress/rest/cardmandate/status/pbsno/kundenummer Output parameters Client will receive one or many JSON objects [debgrno, customerno, mandatestatus] depending on debgrno parameter Example Request: /bsexpress/rest/cardmandate/status/24997/2/000024996 /bsexpress/rest/cardmandate/status/24997/000024996 Response: If debgrno provided in input parameters "debgrno": "2", "customerno": "000024996CUST04", "mandatestatus": "ACTIVE" If debgrno is not provided in input parameters, response contains following info: [ "debgrno": "2", "customerno": "000024996CUST04", "mandatestatus": "ACTIVE", "debgrno": "1", "customerno": "000024996CUST04", "mandatestatus": "CANCELLED", "debgrno": "1", "customerno": "000024996CUST04", "mandatestatus": "EXPIRED" 20

Error handing If user has requested a Web service that does not exist, or provided a wrong set of parameters, then he will receive a general 404 http response If service path as well as provided parameters are ok, but during execution an error occurs, the service will return an error object with code and description fields "code": -1, "description": "Value '000024996CUST04&' of parameter 'customerno' is not alphanumeric string." 21

5.10 Transaction status service Description The web service provides information about the status of payment transactions for a defined debtor. Optionally order number can be also provided. Input parameters /bsexpress/rest/cardpayment/statuses/pbsno/kundenummer/orderno Output parameters Client will receive one or many JSON objects [debgrno, customerno, mandatestatus] depending on debgrno parameter Example Request: /bsexpress/rest/cardpayment/statuses/24997/0002499600exp02/777 /bsexpress/rest/cardpayment/statuses/24997/0002499600exp02 Response: Response contains the list of transaction (s): "debgrno": 1, "customerno": "0002499600EXP02", "orderno": 777, "statuscode": "INIT", "debgrno": 1, "customerno": "0002499600EXP02", "orderno": 778, "statuscode": "CANCL", "debgrno": 1, "customerno": "0002499600EXP02", "orderno": 888, "statuscode": "INIT", "debgrno": 1, "customerno": "0002499600EXP02", "orderno": 889, "statuscode": "FAIL", "debgrno": 1, "customerno": "0002499600EXP02", "orderno": 999, "statuscode": "INIT" 22

Error handing If user has requested a Web service that does not exist, or provided a wrong set of parameters, he will receive a general 404 http response If service path as well as provided parameters are ok, but during execution an error occurs, the service will return an error object with code and description fields "code": -1, "description": "Value '24457$' of parameter 'pbsno' is not a valid Number." 23

5.11 Active mandates service Description The web service provides information about creditors active mandates, registered in BS Express Input parameters /bsexpress/rest/cardmandate/active/pbsno Output parameters JSON array of [debgrno, customerno, mandatetype, mandatestatus] Example Request: /bsexpress/rest/cardmandate/active/24997 Response: Response contains the list of active card mandates: "debgrno": "1", "customerno": "0002499600EXP02", "mandatetype": "OCA", "cardexpirydate": "0114", "mandateregdate": "111113", "debgrno": "1", "customerno": "00024996CUST010", "mandatetype": "OCA", "cardexpirydate": "0117", "mandateregdate": "301013", "debgrno": "1", "customerno": "000024996CUST05", "mandatetype": "OCA", "cardexpirydate": "0122", "mandateregdate": "300913", "debgrno": "2", "customerno": "000024996CUST04", "mandatetype": "OCA", "cardexpirydate": "0122", "mandateregdate": "300913", "debgrno": "1", "customerno": "0002499600EXP02", "mandatetype": "OCA", "cardexpirydate": "0114", "mandateregdate": "300913" 24

Error handing If the user has requested a Web service that does not exist, or provided a wrong set of parameters, then he will receive a general 404 http response If service path as well as provided parameters are ok, but during execution an error occurs, the service will return an error object with code and description fields "code": -1, "description": "Value '124997$' of parameter 'pbsno' is not a valid Number." 25

5.12 Outstanding payments service Description The web service provides information about creditors outstanding payments for the defined period. Input parameters /bsexpress/rest/cardpayment/outstanding/pbsno/kundenummer/from/to /bsexpress/rest/cardpayment/outstanding/pbsno/from/to /bsexpress/rest/cardpayment/outstanding/pbsno/from /bsexpress/rest/cardpayment/outstanding/pbsno Output parameters Client will receive one/many JSON objects [customerno, orderno, debgrnr, paymentduedate, amount] Example Request: /bsexpress/rest/cardpayment/outstanding/24997/0002499600exp02/011113/301213 Response: Response contains the list of transaction (s): "customerno": "0002499600EXP02", "orderno": 888, "debgrno": 1, "paymentduedate": "141113", "amount": "23000.00 DKK", "customerno": "0002499600EXP02", "orderno": 777, "debgrno": 1, "paymentduedate": "131113", "amount": "22000.00 DKK" The list contains transactions ordered by new_due_date, beginning with the latest Error handing If user has requested Web service that does not exist, or provided wrong set of parameters, he will receive general 404 http response If service path as well as provided parameters are ok, but during execution some error occurs, then service will return error object with code and description fields "code": -1, "description": "Value '1234%' of parameter pbsno' is not a valid Number." 26

5.13 Transaction history service Description The web service provides information about creditors payment transactions for the defined period Input parameters /bsexpress/rest/cardpayment/history/pbsno/from/to Output parameters Client will receive one or many JSON objects debgrnr, customerno, orderno, statuscode, originalduedate, searchdatefrom, searchdateto Example Request: /bsexpress/rest/cardpayment/history/78945614/131112/131113 Response: Response contains the list of transaction (s): [ "debgrno": 1, "customerno": "000024996CUST08", "orderno": 891, "statuscode": "INIT", "originalduedate": "131113", "searchdatefrom": "131112", "searchdateto": "131113", "debgrno": 1, "customerno": "0002499600EXP02", "orderno": 777, "statuscode": "INIT", "originalduedate": "131113", "searchdatefrom": "131112", "searchdateto": "131113", "debgrno": 1, "customerno": "0002499600EXP02", "orderno": 778, "statuscode": "CANCL", "originalduedate": "131113", "searchdatefrom": "131112", "searchdateto": "131113", "debgrno": 1, "customerno": "0002499600EXP02", "orderno": 889, 27

] "statuscode": "FAIL", "originalduedate": "131113", "searchdatefrom": "131112", "searchdateto": "131113", "debgrno": 1, "customerno": "0002499600EXP02", "orderno": 999, "statuscode": "INIT", "originalduedate": "131113", "searchdatefrom": "131112", "searchdateto": "131113", "debgrno": 1, "customerno": "00024996CUST010", "orderno": 890, "statuscode": "INIT", "originalduedate": "131113", "searchdatefrom": "131112", "searchdateto": "131113" Error handing If user has requested Web service that does not exist, or provided wrong set of parameters, then he will receive general 404 http response If service path as well as provided parameters are ok, but during execution an error occurs, then the service will return an error object with code and description fields "code": -1, "description": "Invalid date range, expected range must not exceed 1 year, got: 010110-020111" 28

5.14 Expiring card service Description The web service provides a list of card mandates, which will expire in defined period, or, if the period is not specified, within the nearest two months. Input parameters /bsexpress/rest/cardmandate/expiry/pbsno/kundenummer/from/to /bsexpress/rest/cardmandate/expiry/pbsno/kundenummer/from /bsexpress/rest/cardmandate/expiry/pbsno/kundenummer Output parameters Client will receive one/many JSON objects [debgrno, customerno, mandatestatus, cardexpirydate, cardno] Example Request: /bsexpress/rest/cardmandate/expiry/24997/000024996cust04/1113/1222 Response: "debgrno": "1", "customerno": "000024996CUST04", "mandatestatus": "CANCELLED", "cardexpirydate": "0122", "cardno": "4925xxxxxxxx0004", "debgrno": "1", "customerno": "000024996CUST04", "mandatestatus": "EXPIRED", "cardexpirydate": "1221", "cardno": "4925xxxxxxxx0004", "debgrno": "2", "customerno": "000024996CUST04", "mandatestatus": "ACTIVE", "cardexpirydate": "0222", "cardno": "4925xxxxxxxx0079" Error handing If the user has requested a Web service that does not exist, or provided a wrong set of parameters, he will receive a general 404 http response. If service path and provided parameters are ok, but during execution an error occurs, then the service return an error object with code and description fields. "code": -1, "description": "Value '1234%' of parameter 'pbsno' is not a valid Number." 29

5.15 Transaction credit service Description The web service allows creditor to initiate a credit transaction, to reverse a payment for a specific transaction and given customer. Input parameters /bsexpress/rest/cardpayment/credit/pbsno/kundenummer/orderno Output parameters Client will receive one JSON objects code, message Name Description Format code Result code of the operation: CREDITED or FAILED String message Result message of the credit operation String Example Request: bsexpress/rest/cardpayment/credit/24997/0002499600exp02/999 Response: Response contains the following: "code": "CREDITED", "message": "Successfully credited" Error handing If user has requested a Web service that does not exist, or provided a wrong set of parameters, then he will receive a general 404 http response If service path as well as provided parameters are ok, but during execution an error occurs, then the service will return an error object with code and description fields "code": -2, "description": "Payment not found, it may be already credited" 30

5.16 Incomplete payment service from the Tast-selv module Description This service is used by Operator to get list of all incomplete and unsuccessful transactions (CARDSYS, IVRERR), when creditor is using Automatic card payments Tast-selv module. Input parameters /bsexpress/rest/telemarketing/incompletetransactions/pbsno/debgrno/from/to Output parameters Client will receive one or many JSON objects pbsno, debgrnr, customerno, transactionid, timestamp, response, responsecode, responsesource, ivrerrortext, debtorphoneno Name Description Format pbsno Creditors ID with Nets Integer debgrnr The debtor Group number that the customer is enrolled to Integer customerno Creditors ID for the debtor Integer transactionid ID for transaction in NetAxept String timestamp Date the request was created Timestamp dd-mm-yyyy hh:mm:ss response Identify the level where error occurred (CARDSYS, IVRERR,) String responsecode Error code generated by NetAxept and returned by IVR. String responsesource Cause of error generated by NetAxept or by IVR. (ex. Refused by String Issuer) ivrerrortext Error description generated by IVR String debtorphoneno Debtor phone number String referenceid Unique ID for particular day generated for each telemarketing request Integer Example Request: /bsexpress/rest/telemarketing/incompletetransactions/25000/6/110414/140414 Response: Response contains the list of incomplete telemarketing transactions: 0: pbsno: 25000 debgrno: 6 customerno: "ASD000001111111" transactionid: "142cfaee908e4872b48dcb67fc030416" timestamp: "11-04-2014 13:13:34" response: "CARDSYS" responsecode: "ds" responsesource: "02" ivrerrortext: "" 31

,, debtorphoneno: "AdditionalInfo" referenceid: 3 pbsno: 25000 debgrno: 6 customerno: "ASD000001111111" transactionid: "142cfaee908e4872b48dcb67fc030416" timestamp: "12-04-2014 12:15:34" response: "IVRERR" responsecode: "02" responsesource: "as" ivrerrortext: "IVR hang up" debtorphoneno: "AdditionalInfo" referenceid: 2 pbsno: 25000 debgrno: 6 customerno: "ASD000001111111" transactionid: "142cfaee908e4872b48dcb67fc030416" timestamp: "14-04-2014 12:12:24" response: "IVRERR" responsecode: "04" responsesource: "as" ivrerrortext: "Hang up due to max retry of CPR or CVR in IVR" debtorphoneno: null referenceid: 7 Error handing If user has requested web service that does not exist, or provided wrong set of parameters, then he will receive general 404 http response If SM_USER header is missing or has incorrect format or pbsno is missing then 403 https response is received. If pbsno has incorrect format then 400 https response is received. If service path as well as provided parameters are ok, but during execution an error occurs, then the service will return an error object with code and description fields "code": -1, "description": "Invalid date range, expected range must not exceed 1 year, got: 010110-020111" 32