Paytrim API Service (v1)

Download OpenAPI specification:

Changelog — every change to this API, by date.

Paytrim API Service

This API provides you, our partner, the capability to:

  • Initiate the onboarding process for a merchant
  • Verify the current status of the merchant's onboarding
  • Look up a company in the national business register before onboarding it
  • Fetch the valid signatory combinations for a company
  • Get a list of active pricelists
  • Retrieve detailed information about a merchant and its structure, like stores, terminals and accounts
  • Add a store to a merchant, and update a store or the merchant's contact details
  • Retrieve a merchant's card transaction history

How onboarding works

Onboarding is asynchronous. add-merchant answers 202 as soon as the request is accepted and the work continues in the background, so the outcome is read from the status endpoint rather than from the response body.

1. GET  company-registry-information/{nationalId}   [optional]
        Skip it if you already know the national id and that the
        merchant is not onboarded yet.
        404 ................. not in the register, nothing to onboard
        200 isOnboarded=true  already a merchant, jump to step 6
        200 isOnboarded=false continue

2. GET  signatory-combinations/{nationalId}
        [[A,B],[A,C]] ....... pick ONE combination, send all of its people
        [] .................. sole trader: send the owner with
                              isBeneficialOwner=true instead

3. GET  pricelists .......... pick a priceListId   [optional]
        Skip it if you have the pricelist ids stored already.

4. POST add-merchant ........ signatories + terminals + stores
        202 ................. accepted, onboarding is now running
        400 ................. fix the request and send it again

5. GET  status/{nationalId} . poll until it settles
        Pending ............. still working through the steps
        Active .............. done

6. GET  merchant-information/{nationalId}
        the roles, the stores and their terminals. The store ids here are
        the ones PATCH store accepts.

7. POST  store/{nationalId}                add another store
   PATCH store/{nationalId}/{storeId}      change one store, partially
   PATCH {nationalId}/contact-info         change email and/or phone

Sandbox Environment

Url: https://api.paytrim.com/Sandbox/

The sandbox answers from fixed in-memory companies, so the same request always gives the same answer and nothing you send is stored. A store you add or patch will not show up in merchant-information afterwards.

Only companies registered in your own country resolve. A Swedish organisation number called with Finnish credentials answers 404, exactly as it would in production.

Merchant sandbox companies

Every market has the same five companies, so you can learn the flow once and repeat it per country.

What it is for SE FI DK NO
Onboarded and running 5560729146 27481932 37120456 918834729
Onboarded, still mid-process 5591283402 16350275 25894316 984520190
Ready to be onboarded 5020786157 30817468 41068728 829103656
Sole trader, no signing combination 8904062380 19274052 18936577 916502834
Not in the register 5564831971 23369257 20443189 992741686

What each endpoint answers

Endpoint Running Mid-process Ready Sole trader Not in register
company-registry-information 200, isOnboarded true 200, true 200, false 200, false 404
signatory-combinations 200, two combinations 200, one 200, one 200, empty list 404
status 200, Active 200, Pending 404 not onboarded 404 not onboarded 404
merchant-information 200, two stores with terminals 200, one store, no terminals 404 not onboarded 404 not onboarded 404
add-merchant 400 already exists 400 already exists 202 with a full combination 202 with isBeneficialOwner 404
POST store 200 200 400 not onboarded 400 not onboarded 404
PATCH store 200 200 404 no store 404 no store 404
PATCH contact-info 204 204 400 not onboarded 400 not onboarded 404

Errors worth practising

Send this Get back
Only half of a two-person combination 400 Signatories are not a valid combination
A person who is in no combination 400 Unknown signatories
A sole trader without isBeneficialOwner 400 Sole trader without beneficial owner
An empty or missing terminals list 400 At least one payment terminal must be supplied
Verifone or Seitatech outside SE 400 Terminal not available in this country
A store id that does not belong to the merchant 404 Store not found
A patch with no fields set 400 Nothing to update

Country differences the sandbox reproduces

  • Finland and Denmark return signatories without a nationalId, because those registers do not supply one. The compositeKey is then the only thing that identifies the person, and it is what you send back in signatories.
  • Verifone and Seitatech are Swedish only. WestPay and SoftPay work in all four markets.
  • Amounts are whole units of the merchant's local currency, SEK, NOK, DKK or EUR, and are bucketed into intervals server-side. The same figure therefore means something different in Finland than in Sweden.

GET Sandbox/Merchant/sandbox-cases returns all of the above for your own country, generated from the fixtures themselves.

Transactions sandbox

That surface has its own companies: 5560572850, 8904062380, 5566808134 and 5590672613.

Production Environment

Url: https://api.paytrim.com/

Authentication

We use Azure Entra as Authentication provider, use provided credentials to retrieve token from Azure. Check out our Authentication guide https://docs.paytrim.com/auth Include the token in the header as 'Bearer '.

Merchant

