ProvIlyda.getPOSSignature (invoice, String, Int32) Method

Get the POS signature to create a new POS Sale. 
The results of this method will be used at VivaWalletPOS.newSale.
Public Function getPOSSignature( _ 
ByVal inv As invoice, _ 
ByVal terminalID As String, _ 
Optional ByVal posProtocol As Integer = 1 _ 
) As Dictionary(Of String, String)
This language is not supported or no code example is available.
public Dictionary<string, string> getPOSSignature( 
invoice inv
string terminalID
int posProtocol = 1 
)
This language is not supported or no code example is available.

Parameters

inv
invoice

Invoice Object, see invoice

terminalID
string

The POS terminal ID. You can get the available POS Terminals using the VivaWalletPOS.getAvailablePOS

posProtocol
int

Default Value 1 
The POS protocol that it will be used for generating the signature. 
Possible values: 
DEFAULT: 1 
Mellon Group: 2

Return Value

Dictionary<string, string>

Returns a dictionary containing the necessary data that will be used in the Transaction object. 
Specifically, the fields Transaction.aadeProviderSignatureData (dictionary key signedContent) and Transaction.aadeProviderSignature (dictionary key signature) will be filled. 
The Dictionary contains the following values: 

FieldValue / Description
invoiceMarking
invoiceSignatures[0].amount248
invoiceSignatures[0].netAmount200
invoiceSignatures[0].vatAmount48
invoiceSignatures[0].grossAmount248
invoiceSignatures[0].uid555777003-2026-01-01-0-1.1-IZ-f520c7014af54a4689d20a8ae123456d
invoiceSignatures[0].uidHashB6A70F9F1CCE52E6C6F7E5C40951F240DE0000CC
invoiceSignatures[0].terminalId12345678
invoiceSignatures[0].signatureMEUCIQCArr07MPkylqQ/9w7f0hamjyGC485lwupdi0Ac
invoiceSignatures[0].signingAuthor008
invoiceSignatures[0].signedContentB6A70F9F1CCE52E6C6F7E5C40951F240DE0000CC;;20260202140021;24800;20000;4800;24800;12345678
invoiceSignatures[0].signaturePublicKeyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0sgcjv
invoiceSignatures[0].signedAt01/01/2026 11:00:00
invoiceSignatures[0].vatRate
invoiceSignatures[0].signatureExpirationDate01/01/2026 13:00:00
invoiceSignatures[0].nspProtocolDEFAULT
invoiceSignatures[0].sellerVat555777003
invoiceSignatures[0].sellerBranch0
invoiceSignatures[0].seriesIZ
invoiceSignatures[0].serialf520c7014af54a4689d20a8ae000000d
invoiceSignatures[0].invoiceTypeCode1.1
invoiceSignatures[0].cancelled
invoiceSignatures[0].cancelReason
invoiceSignatures[0].cancelReasonText
invoiceSignatures[0].cancelledAt
errors[X].codeThe Error Code of the X error
errors[X].defaultMessageThe Error Message of the X error
errors[X].fatalIf the X error is fatal or not (True/False)
errors[X].errorFields[Y].fieldThe Y field of the X error that generated the error
errors[X].errorFields[Y].valueThe Y field value of the X error that generated the error
JSON_ARBDATAVjJ4b2FtUXhUW!RpUlZKU1ZqSjRZVmxYZ^hka1ZrNVlZM!hhWVUxWVFqQlZiVFZQ

Where X and Y are increment numbers starting from zero (0). Example: errors[0].errorFields[0].field

Example
 
  var il = new ProvIlyda("ilydaUser", "ilydaPassword", "arbUser", "arbKey", false);
 
  // The "inv" is the invoice object you previously created.
  // The "ily" is the ilydaData object you previously created.
 
  Dictionary<string, string> posSign = il.getPOSSignature(inv, ily.extraDetails.paymentTerminalID);
  					
This language is not supported or no code example is available.
  Dim il As ProvIlyda = New ProvIlyda("ilydaUser", "ilydaPassword", "arbUser", "arbKey", False)
 
  'The "inv" is the invoice object you previously created.
  'The "ily" is the ilydaData object you previously created.
 
  Dim posSign As Dictionary(Of String, String) = il.getPOSSignature(inv, ily.extraDetails.paymentTerminalID)
  					
This language is not supported or no code example is available.

.NET Framework

Supported in: 3.5 or newer

In this article

Definition