Integration Guide

20 min read

Intro #

This document is written for project managers, technicians and responsible security officers at the involved departments of our client and/or the parties that are connected. This document contains 2 subjects:

  • Data structure XML, CSV, ODS and XLSX
    Meant for the stakeholders that deliver the data, ie. the selection of data, the collection of data both on query basis or manual delivery.
  • Data transport
    The secure transport of customer data to and from Alphacomm

Intention #

The goal of this document is to clarify how Alphacomm’s Collectmaxx platform works, to determine a standard concerning the delivery of data and the importance of transport security of data, and to bring your attention to other technical security affairs.

How does Collectmaxx work? #

Collectmaxx is a reminder service that can remind people of upcoming events, payments or share important information through phone, text messages (SMS), e-mail or other channels. Go to alphacomm.io/collectmaxx for a demonstration of the possibilities.

With the data format that is described in this document, all services can be directed.

Contact or support #

Do you have a question or problem? Please log on to our service desk to create a ticket.

Data structure #

To process data correctly, it is important that this data is delivered in a reliable way. The content of the data has to be structured correctly to make sure it can be automatically processed. The cleaner (better) the input data is, the better the result of our services.

It is recommended to automate the selection of data – the process that determines which data is sent to Alphacomm. This decreases the chance of human errors and makes the dependency of humans to make the export smaller.

All records that are delivered to Alphacomm will be processed automatically with the agreed settings in Alphacomm Live. Don’t deliver records that should not be processed.

Input file format #

There are five possible file formats to deliver data: CSV, XLSX, XLS, ODS and XML. The information in this document applies to all formats. The conversion of this information to the required file format is shown in a required field matrix. This field matrix is located at the end of this document.

Example files are custom-made for you. You will receive a complete custom CSV example from Alphacomm with all the necessary fields and specifications.

Technical specifications XML

  • The file must be encoded in UTF-8.
  • The root-element is <annabel>, every record has to be surrounded by <record>.
  • Every category has to be surrounded by a new element. The fields of these categories are sub-elements. For an example of the element names of the different categories, see the table below.

Technical specifications csv-file

  • The file must be encoded in UTF-8.
  • The fields are divided by a delimiter. This delimiter has to be a semicolon (;).

Example: “person_familyname”;”contact_phonenumber_1”

  • All fields must be enclosed by a qualifier. This qualifier must be a double quote (“).

Example: “value”

  • Records have to be divided by a newline, according to the UNIX notation, or ASCII code 0x0A, or represented in most program languages by “n”.
  • Field names have to be exactly the same as described n the documentation below**.
  • Fields cannot have unnecessary tabs and/or spaces. This can be solved with the so-called trim() function.
  • Fields cannot be longer than the maximum described value.
  • A phone number can have a + or – sign, spaces are also allowed. It cannot have other alphanumeric signs.
  • Phone numbers must be delivered with a country code.

Technical specifications ODS or XLSX file

  • The first row should contain the field names and have to be exactly the same as described in the documentation below**.
  • Fields cannot be longer than the maximum described value.
  • A phone number can have a + or – sign, spaces are also allowed. It cannot have other alphanumeric signs.
  • Phone numbers must be delivered with a country code.

ℹ️
** When creating a file with the required field names is not possible in your situation, we can set up a custom field name mapping. This will be a one-time setup.

File names #

Import #

The names of the files that are sent to Alphacomm must be unique, even when the content is identical. The preferred format is described below:

20200519-XXXX-1.csv
date (YYYYMMDD) + client number +”-” + number + “.csv”

Results #

You can find our result files in our Portal or get them from our SFTP. The result files are created at night for the previous day. So at 6 AM, the results are available from the previous day.

Result files will have the following filename format:

result_20200519-XXXX.csv
Examples:
Daily result files:
result_20220106-acos1001.csv
Monthly result files:
result_20211201_20211231-acos1001.csv
“result_” + date(YYYYMMDD) + “-acos“+ script number + “.csv”   

Field specification delivery file #

