Paytrim API Service (v1)

Download OpenAPI specification:Download

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
  • Get a list of active pricelists
  • Retrieve detailed information about a merchant and its structure, like stores, terminals and accounts
  • Retrieve a merchant's card transaction history
  • Retrieve Mtouch configuration for seleted store
  • Create Mtouch configuration for SDK and Standalone
  • Update Mtouch configuration for Standalone
  • Delete Mtouch configuration for SDK and Standalone

Sandbox Environment

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

CompanyIds to use in sandbox 5560572850, 8904062380, 5566808134, 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 '.

Onboarding

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
companyId
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

required
Array of objects (Store)

List of Store connected to Merchant

Responses

Request samples

Content type
application/json
{
  • "companyId": "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",
  • "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
companyId
required
string

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

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "status": "Prospect",
  • "onboardingStatus": "Manual_Handling",
  • "bankAccountStatus": "Unknown",
  • "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": [
    ]
}

SandboxOnboarding

SANDBOX 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.

Use CompanyId 5560572850 OK, 8904062380 Already Exist, 5566808134 Signatories Missing ,5590672613 NotFound

Authorizations:
Bearer
Request Body schema: application/json
required
companyId
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

required
Array of objects (Store)

List of Store connected to Merchant

Responses

Request samples

Content type
application/json
{
  • "companyId": "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",
  • "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.

Use CompanyId 5560572850 Pending, 8904062380 No BeneficialOwners, 5566808134 OK ,5590672613 NotFound

Authorizations:
Bearer
path Parameters
companyId
required
string

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

Responses

Response samples

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

Get Pricelist

This returns a pricelist object

Authorizations:
Bearer

Responses

Response samples

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

MtouchManagement

Controller for managing mTouch configurations. There are to types of Mtouch config that can be set, SDK or Standalone. The are endpoints for Create and delete SDK and standalone. Only standalone is possible to update. There are a endpoint for get all configuration and status by store. To Use this endpoints contact paytrim for access

Get mtouch configuration for selected store by CompanyID and MID (MerchantID)

This returns an object containing the mtouch configuration(s) and status for the selected MID.

Authorizations:
Bearer
path Parameters
companyId
required
string

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

storeMerchantId
required
string

The MID(MerchantId) of a store, It should be 8 digits long and start with '4'.

Responses

Response samples

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

Create mTouch SDK configuration for a merchant

Create an mTouch SDK config using CompanyID and MID (MerchantID). If successful it returns the MtouchMerchantID UUID/GUID, it should be used as the MerchantID parameter in the Terminal.activateSession() for SDK

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

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

storeMerchantID
required
string non-empty

The MID (MerchantID) used on specific merchants store

Responses

Request samples

Content type
application/json
{
  • "companyID": "string",
  • "storeMerchantID": "string"
}

Response samples

Content type
application/json
{
  • "merchantId": "c3073b9d-edd0-49f2-a28d-b7ded8ff9a8b"
}

Create mTouch Standalone configuration for a merchant

Create an mTouch Standalone config using CompanyID and MID (MerchantID).Gmail used there should be unique ant not used on different standalone config. The Gmail address is used in the device to download Mtouch Standalone Terminal AppIf successful it returns the MtouchMerchantID UUID/GUID, Use MtouchMerchantID to update or delete standalone config,

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

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

storeMerchantID
required
string non-empty

The MID (MerchantID) used on specific merchants store

gmail
required
string <email> non-empty ^[^@\s]+@gmail\.com$

The Gmail account that should get access to the mTouch application in Google Play Store

Responses

Request samples

Content type
application/json
{
  • "companyID": "string",
  • "storeMerchantID": "string",
  • "gmail": "user@example.com"
}

Response samples

Content type
application/json
{
  • "merchantId": "c3073b9d-edd0-49f2-a28d-b7ded8ff9a8b"
}

Create mTouch Standalone configuration for a merchant

Update an mTouch Standalone config using CompanyID and MID (MerchantID). Gmail used there should be unique ant not used on different standalone config. The Gmail address is used in the device to download Mtouch Standalone Terminal App

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

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

storeMerchantID
required
string non-empty

The MID (MerchantID) used on specific merchants store

mTouchConfigurationUniqueId
required
string <uuid>

The unique id representing the configuration of a store

gmail
required
string <email> non-empty ^[^@\s]+@gmail\.com$

The Gmail account that should get access to the mTouch application in Google Play Store

Responses

Request samples

Content type
application/json
{
  • "companyID": "string",
  • "storeMerchantID": "string",
  • "mTouchConfigurationUniqueId": "4b51ff14-9292-4c49-84d5-62e316be4f00",
  • "gmail": "user@example.com"
}

Response samples

Content type
application/json
{
  • "merchantId": "c3073b9d-edd0-49f2-a28d-b7ded8ff9a8b"
}

Delete an SDK mTouch configuration for a merchant store

Delete specific configuration for a merchant store, using the unique identifer of the confiuration and the CompanyID. The configuration UniqueID is returned in the GetConfiguration call or when creating the configuration

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

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

storeMerchantID
required
string non-empty

The MID (MerchantID) used on specific merchants store

mtouchMerchantId
required
string <uuid>

The unique id representing the configuration of a store, It can be find in the GET Config and as a response from POST Create Mtouch

Responses

Request samples

Content type
application/json
{
  • "companyID": "string",
  • "storeMerchantID": "string",
  • "mtouchMerchantId": "58db39cc-b33a-47ae-8162-e8429d8f4efa"
}

Response samples

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

Delete an Standalone mTouch configuration for a merchant store

Delete specific configuration for a merchant store, using the unique identifer of the confiuration and the CompanyID. The configuration UniqueID is returned in the GetConfiguration call or when creating the configuration

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

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

storeMerchantID
required
string non-empty

The MID (MerchantID) used on specific merchants store

mtouchMerchantId
required
string <uuid>

The unique id representing the configuration of a store, It can be find in the GET Config and as a response from POST Create Mtouch

Responses

Request samples

Content type
application/json
{
  • "companyID": "string",
  • "storeMerchantID": "string",
  • "mtouchMerchantId": "58db39cc-b33a-47ae-8162-e8429d8f4efa"
}

Response samples

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

SandboxMtouchManagement

SANDBOX Controller for managing mTouch configurations. There are to types of Mtouch config that can be set, SDK or Standalone. The are endpoints for Create and delete SDK and standalone. Only standalone is possible to update. There are a endpoint for get all configuration and status by store

Get mtouch configuration for selected store by CompanyID and MID (MerchantID)

This returns an object containing the mtouch configuration(s) for the selected MID.

Use CompanyId 5560572850 MID 40000001 , 8904062380 40000001, 5566808134 40000001

Authorizations:
Bearer
path Parameters
companyId
required
string
merchantId
required
string

Responses

Response samples

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

Create mTouch SDK configuration for a merchant

Create an mTouch SDK config using CompanyID and MID (MerchantID).If successful it returns the MtouchMerchantID UUID/GUID, it should be used as the MerchantID parameter in the Terminal.activateSession() for SDK

Use CompanyId 5560572850 MID 40000001

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

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

storeMerchantID
required
string non-empty

The MID (MerchantID) used on specific merchants store

Responses

Request samples

Content type
application/json
{
  • "companyID": "string",
  • "storeMerchantID": "string"
}

Response samples

Content type
application/json
{
  • "mTouchMerchantId": "b0ec99a6-3b4c-4226-b599-4735ce7ef159"
}

Create mTouch Standalone configuration for a merchant

Create an mTouch Standalone config using CompanyID and MID (MerchantID).Gmail used there should be unique ant not used on different standalone config. The Gmail address is used in the device to download Mtouch Standalone Terminal AppIf successful it returns the MtouchMerchantID UUID/GUID, Use MtouchMerchantID to update or delete standalone config,

Use CompanyId 5560572850 MID 40000001 , 8904062380 40000002, 5566808134 40000003

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

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

storeMerchantID
required
string non-empty

The MID (MerchantID) used on specific merchants store

gmail
required
string <email> non-empty ^[^@\s]+@gmail\.com$

The Gmail account that should get access to the mTouch application in Google Play Store

Responses

Request samples

Content type
application/json
{
  • "companyID": "string",
  • "storeMerchantID": "string",
  • "gmail": "user@example.com"
}

Response samples

Content type
application/json
{
  • "mTouchMerchantId": "b0ec99a6-3b4c-4226-b599-4735ce7ef159"
}

Create mTouch Standalone configuration for a merchant

Create an mTouch Standalone config using CompanyID and MID (MerchantID).Gmail used there should be unique ant not used on different standalone config. The Gmail address is used in the device to download Mtouch Standalone Terminal App

Use CompanyId 5560572850 MID 40000001 , 8904062380 40000002, 5566808134 40000003

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

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

storeMerchantID
required
string non-empty

The MID (MerchantID) used on specific merchants store

mTouchConfigurationUniqueId
required
string <uuid>

The unique id representing the configuration of a store

gmail
required
string <email> non-empty ^[^@\s]+@gmail\.com$

The Gmail account that should get access to the mTouch application in Google Play Store

Responses

Request samples

Content type
application/json
{
  • "companyID": "string",
  • "storeMerchantID": "string",
  • "mTouchConfigurationUniqueId": "4b51ff14-9292-4c49-84d5-62e316be4f00",
  • "gmail": "user@example.com"
}

Response samples

Content type
application/json
{
  • "mTouchMerchantId": "b0ec99a6-3b4c-4226-b599-4735ce7ef159"
}

Delete an SDK mTouch configuration for a merchant store

Delete specific configuration for a merchant store, using the unique identifer of the confiuration and the CompanyID. The configuration UniqueID is returned in the GetConfiguration call or when creating the configuration

Use CompanyId 5560572850 MID 40000001

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

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

storeMerchantID
required
string non-empty

The MID (MerchantID) used on specific merchants store

mtouchMerchantId
required
string <uuid>

The unique id representing the configuration of a store, It can be find in the GET Config and as a response from POST Create Mtouch

Responses

Request samples

Content type
application/json
{
  • "companyID": "string",
  • "storeMerchantID": "string",
  • "mtouchMerchantId": "58db39cc-b33a-47ae-8162-e8429d8f4efa"
}

Response samples

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

Delete an Standalone mTouch configuration for a merchant store

Delete specific configuration for a merchant store, using the unique identifer of the confiuration and the CompanyID.The configuration UniqueID is returned in the GetConfiguration call or when creating the configuration.\n\n

Use CompanyId 5560572850 MID 40000001 , 8904062380 40000002, 5566808134 40000003

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

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

storeMerchantID
required
string non-empty

The MID (MerchantID) used on specific merchants store

mtouchMerchantId
required
string <uuid>

The unique id representing the configuration of a store, It can be find in the GET Config and as a response from POST Create Mtouch

Responses

Request samples

Content type
application/json
{
  • "companyID": "string",
  • "storeMerchantID": "string",
  • "mtouchMerchantId": "58db39cc-b33a-47ae-8162-e8429d8f4efa"
}

Response samples

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

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": [
    ]
}

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' or '2021-01-01 00:00:00'

toDateTime
required
string

The end date formatted like: '2021-01-01' or '2021-01-01 00:00:00'

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' or '2021-01-01 00:00:00'

toDateTime
required
string

The end date formatted like: '2021-01-01' or '2021-01-01 00:00:00'

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": [
    ]
}

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' or '2021-01-01 00:00:00'

toDateTime
required
string

The end date formatted like: '2021-01-01' or '2021-01-01 00:00:00'

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' or '2021-01-01 00:00:00'

toDateTime
required
string

The end date formatted like: '2021-01-01' or '2021-01-01 00:00:00'

Responses

Response samples

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