Controller for onboard new customers. There are endpoints for onboard new merchant and see status on onboarding. The Pricelist endpoint is used to fetch active pricelists.

Onboard a new merchant with stores

This initiates the onboarding process for a new merchant along with their stores. If the request is accepted, an HTTP 202 (Accepted) response is returned. Since the onboarding process is asynchronous, the onboarding status can be verified through the status endpoint.

Authorizations:
Bearer
Request Body schema: application/json
required
nationalId
required
string non-empty

The national id of the company using the format 555555xxxx or 934344334

email
required
string <email> non-empty

Email to the customer

phone
required
string non-empty

Phone number to the customer

required
Array of objects (Person)

Signing Combinations, provide answers to which combinations of individuals, individually or in combination that has sign the contract

externalAgreementNumber
required
string non-empty

Agreement number for the sign contract

signedDate
required
string <date-time>

Signing date for the contract

priceListId
required
string <uuid>

The Guid of a pricelistId, Fetch from pricelist endpoint

feeBillingType
required
string (FeeBillingType)
Enum: "Daily" "Monthly"
bindingDate
string or null <date-time>

If dynamic pricelist the pricelist is bound to selected day and can't be changed automatic depended on volume

terminals
required
Array of strings (PaymentTerminalBrand) non-empty
Items Enum: "Verifone" "WestPay" "Seitatech" "SoftPay"

The payment terminal(s) the merchant will use. Verifone and Seitatech are only available for Swedish merchants - WestPay and SoftPay are available everywhere

required
Array of objects (AddStore)

List of Store connected to Merchant

Responses

Request samples

Content type
application/json
{
  • "nationalId": "string",
  • "email": "user@example.com",
  • "phone": "string",
  • "signatories": [
    ],
  • "externalAgreementNumber": "string",
  • "signedDate": "2019-08-24T14:15:22Z",
  • "priceListId": "19ba5d98-cd5e-43ca-bca6-332c7d2ccedc",
  • "feeBillingType": "Daily",
  • "bindingDate": "2019-08-24T14:15:22Z",
  • "terminals": [
    ],
  • "stores": [
    ]
}

Response samples

Content type
application/json
{
  • "type": "string",
  • "title": "string",
  • "detail": "string",
  • "status": 0,
  • "errors": {
    },
  • "traceId": "string"
}

Merchant onboarding status

This returns the status of each onboarding step required for activating a merchant. It includes statuses for: the overall condition of the legal entity, bank account, and beneficial owner. If status is Approved the onboarding is complete and merchant is ready to make transactions

Authorizations:
Bearer
path Parameters
nationalId
required
string

The national id of the company using the format 555555xxxx or 934344334

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "status": "Pending",
  • "onboardingStatus": "Manual_Handling",
  • "bankAccountStatus": "Pending",
  • "beneficialOwners": [
    ]
}

Get Pricelist

This returns a list of active pricelist object, Use this to get the pricelistUniqueId for the onboarding endpoint

Authorizations:
Bearer

Responses

Response samples

Content type
application/json
{
  • "list": [
    ]
}

Get company registry information

Looks up the company as it appears in the national business register, plus whether it is already onboarded

Authorizations:
Bearer
path Parameters
nationalId
required
string

The national id of the company using the format 555555xxxx or 934344334

Responses

Response samples

Content type
application/json
{
  • "nationalId": "string",
  • "countryCode": "SE",
  • "name": "string",
  • "address": "string",
  • "city": "string",
  • "zipCode": "string",
  • "isOnboarded": true
}

Get signatory combinations

Returns the valid signatory combinations for a company, fetched from the company register. Use one of these combinations when onboarding the merchant.

Authorizations:
Bearer
path Parameters
nationalId
required
string

The national id of the company using the format 555555xxxx or 934344334

Responses

Response samples

Content type
application/json
[
  • [
    ]
]

Get merchant

Returns the merchant, its active roles, and its stores with their terminals.

Authorizations:
Bearer
path Parameters
nationalId
required
string

The national id of the company using the format 555555xxxx or 934344334

Responses

Response samples

Content type
application/json
{
  • "uniqueId": "a1e12d74-d756-40d1-9bb3-519def353f44",
  • "nationalId": "string",
  • "countryCode": "SE",
  • "name": "string",
  • "email": "string",
  • "phone": "string",
  • "status": "Pending",
  • "mctKey": "string",
  • "vatNumber": "string",
  • "roles": [
    ],
  • "stores": [
    ]
}

Add store

Adds a store to an already-onboarded merchant. A payout account for the store is created automatically.

Authorizations:
Bearer
path Parameters
nationalId
required
string

The national id of the company using the format 555555xxxx or 934344334

Request Body schema:
required
name
required
string non-empty

Name of the Store. Can't be changed after creation

required
object (Address)
required
Array of objects (OpeningHours)

Opening hours of the Store. All seven days are required, each exactly once. Set isOpen to false for a day the store is closed