For every message sent by Alphacomm, a separate record must be delivered. Every record contains the necessary information from the specified fields below.

Every category can be delivered once or more times per record. This is mentioned in the header of every category. When an entity can be delivered more than once in a category, it is required to number the entities by a ‘_X’ suffix.

Example:

CONTACT_PHONENUMBER_1, CONTACT_PHONENUMBER_2

Identification (IDENTIFICATION)

The IDENTIFIER field is used to make sure that every record can be identified as unique. When there are 2 records containing the same IDENTIFIER the system will treat it as one (only the last one will be used). Therefore, it is important that this identifier be unique, not only in a single file but in all your delivery history.

FieldDescriptionFormat (Max.)
IDENTIFIERA unique string that identifies the record. This is the identifier in our result file.
In our API this field is called “reference“.
(VARCHAR) 255

⚠️
This identifier has to be unique overall history of sending. To ensure this, it can be composed of a file number or customer number in combination with the present date.

Person (PERSON)

Describes the customer.

FieldDescriptionFormat (Max.)
FAMILYNAMELast name. Also contains inserts.(VARCHAR) 100
GIVENNAMEFirst name(s)(VARCHAR) 100
GENDERGender. Valid values are: M/F/U
M = Male, F = Female, U = Unknown
(VARCHAR) 1
BIRTHDAYBirthday
Example: 1975-01-01
(DATE) yyyy-mm-dd
IDENTIFIERClient number / debtor number / patient number / etc.(VARCHAR) 100
HONORIFICPREFIXTitle of customer (prefix)
Example: Drs. Ing.
(VARCHAR) 100
HONORIFICSUFFIXTitle of customer (suffix)
Example: MSc.
(VARCHAR) 100

⚠️
For the CSV format, it is necessary to add the prefix ‘PERSON_’ to all field names of this category. for example, PERSON_FAMILYNAME.

⚠️
The field FAMILYNAME should also contain all the (pre)names that have to be pronounced. These have to be inserted in the order of pronunciation. A name like ‘Berg, van der” is inserted in the cell as “van der Berg”.

Address (ADDRESS)

Describes an address.

FieldDescriptionFormat (Max.)
STREETStreet name(VARCHAR) 100
HOUSENUMBERHouse number (an extension can be added when it cannot be split to EXTENSION)(VARCHAR) 50
EXTENSIONHouse number extension(VARCHAR) 50
ZIPCODEZip code(VARCHAR) 15
CITYCity(VARCHAR) 100
COUNTRY2-digit ISO3611 land code
Example: NL
(VARCHAR) 2

⚠️
The splitting of address fields is strongly recommended, especially when using enrichment. It has a great influence on the quality of the enriched phone numbers.

Contact (CONTACT)

Contains all contact information from 1 person. It is possible to add multiple phone numbers for a record. The maximum is 3. To add multiple phone numbers, simply add a number to the column name, for example:

CONTACT_PHONENUMBER_1;CONTACT_PHONENUMBER_2;CONTACT_PHONENUMBER_3

FieldDescriptionFormat (Max.)
PHONENUMBER_xPhone number in E.164 international format.
Example: 31107989525
(VARCHAR) 20
EMAIL_xEmail address(VARCHAR) 100

⚠️
When phone numbers aren’t correctly delivered, Alphacomm will try to correct then to the proper format. Leading zero’s, spaces and hyphens are removed. When a number starts with 0 it will be replaced with the Dutch land code (31). International clients should always add their land code.

ℹ️
For voice and SMS scripts, we validate the phone numbers against Google’s library for validating international phone numbers. While importing, we discard values that do not match your configuration.

Invoice information (INVOICE)

All information that concerns a specific payment.

