Account profile

If the account’s address country is the USA or Canada, the address must be validated using this endpoint - API Reference

POST https://api.dev.mrkter.io/vendor/account/settings/vat/validate

Required "Authorization" header

Example request:

{
  "country": "US",
  "region": "CA",
  "city": "Irvine",
  "address": "2000 Main Street",
  "postalCode": "92614",
  "taxCode": "SM146802"
}

Successful Validation (No Suggested Address)

Response received when the address is correct and no suggested address is required:

{
  "country": "US",
  "region": "CA",
  "city": "Irvine",
  "address": "2000 Main Street",
  "postalCode": "92614",
  "taxCode": "SM146802",
  "isValid": true
}

Successful Validation (Suggested Address Returned)

Response received when the address is correct and suggested address is required:

{
  "statusCode": 400,
  "message": "Bad Request Exception",
  "timestamp": "2025-02-03T12:26:14.406Z",
  "path": "/vendor/account/settings/vat/validate",
  "errors": [
    {
      "error": "Avalara service returned suggested address",
      "suggestedAddress": {
        "street": "2000 MAIN ST",
        "city": "IRVINE",
        "state": "CA",
        "postalCode": "92614-7211",
        "country": "US"
      }
    }
  ]
}

Address Not Recognized

If we received suggested address, we need save it or set new one.

Response if the address is not recognised at all:

{
  "statusCode": 400,
  "message": "Bad Request Exception",
  "timestamp": "2025-02-03T12:26:14.406Z",
  "path": "/vendor/account/settings/vat/validate",
  "errors": [
    {
      "path": "street",
      "errors": [
        {
          "error": "Address not Recognise",
          "message": "We couldn’t verify the address you entered, which may cause issues with processing. Please review and update your entry."
        }
      ]
    }
  ]
}

Next step - After validating the address, save it using this endpoint - API Reference

PATCH https://api.dev.mrkter.io/vendor/account/settings/vat

Required "Authorization" header

Example request:

{
  "country": "US",
  "region": "CA",
  "city": "Irvine",
  "address": "2000 Main Street",
  "postalCode": "92614",
  "taxCode": "SM146802"
}

Example response:

{
  "country": "US",
  "region": "CA",
  "city": "Irvine",
  "address": "2000 Main Street",
  "postalCode": "92614",
  "taxCode": "SM146802",
  "vatRate": 10.5
}

Next step - Submit tax address information and tax identification details using this endpoint - API Reference

PUT https://api.dev.mrkter.io/vendor/account/settings/tax-information

Required "Authorization" header

Example request:

{
  "address": "2000 Main St",
  "city": "Irvine",
  "country": "US",
  "postalCode": "92614",
  "region": "CA",
  "validate": true,
  "taxCode": "SM146802",
  "tin": "0123456789"
}

Example response:

{
  "address": "2000 Main St",
  "city": "Irvine",
  "country": "US",
  "postalCode": "92614",
  "region": "CA",
  "taxCode": "SM146802",
  "isAddressValid": true,
  "vatRate": 20,
  "tin": "1234567890"
}

Next step - Update company and contact information using this endpoint - API Reference

PUT https://api.dev.mrkter.io/vendor/account-profile/update

Required "Authorization" header

Example request:

{
  "type": "COMPANY",
  "website": "",
  "taxId": "",
  "businessName": "Test Company LTD",
  "contactEmail": "[email protected]",
  "estimatedPayout": 0,
  "contactLastName": "Dow",
  "contactFirstName": "John",
  "contactPhoneNumber": "+972521112233",
  "industryClassification": "AD_NETWORK",
  "contactPhoneNumberCode": "+972",
  "estimatedPayoutCurrency": "USD",
  "businessRegisteredLocation": "IL",
  "contactPhoneNumberCountry": "IL"
}

Example response:

{
    "id": 637,
    "accountId": 643,
    "type": "COMPANY",
    "businessName": "Test Company LTD",
    "businessRegisteredLocation": "IL",
    "beneficiaryFirstName": null,
    "beneficiaryLastName": null,
    "taxId": "",
    "status": "NOT_STARTED",
    "industryClassification": "AD_NETWORK",
    "contactFirstName": "John",
    "contactLastName": "Dow",
    "contactEmail": "[email protected]",
    "contactPhoneNumber": "+972521112233",
    "contactPhoneNumberCountry": "IL",
    "contactPhoneNumberCode": "+972",
    "timeZone": null,
    "country": null,
    "street": null,
    "apartment": null,
    "suite": null,
    "city": null,
    "state": null,
    "postalCode": null,
    "serviceDescription": null,
    "estimatedPayout": 0,
    "estimatedPayoutCurrency": "USD",
    "affiliateId": "1743592283589",
    "accountEmail": "[email protected]",
    "website": ""
}

Next step - Update the onboarding progress by sending the current step value to this endpoint - API Reference

PUT https://api.dev.mrkter.io/vendor/onboardings/wizard

Required "Authorization" header

Example request:

{
  "currentStep": 1
}

Example response:

{
    "clientId": 1,
    "connectorId": 1,
    "currentStep": 1,
    "status": "IN_PROGRESS",
    "profileCustomizationEnabled": true,
    "profileCustomizationAccountAddressRequired": true,
    "profileCustomizationAccountInfoRequired": true,
    "profileCustomizationContactInfoRequired": true,
    "profileCustomizationPaymentMethodRequired": true,
    "preferredPaymentCurrencyEnabled": true,
    "taxFormCollectionEnabled": true,
    "taxFormCollectionRequired": true,
    "taxFormsToCollect": "UsAndInternational",
    "availablePaymentTypes": [
        {
            "id": 83,
            "isVerificationRequired": true,
            "thresholdAmount": 100,
            "paymentType": "WIRE_TRANSFER",
            "availableCurrencies": [
                "CHF"
            ]
        }
    ]
}