seasonalVariation
required
boolean

Is the store close more then 3 month in a row on the year

eCommerce
required
boolean

Is the store using E-commerce

averageValuePerTransaction
required
integer <int32> [ 0 .. 2147483647 ]

Average value per transaction, as an amount in the merchant's local currency

averageMonthlyRevenue
required
integer <int32> [ 0 .. 2147483647 ]

Average monthly revenue, as an amount in the merchant's local currency

mcc
required
string (MccCode)
Enum: "Veterinary_Services" "General_Rent_a_Car" "Taxicabs_and_Limousines" "Motor_Freight_Carriers_Moving_and_Storage_Companies_Trucking_Local_Long_Distance_Delivery_Services_Local" "Transportation_Services_Not_elsewhere_classified" "Telecommunications_Equipment_including_telephone_sales" "Electric_Gas_Sanitary_and_Water_Utilities" "Motor_vehicle_supplies_and_new_parts" "Construction_Materials_Not_Elsewhere_Classified" "Computers_Computer_Peripheral_Equipment_Software" "Medical_Dental_Ophthalmic_Hospital_Equipment_and_Supplies" "Hardware_Equipment_and_Supplies" "Industrial_Supplies_Not_Elsewhere_Classified" "Precious_Stones_and_Metals_Watches_and_Jewelry" "Durable_Goods_Not_Elsewhere_Classified" "Stationery_Office_Supplies_Printing_and_Writing_Paper" "Books_Periodicals_and_Newspapers" "Florists_Supplies_Nursery_Stock_and_Flowers" "Non_durable_Goods_Not_Elsewhere_Classified" "Department_Stores" "Grocery_stores_Supermarkets" "Meat_Provisioners_Freezer_and_Locker" "Candy_Nut_and_Confectionery_Stores" "Dairy_Products_Stores" "Bakeries" "Misc_Food_stores_Convenient_stores_and_Specialty_Markets" "Car_and_Truck_Dealers_New_and_Used_Sales_Service_Repairs_Parts_and_Leasing" "Car_and_Truck_Dealers_Used_Sales_Service_Repairs_Parts_and_Leasing" "Automobile_Supply_Stores" "Automotive_Tire_Stores" "Automotive_Parts_Accessories_Stores" "Service_Stations_with_or_without_ancillary_services" "Merchants_classified_with_this_MCC_sell_electricity_for_the_purpose_of_fueling_an_automobile" "Mens_and_Boys_Clothing_and_Accessories_Stores" "Family_Clothing_Stores" "Shoe_Stores" "Mens_and_Womens_Clothing_Stores" "Tailors_Seamstress_Mending_and_Alterations" "Miscellaneous_Apparel_and_Accessory_Shops" "Furniture_Home_Furnishings_and_Equipment_Stores_ExceptAppliances" "Miscellaneous_Home_Furnishing_Specialty_Stores" "Electronic_Sales" "Music_Stores_Musical_Instruments_Piano_Sheet_Music" "Record_Shops" "Caterers" "Eating_places_and_Restaurants" "Drinking_Places_Alcoholic_Beverages_Bars_Taverns_Cocktail_lounges_Nightclubs_and_Discotheques" "Fast_Food_Restaurants" "Used_Merchandise_and_Secondhand_Stores" "Antique_Shops" "Wrecking_and_Salvage_Yards" "Bicycle_Shops_Sales_and_Service" "Sporting_Goods_Stores" "Book_Stores" "Stationery_Stores_Office_and_School_Supply_Stores" "Watch_Clock_Jewelry_and_Silverware_Stores" "Card_Shops_Gift_Novelty_and_Souvenir_Shops" "Luggage_Or_Leather_Goods_Stores" "Sewing_Needle_Fabric_and_Price_Goods_Stores" "Glassware_Crystal_Stores" "Artists_Supply_and_Craft_Shops" "Art_Dealers_and_Galleries" "Cosmetic_Stores" "Florists" "Cigar_Stores_and_Stands" "Pet_Shops_Pet_Foods_and_Supplies_Stores" "Tent_and_Awning_Shops" "Miscellaneous_and_Specialty_Retail_Stores" "Lodging_Hotel_Motels_and_Resorts" "Sporting_and_Recreational_Camps" "Trailer_Parks_and_Camp_Grounds" "Laundry_Cleaning_and_Garment_Services" "Dry_Cleaners" "Photographic_Studios" "Barber_and_Beauty_shops" "Shop_Repair_Shops_and_Shoe_Shine_Parlors_and_Hat_Cleaning_Shops" "Funeral_Service_and_Crematories" "Massage_Parlors" "Health_and_Beauty_Shops" "Miscellaneous_Personal_Services_not_elsewhere_classifies" "Commercial_Photography_Art_and_Graphics" "Protective_and_Security_Services_Including_Armored_Cars_and_Guard_Dogs" "Business_Services_Not_Elsewhere_Classified" "Automobile_Parking_Lots_and_Garages" "Automotive_Body_Repair_Shops" "Tire_Re_treading_and_Repair_Shops" "Automotive_Service_Shops" "Car_Washes" "Electrical_And_Small_Appliance_Repair_Shops" "Furniture_Furniture_Repair_and_Furniture_Refinishing" "Repair_Shops_and_Related_Services_Miscellaneous" "Bands_Orchestras_and_Miscellaneous_Entertainers_Not_Elsewhere_Classified" "Billiard_and_Pool_Establishments" "Bowling_Alleys" "Commercial_Sports_Athletic_Fields_Professional_Sport_Clubs_and_Sport_Promoters" "Golf_Courses_Public" "Video_Game_Arcades_Establishments" "Amusement_Parks_Carnivals_Circuses_Fortune_Tellers" "Memberchips_clubs_Sports_Recreation_Athletic_Country_clubs_and_Private_golf_courses" "Recreation_Services_Not_Elsewhere_Classified" "Doctors_and_Physicians_Not_Elsewhere_Classified" "Dentists_and_Orthodontists" "Optometrists_and_Ophthalmologists" "Opticians_Opticians_Goods_and_Eyeglasses" "Medical_Services_and_Health_Practitioners_Not_Elsewhere_Classified" "Legal_Services_and_Attorneys" "Schools_and_Educational_Services_Not_Elsewhere_Classified" "Automobile_Associations" "Membership_Organizations_Not_Elsewhere_Classified" "Professional_Services_Not_Elsewhere_Defined"