FieldDescriptionFormat (Max.)
NUMBERInvoice number, can also be a dossier number(VARCHAR) 100
DATEInvoice date
Example: 2021-01-01
(DATE) yyyy-mm-dd
DUEDATELast payment date (should always be a date in the future)
This wil be the last day a PayLink could be paid.
Example: 2021-01-01
(DATE) yyyy-mm-dd
CURRENCY3-digit ISO 4217 code of the currency.
Example: EUR
(VARCHAR) 3
AMOUNTTotal amount of the invoice (in cents)
Example: 10000 (= €100,00)
(INT)
TAXTotal amount of the VAT (in cents).(INT)
DESCRIPTIONDescription of the invoice(VARCHAR) 255
REFERENCEReference of the invoice(VARCHAR) 100
SERIALSerial number of the invoice (first invoice, first reminder, etc.)
Example: 1
(INT)

⚠️
Some payment providers have a character limit for the description and reference. We will shorten the field to this limit, for the transaction. Our landing page will have the full text. iDEAL has a limit of 35 characters, PayPal 127.

📃
By default, the PayLink expires 90 days after the date of creation.

Payment arrangement (INVOICE_ARRANGEMENT)

All fields that concern a payment arrangement of a specific invoice.

FieldDescriptionFormat (Max.)
DESCRIPTIONDescription of the payment(VARCHAR) 255
TOTALTERMSTotal amount of terms of the arrangementINT
TERMCurrent term of the arrangementINT
STARTDATEStart date of payment arrangement
Example: 2021-01-01
(DATE) yyyy-mm-dd
DUEDATELast payment date (always use future date)
Example: 2021-01-01
(DATE) yyyy-mm-dd
CURRENCY3-digit ISO 4217 code of the currency
Example: EUR
(VARCHAR) 3
AMOUNTAmount of the arrangement (in cents).
Example: 10000 (= €100,00)
(INT)
REMAININGTotal amount that remains of the arrangement.(INT)

Invoice lines (maximum 3) (INVOICELINES)

Describes the individual lines of an invoice. Use the ‘_X’ suffix for multiple lines, for example:

INVOICELINES_1_DESCRIPTION

FieldDescriptionFormat (Max.)
DESCRIPTIONDescription of the invoice line(VARCHAR) 255
UNITSAmount of units of this product or service(INT)
UNITPRICEPrice per unit (in cents).
Example: 10000 (= €100,00)
(INT)
TOTALTotal amount for this line (in cents).
Example: 10000 (= €100,00)
(INT)
TAXVAT for this line (in cents).
Example: 10000 (= €100,00)
(INT)

E-mandate information (E-MANDATE)

The fields are used to generate an E-mandate.

FieldDescriptionFormat (Max.)
IDENTIFIERThe number of the E-mandate(VARCHAR) 35
PURCHASEIDThe number of the transaction(VARCHAR) 35
REASONThe reason of the transaction(VARCHAR) 70
DEBTORIDThe Debtor identification numberVARCHAR) 35
VISIBLEUNTILThe date when the request expires.(DATE) yyyy-mm-dd

Contract information (CONTRACT)

These fields describe the value of products or contracts.

FieldDescriptionFormat (Max.)
IDENTIFIERThe number of the contract or product(VARCHAR) 25
TYPEThe category of the contract or product
Example: damage insurance
(VARCHAR) 100
NAMEThe name of the contract or product(VARCHAR) 100
STARTDATEThe start date of the contract or product(DATE) yyyy-mm-dd
ENDDATEThe end date of the contract or product(DATE) yyyy-mm-dd

Contractor information (CONTRACT_CONTACT)

These fields are used to present the contact information of the company for a specific contract or product.

FieldDescriptionFormat (Max.)
FAMILYNAMEThe last name of the contact person(VARCHAR) 100
GIVENNAMEThe first name of the contact person(VARCHAR) 100
GENDERThe gender of the contact person
M = Male, F = Female, U = Unknown
(VARCHAR) 1
PHONENUMBERThe phone number of the contact person in E.164 international format.
Example: 31107989525
(VARCHAR) 20
EMAILThe email address of the contact person(VARCHAR) 100

Alphacomm control elements (CONTROL)

These fields are used to control the messages that are sent by Alphacomm.

