Troubleshooting for CreateInvoice

CreateInvoice is a data request that registers an invoice with Credit Management in the Buckaroo Payment Engine.

A few parameters are mandatory. Most are optional, although the given scheme’s actions can impose additional requirements. For example, if a scheme can send e-mails, the Email group is required.

Note that the debtor-related parameters are grouped. The Person group handles personal information, the Address group handles address information, and so on. Groups are always either included or omitted.

A debtor is identified by its unique Debtor_Code, determined by the merchant. A new code registers a new debtor. An existing code with no further information uses the existing debtor as is. An existing code with additional information also updates (i.e. overwrites) any group that is given. E.g. if any parameters from the Address group are given, any previous address information is overwritten by the given group.

Each group should be included or omitted as a whole. If a group (e.g. Address) is given, except for some of its optional parameters (e.g. Address_HouseNumber), the missing parameters are considered empty.

For phone numbers, each type of phone (e.g. mobile, landline, or fax) is considered separately, as if it were a group of its own. Submitting a mobile phone number does not overwrite any existing landline phone number.

Example: Debtor_Code 1234 is already known, with Person, Address, and Phone_Landline information. A new request is made, using the same debtor code, accompanied by parameters Phone_Mobile, Address_Country, Address_City, Address_ZipCode, and Address_Street. The result is as follows: The Person and Phone_Landline data remains available, unchanged. The mobile phone number is added. The complete address is replaced by the new one. Note in particular that, because no state and no house number are given, these will indeed be empty in the new address, even if they were populated for the old address. (They are allowed to be empty because addresses exist that do not have them.)

Furthermore, if any contact detail was marked unreachable, re-submitting that information removes the mark, allowing the detail to be used again. For example, if a new e-mail address is submitted or the existing e-mail address is explicitly submitted again (rather than being omitted), then the merchant is instructing the use of that e-mail address. This is assumed to be a conscious decision (e.g. because the debtor has informed the merchant that the inbox is no longer full), and as such, the unreachable mark is removed.