Responses

Request samples

Content type
{
  • "name": "string",
  • "address": {
    },
  • "openingHours": [
    ],
  • "seasonalVariation": true,
  • "eCommerce": true,
  • "averageValuePerTransaction": 2147483647,
  • "averageMonthlyRevenue": 2147483647,
  • "mcc": "Veterinary_Services"
}

Response samples

Content type
application/json
{
  • "uniqueId": "a1e12d74-d756-40d1-9bb3-519def353f44",
  • "name": "string",
  • "merchantId": "string",
  • "status": "Pending",
  • "mcc": "string",
  • "address": {
    },
  • "openingHours": [
    ],
  • "seasonalVariation": true,
  • "eCommerce": true,
  • "averageValuePerTransaction": "string",
  • "averageMonthlyRevenue": "string",
  • "terminals": [
    ]
}

Update store

Updates a store on an already-onboarded merchant. Only the fields you send are changed; anything left out keeps its current value. For opening hours, only the days you send are updated. Name and MCC can't be changed after creation.

Authorizations:
Bearer
path Parameters
nationalId
required
string

The national id of the company using the format 555555xxxx or 934344334

storeUniqueId
required
string <uuid>
Request Body schema:
required
object (AddressPatch)
Array of objects or null (OpeningHours)

Opening hours to change. Only the days you send are updated, the rest of the week is left as it is

seasonalVariation
boolean or null

Is the store close more then 3 month in a row on the year

eCommerce
boolean or null

Is the store using E-commerce

averageValuePerTransaction
integer or null <int32> [ 0 .. 2147483647 ]

Average value per transaction, as an amount in the merchant's local currency

averageMonthlyRevenue
integer or null <int32> [ 0 .. 2147483647 ]

Average monthly revenue, as an amount in the merchant's local currency

Responses

Request samples

Content type
{
  • "address": {
    },
  • "openingHours": [
    ],
  • "seasonalVariation": true,
  • "eCommerce": true,
  • "averageValuePerTransaction": 2147483647,
  • "averageMonthlyRevenue": 2147483647
}

Response samples

Content type
application/json
{
  • "uniqueId": "a1e12d74-d756-40d1-9bb3-519def353f44",
  • "name": "string",
  • "merchantId": "string",
  • "status": "Pending",
  • "mcc": "string",
  • "address": {
    },
  • "openingHours": [
    ],
  • "seasonalVariation": true,
  • "eCommerce": true,
  • "averageValuePerTransaction": "string",
  • "averageMonthlyRevenue": "string",
  • "terminals": [
    ]
}

Update merchant contact info

Updates the email and/or phone number of an already-onboarded merchant. Send only the field you want to change.

Authorizations:
Bearer
path Parameters
nationalId
required
string

The national id of the company using the format 555555xxxx or 934344334

Request Body schema: application/json
required
email
string or null <email>

Email to the customer. Leave out to keep the current one

phone
string or null

Phone number to the customer. Leave out to keep the current one

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com",
  • "phone": "string"
}

Response samples

Content type
No sample

SandboxMerchant

SANDBOX. Mirrors the Merchant controller against fixed in-memory companies in SE, FI, DK and NO. Nothing is stored, so the same request always gives the same answer. Start at GET sandbox-cases to see which national ids produce which outcome.

List the sandbox companies