FieldDescriptionFormat (Max.)
SUPPLIERIdentifier or name of a supplier. A mapping will be agreed with Alphacomm when used with Voice message.(VARCHAR) 100
FLOWIDIdentification of the Alphacomm script (campaign).(VARCHAR) 10

Used services (SERVICES)

FieldDescriptionFormat (Max.)
ENRICHMENTSet this field to 1 when you want this record to be enriched. This only works when configured for your account.(BOOLEAN) 0/1

Field specification result files #

General result file #

For the result files, the same rules apply as for the input file. This means that the result file also contains field names to indicate the various results. Because of the dynamic character of the results, there can be no guarantee about the location of the different fields.

Each result contains these fields. When there are 2 phone numbers given, but when we used only one number to reach your customer, there is only 1 call result mentioned. This concerns all fields that can occur more than once.

The reporting of status changes

⚠️
A resultfile is a status update of the best results on jobs that are processed on a certain day or month.
For voice, this can be an outbound call that is successful, not answered, forwarded or an inbound call as a debtor calls back.

So if you upload a record on February 18th, and we call that person twice, and he does not pick up the phone and calls us back the same day and listens to the complete message, then the resultfile for that day will show;
3 call attempts (2 outbound and 1 inbound)
Resultcode 3 (completed call)
Direction inbound (last status)

If this same person calls back again on February 19th and chooses to be forwarded to you, then the resultfile of that day will show;
4 call attempts (2 outbound and 2 inbound)
Resultcode 9 (forwarded)
Direction inbound (last status)

In a monthly report, it is the result in a month on changes in this period.
So if there are no changes for my example on the rest of the month, then the result in the monthly report is the same as on February 9th.

But if this person calls back on March 2nd and chooses again to be forwarded, then the resultfile of this day will show;
5 call attempts (2 outbound and 3 inbound)
Resultcode 9 (forwarded)
Direction inbound (last status)

This record will also show up in the monthly report of March because there was a change in March despite the fact that this record was NOT uploaded in March. Because of this, the resultfile can not be used as a match for uploaded and processed records in a month.

Identification (IDENTIFICATION)

FieldDescriptionFormat (Max.)
IDENTIFIERUnique number that identifies a record. It is identical to the identifier from the input file.(VARCHAR) 255

📃
The identifier will be empty when we register an inbound call that was not matched to an imported record.

Callresult (multiple occurrences possible) (CALLRESULTS_CALL)

These fields contain all information concerning the result of the call actions. For each called phone number, these fields are reported.

FieldDescriptionFormat (Max.)
ATTEMPTSAmount of attempts for this phone number.(INT)
NUMBERPhone number in E.164 international format.
example: 31107989525
(VARCHAR) 16
RESULTResult code for the first phone number. See the table in the next paragraph.(INT)
TIMEDate and time of the last attempt for this phone number
Example: 2014-02-12T15:19:21+00:00
(DATETIME)
Date and time in ISO 8601 format.
DURATIONDuration of the connection in seconds.(INT)
VOICEMAILStates the presence of a voicemail(BOOLEAN) 0/1
DIRECTIONDirection of the call, inbound or outbound.(VARCHAR) 20
CUSTOMClient-specific result codes (when agreed)(VARCHAR) 100

Possible result codes for ‘RESULT’

Result codeDescription
0Not called
1Reached, disconnected before succespoint
2Succespoint reached, disconnected before the end of the message
3Succespoint reached and completed the call
4No answer
5Number busy
6Call rejected
7Number (temporarily) unavailable
8Invalid number
9Put through. Call is forwarded to your call centre
10Not reached within calling period
11No calls, unknown supplier
12Voice mail message delivered (only with active detection)
13The person who received the call indicated they were not the mentioned individual.
14Completed call, but no success point was reached

⚠️
Only the last and best result is reported.

SMS Results (SMSRESULTS_SMS)

These fields contain all information about the sent text messages. For each phone number we send a text message to, there is one result record.

