New Office Subscription

Creates new office subscription on Basecone.

This API resource is only available to Premium APPs.

POST office

Request properties

Property Type Length Description Optional
SubscriptionEmail String 100 Subscription email. Must be valid email format. No
IsTermsConditionsAgreed Bool - Agrees with terms and conditions. The new office subscription requires this as true. No
SubscriptionType String - Type of subscription. The method only supports new Premium subscriptions. Possible value is Premium. No
SubscriptionSource String - Source issuing the request. Possible values are None Basecone, Twinfield,Exact, Unit4, TwinfieldCaribbean, Addison, WoltersKluwerBelgiumDocItEasy, WoltersKluwerBelgiumTA, WoltersKluwerBelgiumKMO Yes
SubscriptionSupportType String - Support type requested for the new office subscription. Possible values are None, Plus, Extra No
BankName String 100 Bank name is a required field when choosing Direct Debit as payment method. Yes
BankAccountName String 100 Bank account name is a required field when choosing Direct Debit as payment method. Yes
Iban String 30 Iban is a required field when choosing Direct Debit as payment method. Must be of a valid IBAN format. Yes
BicCode String 11 BicCode is a required field when selecting a country that has euro as currency (except country NL or subscription sources Addison or WoltersKluwerBelgiumDocItEasy). Yes
SubscriptionInvoiceEmail String 100 Subscription invoice email address. Must be valid email format. No
PaymentType String - Payment type choosed. Possible values are DirectDebit, SendInvoice No
IsAgreedDirectDebit Bool - Accepts direct debit payment method. It is required to be true in case direct debit payment method is choosed. Yes
Country String - New subscription country. Possible values are nl, gb, de, fr, be No
Office Complex - Subscription office data. No
ContactPerson Complex - New office subscription contact person. No
User Complex - New office subscription user. No

Office details properties

Property Type Length Description Optional
Name String 100 Office Name. No
Code String 100 Office Code. Should contain only letters and digits. No
StreetName String 255 Office street address. No
StreetNumber String 50 Office street number. No
ZipCode String 20 Office zip code. No
City String 255 Office city. No
PhoneNumber String 50 Office phone number. No
RegistrationNumber String 255 Registration number from the subscribing company. No

Contact Person details properties

Property Type Length Description Optional
Name String 50 Contact person name. No
PhoneNumber String 50 Contact person phone number. No

User details properties

Property Type Length Description Optional
Name String 64 User name. No
PhoneNumber String 50 User phone number. No
Culture String - Culture choosed for display. Possible values are nl-nl, en-gb No
UserName String 50 User Basecone user name. No
Password String 30 User Basecone password. Should contain at least 1 number and 1 letter, at least 8 characters and a special character from the following: ! @ # $ % ^ & / ? * ( ) _ + = [ ] { } | ; : " . Yes
SendEmailToSetPassword Bool - States if User should receive an email to set the password. Yes
Email String 50 If "SendEmailToSetPassword" field is set to true, an email will be sent to this email adress to set user password. Mandatory if "SendEmailToSetPassword" field is set to true. Should be valid email format. No

Example request:

{
    subscriptionEmail: 'newOffice@newOffice.com',
    isTermsConditionsAgreed: true,
    subscriptionType: 'premium',
    subscriptionSource: "",
    subscriptionSupportType: 'none',
    bankName: 'Bank Name',
    bankAccountName: 'Bank Account Name',
    iban: 'NL49INSI0197192211',
    bicCode: 'BicCode',
    subscriptionInvoiceEmail: 'newOffice.invoice@newOffice.com',
    paymentType: 'DirectDebit',
    isAgreedDirectDebit: true,
    country: 'nl',
    contactPerson: 
    {
        name: 'Contact Person Name',                
        phoneNumber: '123123123',
    },
    office:
    {
        name: 'newOffice.name',
        code: 'newOffice',
        streetName: 'StreetName',
        streetNumber: 'StreetNumber',
        zipCode: 'ZipCode',
        city: 'Baarn',
        phoneNumber: '123123123',
        registrationNumber: 'newOfficeRegistrationNumber'
    },
    user:
    {
        name: 'User Name',
        phoneNumber: '123123123',
        userName: 'someUserName',
        password: '',
        email: 'user@newOffice.nl',
        culture: 'nl-nl',
        sendEmailToSetPassword: true
    }
}
    

Successful response

Upon successful new offce creation a 201 status code will be returned, otherwise an error message with failure details

Property Type Description
officeId Guid New Office Id.
userId Guid Contact person (super user) Id.
apiAccessKey Guid New super user api access key.

Example Successful response:

{
    officeId: "2fc5a7a3-b35f-4f22-8911-8fc04afe2126",
    userId: "dfd5e93e-f011-42x4-a923-e8bc2684614e",
    apiAccessKey: "90d4e375-qdc3-4b5c-af72-564e0b1987ed"
}
            

Error responses:

Status code Error code Description
400 validation_error Failed to validate request.
401 unauthorized Access is not authorized.

400 response:

{
    message: "One or more validation errors occurred.",
    code: "validation_error",
    _metadata:
    [
        {
            field: "Property A",
            message: "Value already exists, please choose another."
        },
        {
            field: "Propery B",
            message: "Value is required"
        }
    ],
    _moreInfo: "http://developers.basecone.com/lookup/validation_error"
}
            

401 Response

{
    Message: "Unauthorized",
    Code: "unauthorized",
    _metadata: null,
    _moreInfo: "http://developers.basecone.com/lookup/unauthorized"
}