Every company the sandbox knows in your country, what each one is for, and what each endpoint answers for it. Read this first: the other endpoints only recognise these national ids.

Authorizations:
Bearer

Responses

Response samples

Content type
application/json
{
  • "country": "SE",
  • "currency": "string",
  • "countryNotes": [
    ],
  • "companies": [
    ]
}

Onboard a new merchant with stores

Initiates onboarding for a new merchant along with their stores, and answers 202 when the request is accepted. Onboarding is asynchronous in production, so the outcome is read from the status endpoint.

In the sandbox the answer depends on which company you send: the ReadyToOnboard one is accepted when the signatories form a valid combination, the sole trader is accepted only when a signatory carries isBeneficialOwner, and the already-onboarded ones are rejected. See GET sandbox-cases.

Authorizations:
Bearer
Request Body schema: application/json
required
nationalId
required
string non-empty

The national id of the company using the format 555555xxxx or 934344334

email
required
string <email> non-empty

Email to the customer

phone
required
string non-empty

Phone number to the customer

required
Array of objects (Person)

Signing Combinations, provide answers to which combinations of individuals, individually or in combination that has sign the contract

externalAgreementNumber
required
string non-empty

Agreement number for the sign contract

signedDate
required
string <date-time>

Signing date for the contract

priceListId
required
string <uuid>

The Guid of a pricelistId, Fetch from pricelist endpoint

feeBillingType
required
string (FeeBillingType)
Enum: "Daily" "Monthly"
bindingDate
string or null <date-time>

If dynamic pricelist the pricelist is bound to selected day and can't be changed automatic depended on volume

terminals
required
Array of strings (PaymentTerminalBrand) non-empty
Items Enum: "Verifone" "WestPay" "Seitatech" "SoftPay"

The payment terminal(s) the merchant will use. Verifone and Seitatech are only available for Swedish merchants - WestPay and SoftPay are available everywhere

required
Array of objects (AddStore)

List of Store connected to Merchant

Responses

Request samples

Content type
application/json
{
  • "nationalId": "string",
  • "email": "user@example.com",
  • "phone": "string",
  • "signatories": [
    ],
  • "externalAgreementNumber": "string",
  • "signedDate": "2019-08-24T14:15:22Z",
  • "priceListId": "19ba5d98-cd5e-43ca-bca6-332c7d2ccedc",
  • "feeBillingType": "Daily",
  • "bindingDate": "2019-08-24T14:15:22Z",
  • "terminals": [
    ],
  • "stores": [
    ]
}

Response samples

Content type
application/json
{
  • "type": "string",
  • "title": "string",
  • "detail": "string",
  • "status": 0,
  • "errors": {
    },
  • "traceId": "string"
}

Merchant onboarding status

Returns the status of each onboarding step required to activate a merchant: the legal entity itself, the bank account, and the beneficial owners.

Only onboarded companies have a status. One that exists in the register but has not been onboarded answers 404, same as production.

Authorizations:
Bearer
path Parameters
nationalId
required
string

The national id of the company using the format 555555xxxx or 934344334

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "status": "Pending",
  • "onboardingStatus": "Manual_Handling",
  • "bankAccountStatus": "Pending",
  • "beneficialOwners": [
    ]
}

Get Pricelist

Returns the price lists available to you. The sandbox always returns the same three.

Authorizations:
Bearer

Responses

Response samples

Content type
application/json
{
  • "list": [
    ]
}

Get company registry information

Looks up the company as it appears in the national business register, plus whether it is already onboarded.

Every sandbox company answers here, onboarded or not — use isOnboarded to tell them apart before calling add-merchant.

Authorizations:
Bearer
path Parameters
nationalId
required
string

The national id of the company using the format 555555xxxx or 934344334

Responses

Response samples

Content type
application/json
{
  • "nationalId": "string",
  • "countryCode": "SE",
  • "name": "string",
  • "address": "string",
  • "city": "string",
  • "zipCode": "string",
  • "isOnboarded": true
}

Get signatory combinations

Returns the valid signatory combinations for a company, as the company register gives them. Send the people from one combination in signatories when onboarding.

Two cases worth handling: a sole trader has no combinations and answers 200 with an empty list, and in FI and DK the people come back without a nationalId because those registers do not supply one — the compositeKey is what you send back.

Authorizations:
Bearer
path Parameters
nationalId
required
string

The national id of the company using the format 555555xxxx or 934344334

Responses

Response samples

Content type
application/json
[
  • [
    ]
]

Get merchant

Returns the merchant, its active roles, and its stores with their terminals. The store ids here are the ones PATCH store accepts.

No personal identity numbers are included, by design.

Authorizations:
Bearer
path Parameters
nationalId
required
string

The national id of the company using the format 555555xxxx or 934344334

Responses

Response samples