FieldDescriptionFormat (Max.)
NUMBERPhone number in E.164 international format.
Example: 31107989525
(VARCHAR) 16
RESULTResult code for the first phone number. Result codes are described in the table in the next paragraph.(INT)
TIMEDate and time of the last attempt for this phone number.
Example: 2014-02-12T15:19:21+00:00
(DATETIME) Date and time in ISO 8601 format.

Result codes for SMS results

Result codeDescription
0Not (yet) delivered
1Delivered
2Not delivered

ℹ️
When an SMS message is sent, it gets a validity time of 48 hours. When de SMS is not delivered within this timespan, it will result in a “Not delivered” status.

⚠️
Only the last and best result is reported.

(Pay)mail results (multiple occurrences possible) (PAYMAILRESULTS_EMAIL_1)

These fields contain information about the sent emails. For each email address, there is one record.

FieldDescriptionFormat (Max.)
EMAILThe address the email is sent to.(VARCHAR) 255
RESULTResult code for the email address. Result codes are described in the table in the next paragraph.(INT)
TIMEDate and time of the last update
Example: 2014-02-12T15:19:21+00:00
(DATETIME)
Date and time in ISO 8601 format.

Result codes for (pay)mail results

Result codeDescription
0Email has been draught
1Email is sent
2Email is opened by receiver
3The receiver has clicked on a link in the email
4Email is returned (temporary soft-bounce)
5Email is returned (definitive hard-bounce)
6Spam complaint
7Error, email is not sent
8Status unknown*
* the email is sent by us, but we cannot confirm the delivery of the message. This status can be temporary and can change in time.

⚠️
Only the last and best result is reported.

These fields contain information about the PayLink sent with the email. For each PayLink there is one record.

FieldDescriptionFormat (Max.)
RESULTResult code for the Paylink(INT / STRING)
TIMEDate and time of the last check for this Paylink.
Example: 2014-02-12T15:19:21+00:00
(DATETIME) Date and time in ISO 8601 format.

⚠️
Only the last and best result for the reported timespan is reported.
These codes do not match with PayLinks send by SMS.

Result codes for the PayLink sent with a PayMail

PayLink results v1

The original result codes are in integers.

Result codeDescription
0Paylink has been draught
1Receiver has visited the landing page
2Receiver started transaction
3Receiver has arrived in the bank environment, transaction is open.
4Partial payment
5Payment
6Transaction overdue (session)*
7Transaction cancelled (session)*
8Error
9Delay payment, requested by debtor

PayLink results v2

Results in text, active for new customers since Q4 2019. Available by request for all customers.

Result nameDescription
createdPayLink has been draught
visitedReceiver has visited the landing page
startedReceiver started transaction
transaction_openReceiver has arrived in bank environment
transaction_canceledTransaction cancelled (session)*
transaction_expiredTransaction expired (session)*
paidPayment completed
partially_paidPayment completed on part of the amount
delayedDelay payment, requested by debtor
errorError occurred during creation or payment

ℹ️
* whenever a transaction is started in the bank environment or other payment method, we speak of a session. This session expires after some time. When a session is expired, a customer can still start a new session to complete payment.

These fields contain information about a Paylink when it is possible to partially pay it. For each PayLink there is one record.

FieldDescriptionFormat (Max.)
CHOSEN_TERMSThe terms the customer has chosen.(INT)
TRANSACTION_AMOUNTThe amount that is paid for the first term.(INT) in cents

PayMail Payment method (PAYMAILRESULTS_PAYMENTMETHOD_1)

When configured for your reporting files.

FieldDescriptionFormat (Max.)
NAMEUsed payment method for PayLink payment.
See list of payment methods.
(STRING)


Current Payment methods

These fields contain information about the PayLink. For each PayLink there is one record.

FieldDescriptionFormat (Max.)
RESULTResult code for the PayLink(INT / STRING)
TIMEDate and time of the result for this PayLink.
Example: 2014-02-12T15:19:21+00:00
(DATETIME) Date and time in ISO 8601 format.

