Page history
version | date | desc | |
---|---|---|---|
1.0 | 2021-03-05 | Page made public | PN |
Basic information
Easy Heading Free | ||||
---|---|---|---|---|
|
- To use the API you will need an api-key. (you get your key by contacting Westpay)
- We use JSON for all data in the API
- Base URL for all requests is: https://api.westpay.se/access/v1
Required HTTP parameters
Name | Value |
---|---|
Authorization | “apikey {{your key}}” Example: ”apikey AbC123dEf456GHI78jkL90MnoPQ123rStU4vw56x7yz890” |
Content-Type | ”application/json;charset=UTF-8” |
Recommended usage
To build the data required for a complete onboarding you will have to collect some semi-static values from our API.
Our recommendation is that you collect these values once and then re-use them from a local source for future use.
The values we recommend that you store locally can be collected from below requests:
Card brands | /onboarding/getinfo/CardBrands | |
Acquirers | /onboarding/getinfo/Acquirers | |
Languages | /onboarding/getinfo/Languages | |
MCC Codes | /onboarding/getinfo/MCCCodes | |
Terminal models | /onboarding/getinfo/TerminalModels | |
Terminal Operating Mode | /onboarding/getinfo/TerminalOperatingMode |
Since the possible values can be updated it is important that you allow for future updates.
Information requests
Section | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Anchor | ||||
---|---|---|---|---|
|
Card brands
Lists all the supported card brands by name and id. The ID is used as part in the: `AcquiringAgreements` in the onboarding request.
GET {{base}}/onboarding/getinfo/CardBrands |
Section | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||
|
Anchor | ||||
---|---|---|---|---|
|
Acquirers
Lists all the supported acquirers by name and id. The ID is used as part in the: `AcquiringAgreements` in the onboarding request.
GET {{base}}/onboarding/getinfo/Acquirers |
Section | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||
|
Anchor | ||||
---|---|---|---|---|
|
Languages
Lists all the supported acquirers by name and id. The ID is used as part in the: `Languages` in the onboarding request.
GET {{base}}/onboarding/getinfo/Languages |
Section | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||
|
Anchor | ||||
---|---|---|---|---|
|
MCC Codes
Lists all the supported Merchant Category Codes (MCC codes) by name, code and id. The CODE is used as the MCCCode value in the onboarding request.
The MCC code is something that is found on the merchant acquiring agreement and dictates the type of transactions services a merchant should have access to.
GET {{base}}/onboarding/getinfo/MccCodes |
Section | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||
|
Anchor | ||||
---|---|---|---|---|
|
Terminal models
Lists all the Westpay terminal models by name and id. The ID is used as part of the Terminal-id order section in the onboarding request.
Classic family (Windows CE) | Carbon family (Android) | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
GET {{base}}/onboarding/getinfo/TerminalModels |
Section | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||
|
Anchor | ||||
---|---|---|---|---|
|
Terminal Operating modes
Lists all the supported Terminal Operating modes by name and id. The ID is used as part of the Terminal-id order section in the onboarding request.
Usage description of the different operating modes:
Description | |
---|---|
EPAS | Integrated solution where the terminal is controlled from an external software |
Nexo | Integrated solution where the terminal is controlled from an external software |
OPI | Integrated solution communicating over the Oracle Payment Interface between terminal and Oracle Simphony |
Standalone | A free standing solution where the user manually enters sales amount directly on the payment terminal |
PAaS | A solution that allows partner applications to control the payment terminal via payment intents |
GET {{base}}/onboarding/getinfo/TerminalOperatingModes |
Section | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||
|
Anchor | ||||
---|---|---|---|---|
|
Merchant / Customer list request
Returns a list of all the sub-merchants already created under your account OR filtered by the customer ID provided.
Access is built on a tree structure where one customer can create 'infinite' sub-structures with branches for each sibling.
value | description |
---|---|
Id | the merchant customer number in Access |
parent | the Id of the parent to the merchant (the creater of the merchant) |
The Parent ID is used as part of the onboarding request to define where the user should be located in the tree structure.
Example:
|
Section | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
GET {{base}}/customer/GetCustomers?customerId |
Section | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||
|
GET {{base}}/customer/GetCustomers?customerId=2 |
Section | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||
|
Anchor | ||||
---|---|---|---|---|
|
Merchant On-boarding
Functions related to create or view status of your merchant onboarding requests
Submit / create
To create / onboard a merchant the request must include the following:
Parameter name | Maxlen | Description | ||
---|---|---|---|---|
RequestNotes | 1000 | Extra information to the onboarding operator | ||
ParentId | - | CustomerId of the customer that should be parent to the new customer. Valid values can for instance be found as “Id” from {{base}}/customer/GetCustomers | ||
OrganisationNo | 11 | The new customers organisation number | ||
Address |
| Address and contact information for the company | ||
| CompanyName | 100 |
| |
| Street | 40 |
| |
| ZipCode | 10 |
| |
| City | 20 |
| |
| Country | 50 |
| |
| ContactName | 50 |
| |
| ContactPhone | 20 |
| |
| ContactEmail | 100 |
| |
TransactionTypes | - | Which transaction should be supported by the terminal. Is password required to use this transaction type. At least one of the transaction types must be included. If a transaction type is omitted, it defaults to “Active=false”. If password is null/omitted, it defaults to “false”. | ||
AcquiringAgreements | - | For “CardBrandId”, use “Id” from {{base}}/onboarding/getinfo/CardBrands. For “AcquirerId”, use Id from {{base}}/onboarding/getinfo/Acquirers | ||
| CardBrandId | - | Use “Id” from {{base}}/onboarding/getinfo/CardBrands | |
| AgreementNumber | 50 |
| |
| AcquirerId | - | Use “Id” from {{base}}/onboarding/getinfo/Acquirers | |
Languages | R | Submit 1-3 languages. | ||
| LanguageId | - | Use Id from {{base}}/onboarding/getinfo/Languages | |
| IsDefault | - | This is the default language to use in the terminal. Only one language is allowed to have IsDefault set to true. Should be set on one. | |
SiteLanguage | - | Default language for the customer in Access. Valid values are “en-GB” (default) and “sv-SE”. [Optional] | ||
MccCode | 4 | MccCode of the customer. Use “Code” from {{base}}/onboarding/getinfo/MccCodes | ||
CountryCodeNumeric | - | Country code according to ISO 3166. Example: 752, 578, 208 | ||
CurrencyCode | - | Currency code according to Alpha code of ISO 4217. Example: SEK, NOK, EUR | ||
EndOfDayTime | 5 | Preferred time, allowed values are: “01:00” and “06:00” [Optional] | ||
Password | 6 | A preferred six digit long password. Required if any of the TransactionTypes require a password. | ||
ReceiptMerchantName | 100 | Merchant name to show on reciept | ||
TerminalSupportPhoneNumber | 20 | The number printed on the receipt when | ||
ReceiptPhoneNumber | 30 | Phone number to show on reciept | ||
Tipping | - | Should tipping be activated on the terminals | ||
Signature | - | Should signature authentication be activated on the terminals | ||
TerminalidOrder | - | |||
Quantity | - | Maximum quantity is 10 terminalid:s per order. | ||
| TerminalModelId | - | For “TerminalModelId”, use “Id” from {{base}}/onboarding/getinfo/TerminalModels. | |
| TerminalOperatingModeId | - | For “TerminalOperatingModeId”, use “Id” from {{base}}/onboarding/getinfo/TerminalOperatingModes. |
After submission you will in the response received back the generated merchant ID along with the request ID for your onboarding.
The merchant and request ID can then be used to lookup the request status.
POST {{base}}/onboarding/CreateRequest |
Section | |||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Anchor | ||||
---|---|---|---|---|
|
Request status lookup
Returns a list of all the onboarding requests created under your account OR filtered by the customer ID provided.
value | description |
---|---|
CustomerId | the merchant customer number in Access |
RequestId | The id of the request |
RejectMessage | A message sent from our onboarding team that describes why the request is denied. |
RequestStatus | The status of the current request |
TimeCreated |
Section | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
GET {{base}}/customer/GetRequests?customerId |
Section | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||
|
GET {{base}}/customer/GetRequests?customerId=10250 |
Section | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||
|
| CardBrandId | - | Use “Id” from {{base}}/onboarding/getinfo/CardBrands | |
---|---|---|---|---|
| AgreementNumber | 50 |
| |
| AcquirerId | - | Use “Id” from {{base}}/onboarding/getinfo/Acquirers |
Anchor | ||||
---|---|---|---|---|
|
Terminal management
Anchor | ||||
---|---|---|---|---|
|
Available update packages
Lists all the available terminal update packages linked to the specified customerId and account.
customerId | Your customer id in access |
---|---|
modelName | Model name to find packages for. For “model”, use “name” from /onboarding/getinfo/TerminalModels |
GET {{base}}/terminal/GetPackages?customerId={{customerId}}&model={{modelName}} |
Section | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||
|
Anchor | ||||
---|---|---|---|---|
|
Create update
Create a update configuration that can downloaded by the terminal via ApplicationUpdater
Parameter name | Maxlen | Description |
---|---|---|
customerId | - | Id of the customer with permissions on the package. Valid values can for instance be found as “Id” from {{base}}/customer/GetCustomers |
packageIds | 1 | List of Id of the package(s) to deploy. Currently only one packageId is allowed. For “packageIds”, use “Id” from {{base}}/terminal/GetPackages |
serialNumbers | - | List of serial numbers of the terminals to be updated |
Section | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
POST: {{base}}/terminal/CreateUpdate |
Section | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||
|