Content type
application/json
{
  • "uniqueId": "a1e12d74-d756-40d1-9bb3-519def353f44",
  • "nationalId": "string",
  • "countryCode": "SE",
  • "name": "string",
  • "email": "string",
  • "phone": "string",
  • "status": "Pending",
  • "mctKey": "string",
  • "vatNumber": "string",
  • "roles": [
    ],
  • "stores": [
    ]
}

Add store

Adds a store to an already-onboarded merchant. A payout account for the store is created automatically.

The sandbox returns the store production would have created, including the interval your averages fall into — bucketed by the same rules, so the same number means something different in SEK and in EUR. Nothing is stored, so the store will not show up in merchant-information afterwards.

Authorizations:
Bearer
path Parameters
nationalId
required
string

The national id of the company using the format 555555xxxx or 934344334

Request Body schema: application/json
required
name
required
string non-empty

Name of the Store. Can't be changed after creation

required
object (Address)
required
Array of objects (OpeningHours)

Opening hours of the Store. All seven days are required, each exactly once. Set isOpen to false for a day the store is closed

seasonalVariation
required
boolean

Is the store close more then 3 month in a row on the year

eCommerce
required
boolean

Is the store using E-commerce

averageValuePerTransaction
required
integer <int32> [ 0 .. 2147483647 ]

Average value per transaction, as an amount in the merchant's local currency

averageMonthlyRevenue
required
integer <int32> [ 0 .. 2147483647 ]

Average monthly revenue, as an amount in the merchant's local currency

mcc
required
string (MccCode)
Enum: "Veterinary_Services" "General_Rent_a_Car" "Taxicabs_and_Limousines" "Motor_Freight_Carriers_Moving_and_Storage_Companies_Trucking_Local_Long_Distance_Delivery_Services_Local" "Transportation_Services_Not_elsewhere_classified" "Telecommunications_Equipment_including_telephone_sales" "Electric_Gas_Sanitary_and_Water_Utilities" "Motor_vehicle_supplies_and_new_parts" "Construction_Materials_Not_Elsewhere_Classified" "Computers_Computer_Peripheral_Equipment_Software" "Medical_Dental_Ophthalmic_Hospital_Equipment_and_Supplies" "Hardware_Equipment_and_Supplies" "Industrial_Supplies_Not_Elsewhere_Classified" "Precious_Stones_and_Metals_Watches_and_Jewelry" "Durable_Goods_Not_Elsewhere_Classified" "Stationery_Office_Supplies_Printing_and_Writing_Paper" "Books_Periodicals_and_Newspapers" "Florists_Supplies_Nursery_Stock_and_Flowers" "Non_durable_Goods_Not_Elsewhere_Classified" "Department_Stores" "Grocery_stores_Supermarkets" "Meat_Provisioners_Freezer_and_Locker" "Candy_Nut_and_Confectionery_Stores" "Dairy_Products_Stores" "Bakeries" "Misc_Food_stores_Convenient_stores_and_Specialty_Markets" "Car_and_Truck_Dealers_New_and_Used_Sales_Service_Repairs_Parts_and_Leasing" "Car_and_Truck_Dealers_Used_Sales_Service_Repairs_Parts_and_Leasing" "Automobile_Supply_Stores" "Automotive_Tire_Stores" "Automotive_Parts_Accessories_Stores" "Service_Stations_with_or_without_ancillary_services" "Merchants_classified_with_this_MCC_sell_electricity_for_the_purpose_of_fueling_an_automobile" "Mens_and_Boys_Clothing_and_Accessories_Stores" "Family_Clothing_Stores" "Shoe_Stores" "Mens_and_Womens_Clothing_Stores" "Tailors_Seamstress_Mending_and_Alterations" "Miscellaneous_Apparel_and_Accessory_Shops" "Furniture_Home_Furnishings_and_Equipment_Stores_ExceptAppliances" "Miscellaneous_Home_Furnishing_Specialty_Stores" "Electronic_Sales" "Music_Stores_Musical_Instruments_Piano_Sheet_Music" "Record_Shops" "Caterers" "Eating_places_and_Restaurants" "Drinking_Places_Alcoholic_Beverages_Bars_Taverns_Cocktail_lounges_Nightclubs_and_Discotheques" "Fast_Food_Restaurants" "Used_Merchandise_and_Secondhand_Stores" "Antique_Shops" "Wrecking_and_Salvage_Yards" "Bicycle_Shops_Sales_and_Service" "Sporting_Goods_Stores" "Book_Stores" "Stationery_Stores_Office_and_School_Supply_Stores" "Watch_Clock_Jewelry_and_Silverware_Stores" "Card_Shops_Gift_Novelty_and_Souvenir_Shops" "Luggage_Or_Leather_Goods_Stores" "Sewing_Needle_Fabric_and_Price_Goods_Stores" "Glassware_Crystal_Stores" "Artists_Supply_and_Craft_Shops" "Art_Dealers_and_Galleries" "Cosmetic_Stores" "Florists" "Cigar_Stores_and_Stands" "Pet_Shops_Pet_Foods_and_Supplies_Stores" "Tent_and_Awning_Shops" "Miscellaneous_and_Specialty_Retail_Stores" "Lodging_Hotel_Motels_and_Resorts" "Sporting_and_Recreational_Camps" "Trailer_Parks_and_Camp_Grounds" "Laundry_Cleaning_and_Garment_Services" "Dry_Cleaners" "Photographic_Studios" "Barber_and_Beauty_shops" "Shop_Repair_Shops_and_Shoe_Shine_Parlors_and_Hat_Cleaning_Shops" "Funeral_Service_and_Crematories" "Massage_Parlors" "Health_and_Beauty_Shops" "Miscellaneous_Personal_Services_not_elsewhere_classifies" "Commercial_Photography_Art_and_Graphics" "Protective_and_Security_Services_Including_Armored_Cars_and_Guard_Dogs" "Business_Services_Not_Elsewhere_Classified" "Automobile_Parking_Lots_and_Garages" "Automotive_Body_Repair_Shops" "Tire_Re_treading_and_Repair_Shops" "Automotive_Service_Shops" "Car_Washes" "Electrical_And_Small_Appliance_Repair_Shops" "Furniture_Furniture_Repair_and_Furniture_Refinishing" "Repair_Shops_and_Related_Services_Miscellaneous" "Bands_Orchestras_and_Miscellaneous_Entertainers_Not_Elsewhere_Classified" "Billiard_and_Pool_Establishments" "Bowling_Alleys" "Commercial_Sports_Athletic_Fields_Professional_Sport_Clubs_and_Sport_Promoters" "Golf_Courses_Public" "Video_Game_Arcades_Establishments" "Amusement_Parks_Carnivals_Circuses_Fortune_Tellers" "Memberchips_clubs_Sports_Recreation_Athletic_Country_clubs_and_Private_golf_courses" "Recreation_Services_Not_Elsewhere_Classified" "Doctors_and_Physicians_Not_Elsewhere_Classified" "Dentists_and_Orthodontists" "Optometrists_and_Ophthalmologists" "Opticians_Opticians_Goods_and_Eyeglasses" "Medical_Services_and_Health_Practitioners_Not_Elsewhere_Classified" "Legal_Services_and_Attorneys" "Schools_and_Educational_Services_Not_Elsewhere_Classified" "Automobile_Associations" "Membership_Organizations_Not_Elsewhere_Classified" "Professional_Services_Not_Elsewhere_Defined"

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "address": {
    },
  • "openingHours": [
    ],
  • "seasonalVariation": true,
  • "eCommerce": true,
  • "averageValuePerTransaction": 2147483647,
  • "averageMonthlyRevenue": 2147483647,
  • "mcc": "Veterinary_Services"
}