⚠️
Only the last and best result for the reported timespan is reported.
These codes do not match with PayLinks send by PayMail.

Result codes for the PayLink sent with an SMS

PayLink results v1

The original result codes are in integers.

Result codeDescription
0PayLink has been draught
1Error
2Receiver started transaction
3Transaction cancelled (session)*
4Payment
5Partial payment
6Delay payment, requested by debtor
7Receiver has visited the landing page
8Transaction overdue (session)*

PayLink results v2

Results in text, active for new customers since Q4 2019. Available by request for all customers.

Result nameDescription
createdPayLink has been draught
visitedReceiver has visited the landing page
startedReceiver started transaction
transaction_openReceiver has arrived in bank environment
transaction_canceledTransaction cancelled (session)*
transaction_expiredTransaction expired (session)*
paidPayment completed
partially_paidPayment completed on part of the amount
delayedDelay payment, requested by debtor
errorError occurred during creation or payment

ℹ️
* whenever a transaction is started in the bank environment or other payment method, we speak of a session. This session expires after some time. When a session is expired, a customer can still start a new session to complete payment.

These fields contain information about a Paylink when it is possible to partially pay it. For each PayLink there is one record.

FieldDescriptionFormat (Max.)
CHOSEN_TERMSThe terms the customer has chosen.(INT)
TRANSACTION_AMOUNTThe amount that is paid for the first term.(INT) in cents

SMS Payment method (SMSRESULTS_PAYMENTMETHOD_1)

When configured for your reporting files.

FieldDescriptionFormat (Max.)
NAMEUsed payment method for PayLink payment.
See list of payment methods.
(STRING)

Emandate results (PAYMAILRESULTS_EMANDATE_1)

These fields contain all information concerning the sent Emandates. For each Emandate there is one record with the following fields.

FieldDescriptionFormat (Max.)
RESULTResult code of the Emandate(INT)
TIMEDate and time of the last check
Example: 2014-02-12T15:19:21+00:00
(DATETIME)
Date and time in ISO 8601 format.
IDIdentification number of the Emandate(VARCHAR) 35
DEBTOR_IBANHet IBAN number of the debtor(IBAN)
DEBTOR_NAMEDe name of the debtor(VARCHAR) 70
DATE_OF_SIGNATUREDate time of the given Emandate(DATETIME)
SIGNATUREDigital signature of the customer(VARCHAR) 35

⚠️
Only the last and best result is reported.

Result codes for Emandate sent with a PayMail

Result codeDescription
0Emandate has been draught
1Receiver has visited the landing page
2Receiver started transaction
3Receiver has arrived in bank environment
4Emandate awaits signature
5Emandate given
6Transaction overdue (session)*
7Transaction cancelled (session)*
8Error
* whenever a transaction is started in the bank environment, we speak of a session. This session expires after some time. When a session is expired, a customer can still start a new session to complete the process.

Enrichment results (multiple occurrences possible) (ENRICHMENTRESULTS_PHONENUMBER)

These fields contain the enriched phone numbers and the associated quality of the enrichment.

FieldDescriptionFormat (Max.)
NUMBERPhone number in E.164 international format.
Example: 31107989525
(VARCHAR) 16
QUALITYQuality of the phone number. Scale of 1 (absolutely incorrect) to 100 (absolutely correct).(INT)
LAST_VERIFIEDDate of the last verification.(DATETIME)
Date and time in ISO 8601 Format.

Custom results (multiple occurrences possible) (CUSTOMRESULTS_CUSTOM)

These fields contain specific results and can differ between customers. These fields are only included when this is agreed in advance.

FieldDescriptionFormat (Max.)
IDENTIFIERThe agreed code which can be used to identify a specific question in the script.(INT)
VALUEThe input value of the customer.(VARCHAR) 10
SERVICEThe specific service for which this result is reported.(VARCHAR) 100

Payment methods

The name of the payment method used in our reporting.

Reported asFull name
idealiDEAL
barzahlenbarzahlen/viacash viafintech
bancontactBancontact
creditcardCredit card
sofortSofort Sofortüberweisung / Klarna
paypalPayPal
epsEPS Überweisung
trustlyTrustly

We daily generate a result file for PayLinks that are created through our Portal or API.

These files can be downloaded from our portal and are available at our SFTP. The files have the following naming format “result_{Ymd}_{Ymd}_paylink.csv”.

The CSV file is semicolon (;) separated.

FieldDescriptionFormat (Max.)
idThe UUID of the PayLink.(STRING)
urlShort link and the identifier of the created PayLink.(STRING)
originportal or api(STRING)
createdByName of the portal user that created the PayLink.
Unkown when created through our API.
(STRING)
referenceThe Payment reference filled in through the portal or invoiceReference at our API.(STRING)
amountThe amount that should be paid.
Example: 49.66
(STRING)
statusStatus code(INT)
paymentMethodName of the used payment method.
See list of payment methods.
(STRING)
createdDate time when created.(DATETIME)
updatedDate time of last status change.(DATETIME)
Status codeDescription
0PayLink has been draught
1Receiver has visited the landing page
2Receiver started transaction
3Receiver has arrived in bank environment
4Partial payment
5Payment
6Transaction cancelled/expired (session)*
8Error
9Delay payment, requested by debtor.
* whenever a transaction is started in the bank environment, we speak of a session. This session expires after some time. When a session is expired, a customer can still start a new session to complete payment.

Data transport #

The solutions of Alphacomm #

Alphacomm provides 3 solutions for data transport.

  • Sending of data through Secure File Transfer Protocol (SFTP).
  • Uploading data via our online portal: Alphacomm Live!
  • Sending of data via API

Other types of data transport are not recommended. We prefer the sending of data through SFTP or API because these methods can be fully automated.

Secure File Transfer Protocol (SFTP) #

SFTP gives the sending party (source) the possibility to verify with server fingerprints if the receiving party (target) is right. This is checked through username/password and RSA fingerprint verification of the source. Our server only accepts connections of known sources. Your IP-address should be whitelisted by us.

SFTP guarantees a peer to peer connection (at which a man-in-the-middle attack is impossible) and makes sure the data stream is always encrypted (SSH encryption).

Please note that a firewall can limit your outgoing connections. In this case, it is necessary to open your firewall to our server on port 22.

Portal #

You can find our web-based portal at https://secure.ac-outbound.nl. The connection is secured through 256-bits SSL encryption. That makes it possible to safely exchange data.

Alphacomm can provide you with an account with different rights, to upload files and view statistics.

API #

API connection can be set up via API Key creation in our portal. Please contact us for access. 

API doc can be found here: Collectmaxx API

Matrix of required fields for medium and services #

When a script is configured to send an SMS with PayLink, the required fields are the combination of the columns SMS + PayLink.