Response samples

Content type
application/json
{
  • "uniqueId": "a1e12d74-d756-40d1-9bb3-519def353f44",
  • "name": "string",
  • "merchantId": "string",
  • "status": "Pending",
  • "mcc": "string",
  • "address": {
    },
  • "openingHours": [
    ],
  • "seasonalVariation": true,
  • "eCommerce": true,
  • "averageValuePerTransaction": "string",
  • "averageMonthlyRevenue": "string",
  • "terminals": [
    ]
}

Update store

Updates a store on an already-onboarded merchant. Only the fields you send are changed; anything left out keeps its current value. For opening hours, only the days you send are updated. Name and MCC can't be changed after creation.

Use a store id from merchant-information. The response is the merge applied to the fixture, so you can see exactly which fields your patch touched.

Authorizations:
Bearer
path Parameters
nationalId
required
string

The national id of the company using the format 555555xxxx or 934344334

storeUniqueId
required
string <uuid>
Request Body schema: application/json
required
object (AddressPatch)
Array of objects or null (OpeningHours)

Opening hours to change. Only the days you send are updated, the rest of the week is left as it is

seasonalVariation
boolean or null

Is the store close more then 3 month in a row on the year

eCommerce
boolean or null

Is the store using E-commerce

averageValuePerTransaction
integer or null <int32> [ 0 .. 2147483647 ]

Average value per transaction, as an amount in the merchant's local currency

averageMonthlyRevenue
integer or null <int32> [ 0 .. 2147483647 ]

Average monthly revenue, as an amount in the merchant's local currency

Responses

Request samples

Content type
application/json
{
  • "address": {
    },
  • "openingHours": [
    ],
  • "seasonalVariation": true,
  • "eCommerce": true,
  • "averageValuePerTransaction": 2147483647,
  • "averageMonthlyRevenue": 2147483647
}

Response samples

Content type
application/json
{
  • "uniqueId": "a1e12d74-d756-40d1-9bb3-519def353f44",
  • "name": "string",
  • "merchantId": "string",
  • "status": "Pending",
  • "mcc": "string",
  • "address": {
    },
  • "openingHours": [
    ],
  • "seasonalVariation": true,
  • "eCommerce": true,
  • "averageValuePerTransaction": "string",
  • "averageMonthlyRevenue": "string",
  • "terminals": [
    ]
}