Required yes
Optional opt
CSV / XML Column
Field
API RowInput
Field
VoiceSMSMailPayLinkEmandateEnrichment
IDENTIFICATION_IDENTIFIERreferenceyesyesyesyesyesyes
PERSON_FAMILYNAMEpersonFamilyNameoptoptoptyesyesyes
PERSON_GIVENNAMEpersonGivenNameoptoptoptoptoptyes
PERSON_GENDERpersonGenderoptoptoptoptyesopt
PERSON_BIRTHDAYpersonBirthDayoptoptoptoptoptyes
PERSON_IDENTIFIERpersonReferenceoptoptoptoptoptopt
PERSON_HONORIFICPREFIXn/aoptoptoptoptoptopt
PERSON_HONORIFICSUFFIXn/aoptoptoptoptoptopt
ADDRESS_STREETaddressStreetoptoptoptoptoptyes
ADDRESS_HOUSENUMBERaddressHouseNumberoptoptoptoptoptyes
ADDRESS_EXTENSIONaddressHouseNumberExtensionoptoptoptoptoptyes
ADDRESS_ZIPCODEaddressZipCodeoptoptoptoptoptyes
ADDRESS_CITYaddressCityoptoptoptoptoptyes
ADDRESS_COUNTRYaddressCountryoptoptoptoptoptyes
CONTACT_PHONENUMBER_x (max. 3)toPhoneNumbers [String!]yesyesoptoptoptopt
CONTACT_EMAIL_x (max. 3)toMailAddressoptoptyesoptoptopt
INVOICE_NUMBERinvoiceNumberoptoptoptyesoptopt
INVOICE_DATEinvoiceDateoptoptoptyesoptopt
INVOICE_DUEDATEinvoiceDueDateoptoptoptyesoptopt
INVOICE_CURRENCYinvoiceCurrencyoptoptoptyesoptopt
INVOICE_AMOUNTinvoiceAmountoptoptoptyesoptopt
INVOICE_TAXn/aoptoptoptoptoptopt
INVOICE_DESCRIPTIONinvoiceDescriptionoptoptoptyesoptopt
INVOICE_REFERENCEinvoiceReferenceoptoptoptyesoptopt
INVOICE_SERIALn/aoptoptoptoptoptopt
INVOICE_ARRANGEMENT_DESCRIPTIONarrangementDescriptionoptoptoptoptoptopt
INVOICE_ARRANGEMENT_TOTALTERMSn/aoptoptoptoptoptopt
INVOICE_ARRANGEMENT_TERMn/aoptoptoptoptoptopt
INVOICE_ARRANGEMENT_STARTDATEarrangementStartDateoptoptoptoptoptopt
INVOICE_ARRANGEMENT_DUEDATEarrangementEndDateoptoptoptoptoptopt
INVOICE_ARRANGEMENT_CURRENCYn/aoptoptoptoptoptopt
INVOICE_ARRANGEMENT_AMOUNTarrangementAmountoptoptoptoptoptopt
INVOICE_ARRANGEMENT_REMAININGarrangementRemainingAmountoptoptoptoptoptopt
INVOICELINES_x_DESCRIPTION (max. 3)invoiceLinesDescriptions [String!]optoptoptoptoptopt
INVOICELINES_x_UNITS (max. 3)n/aoptoptoptoptoptopt
INVOICELINES_x_UNITPRICE (max. 3)invoiceLinesUnitPrices [Int!]optoptoptoptoptopt
INVOICELINES_x_TOTAL (max. 3)n/aoptoptoptoptoptopt
INVOICELINES_x_TAX (max. 3)n/aoptoptoptoptoptopt
EMANDATE_IDENTIFIERemandateReferenceoptoptoptoptyesopt
EMANDATE_PURCHASEIDemandatePurchaseReferenceoptoptoptoptyesopt
EMANDATE_REASONemandateReasonoptoptoptoptyesopt
EMANDATE_DEBTORIDemandateDebtorReferenceoptoptoptoptyesopt
EMANDATE_VISIBLEUNTILemandateVisibleUntiloptoptoptoptyesopt
CONTRACT_IDENTIFIERcontractIdentifieroptoptoptoptoptopt
CONTRACT_TYPEcontractTypeoptoptoptoptoptopt
CONTRACT_NAMEcontractNameoptoptoptoptoptopt
CONTRACT_STARTDATEcontractStartDateoptoptoptoptoptopt
CONTRACT_ENDDATEcontractEndDateoptoptoptoptoptopt
CONTRACT_CONTACT_FAMILYNAMEn/aoptoptoptoptoptopt
CONTRACT_CONTACT_GIVENNAMEn/aoptoptoptoptoptopt
CONTRACT_CONTACT_GENDERn/aoptoptoptoptoptopt
CONTRACT_CONTACT_PHONENUMBERn/aoptoptoptoptoptopt
CONTRACT_CONTACT_EMAILn/aoptoptoptoptoptopt
CONTROL_SUPPLIERclientReferenceoptoptoptoptoptopt
CONTROL_FLOWIDscriptyesyesyesyesyesopt
SERVICES_ENRICHMENTn/aoptoptoptoptoptyes