Update merchant contact info

Updates the email and/or phone number of an already-onboarded merchant. Send only the field you want to change; 204 comes back on success.

Authorizations:
Bearer
path Parameters
nationalId
required
string

The national id of the company using the format 555555xxxx or 934344334

Request Body schema: application/json
required
email
string or null <email>

Email to the customer. Leave out to keep the current one

phone
string or null

Phone number to the customer. Leave out to keep the current one

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com",
  • "phone": "string"
}

Response samples

Content type
No sample

SandboxTransactions

Merchant information

Returns detailed information about a merchant. Like name, address, stores, terminals, account etc. Use CompanyIds 5560572850, 8904062380, 5566808134

Authorizations:
Bearer
path Parameters
companyId
required
string

The company id. Must be 10 digits. Example: '5560572850'

Responses

Response samples

Content type
application/json
{
  • "legalEntityUniqueId": "6654f596-6584-4f1c-ad52-cf2619db6aec",
  • "legalEntityName": "string",
  • "legalEntityNationalId": "string",
  • "stores": [
    ],
  • "mctKey": "string",
  • "legalEntityNameTag": "string",
  • "additionalProperties": null
}

Merchant Card transaction history

Returns a list of a merchant's card transactions between two dates. Card transactions are the transactions that are made at the merchant's card terminals. For example purchases, refunds, etc. Use CompanyIds 5560572850, 8904062380, 5566808134

Authorizations:
Bearer
path Parameters
companyId
required
string

The company id. Must be 10 digits. Example: '5560572850'

fromDateTime
required
string

The start date formatted like: '2021-01-01 +01:00' or '2021-01-01 00:00:00 +01:00' Max range is 24h

toDateTime
required
string

The end date formatted like: '2021-01-01 +01:00' or '2021-01-01 00:00:00 +01:00' Max range is 24h

Responses

Response samples

Content type
application/json
{
  • "cardTransactions": [
    ]
}

Merchant Account Transaction History

Returns a list of a merchant's account transactions between two dates. Account transactions are the transactions that are made on the merchant's account. For example aggregated purchases, refunds, daily fees, monthly fees, etc. Use CompanyIds 5560572850, 8904062380, 5566808134

Authorizations:
Bearer
path Parameters
companyId
required
string

The company id. Must be 10 digits. Example: '5560572850'

fromDateTime
required
string

The start date formatted like: '2021-01-01 +01:00' or '2021-01-01 00:00:00 +01:00' Max range is 24h

toDateTime
required
string

The end date formatted like: '2021-01-01 +01:00' or '2021-01-01 00:00:00 +01:00' Max range is 24h

Responses

Response samples

Content type
application/json
{
  • "accountTransactions": [
    ]
}

Transactions

Merchant information

Returns detailed information about a merchant. Like name, address, stores, terminals, account etc.

Authorizations:
Bearer
path Parameters
companyId
required
string

The company id. Must be 10 digits. Example: '5555551111'

Responses

Response samples

Content type
application/json
{
  • "legalEntityUniqueId": "6654f596-6584-4f1c-ad52-cf2619db6aec",
  • "legalEntityName": "string",
  • "legalEntityNationalId": "string",
  • "stores": [
    ],
  • "mctKey": "string",
  • "legalEntityNameTag": "string",
  • "additionalProperties": null
}

Merchant Card transaction history

Returns a list of a merchant's card transactions between two dates. Card transactions are the transactions that are made at the merchant's card terminals. For example purchases, refunds, etc.

Authorizations:
Bearer
path Parameters
companyId
required
string

The company id. Must be 10 digits. Example: '5555551111'

fromDateTime
required
string

The start date formatted like: '2021-01-01 +01:00' or '2021-01-01 00:00:00 +01:00' Max range is 24h

toDateTime
required
string

The end date formatted like: '2021-01-01 +01:00' or '2021-01-01 00:00:00 +01:00' Max range is 24h

Responses

Response samples

Content type
application/json
{
  • "cardTransactions": [
    ]
}

Merchant Account Transaction History

Returns a list of a merchant's account transactions between two dates. Account transactions are the transactions that are made on the merchant's account. For example aggregated purchases, refunds, daily fees, monthly fees, etc.

Authorizations:
Bearer
path Parameters
companyId
required
string

The company id. Must be 10 digits. Example: '5555551111'

fromDateTime
required
string

The start date formatted like: '2021-01-01 +01:00' or '2021-01-01 00:00:00 +01:00' Max range is 32 days

toDateTime
required
string

The end date formatted like: '2021-01-01 +01:00' or '2021-01-01 00:00:00 +01:00' Max range is 32 days

Responses

Response samples

Content type
application/json
{
  • "accountTransactions": [
    ]
}