Required data (JSON)
- Only applies for Android SDK
There is data that must be provided when the transaction is confirmed, this is the required information to perform the transaction. You can send that data using the SDKConfirmationJson object.
/**
* Confirmation object needed to continue the transaction online
* @param json: Data of the transaction
* @param authToken: The authentication token to be used in this transaction
* **/
data class SDKConfirmationJson(
val json: String,
val authToken: String,
)
JSON Schema
this is the schema of the JSON you need to send in the 'json' parameter with the data
{
"$schema": "http://json-schema.org/draft-04/schema#",
"definitions":
{
"establishment":
{
"description": "establishment where the transaction is taking place",
"type": "object",
"properties":
{
"address":
{
"description": "address where the transaction is taking place",
"type": "object",
"properties":
{
"addressLine1":
{
"description": "main street and number address(optional)",
"type": "string"
},
"addressLine2":
{
"description": "secondary street and number address(optional)",
"type": "string"
},
"city":
{
"description": "city",
"type": "string"
},
"countryCode":
{
"description": "ISO 3166 numerical code",
"type": "string"
},
"postalCode":
{
"description": "postal code(optional)",
"type": "string"
},
"state":
{
"description": "state",
"type": "string"
}
},
"required":
[
"city",
"countryCode",
"state"
]
},
"businessCategoryCode":
{
"description": "category code(optional)",
"type": "string"
},
"docNumber":
{
"description": "document number(optional)",
"type": "string"
},
"docType":
{
"description": "document type(optional)",
"type": "string"
},
"email":
{
"description": "e-mail(optional)",
"type": "string"
},
"legalName":
{
"description": "establishment's legal name",
"type": "string"
},
"phoneNumber":
{
"description": "establishment's phone number(optional)",
"type": "string"
},
"tradeName":
{
"description": "establishment trade name(optional)",
"type": "string"
},
"establishmentType":
{
"description": "establishment type",
"type": "string",
"enum":
[
"END_MERCHANT",
"INTERMEDIARY"
]
},
"intermediary":
{
"description": "establishment intermediary(optional)",
"$ref": "#/definitions/establishment"
}
},
"required":
[
"address",
"legalName",
"establishmentType"
]
}
},
"type": "object",
"properties":
{
"applicationKey":
{
"description": "application key to use for the transaction",
"type": "string"
},
"billingInfo":
{
"type": "object",
"properties":
{
"ticketNumber":
{
"description": "the ticket number(optional)",
"type": "string"
},
"totals":
{
"description": "only used for Sale transactions(optional)",
"type": "object",
"properties":
{
"net":
{
"description": "updates the amount sent to the processor regardless of the one sent to the reader",
"type": "number"
}
},
"required":
[
"net"
]
}
}
},
"context":
{
"type": "object",
"properties":
{
"establishment":
{
"description": "establishment where the transaction is taking place",
"$ref": "#/definitions/establishment"
}
},
"required":
[
"establishment"
]
},
"merchant":
{
"type": "object",
"properties":
{
"merchantType":
{
"description": "the merchant type identification. If the merchant type is AGGREGATOR then the establishment flagged with type END_MERCHANT will contain the aggregator info. If the merchant type is SELLER then Establishment flagged with type END_MERCHANT will contain the seller info.",
"type": "string",
"enum":
[
"AGGREGATOR",
"SELLER"
]
},
"merchantId":
{
"description": "the merchant id",
"type": "string"
},
"merchantName":
{
"description": "the merchant name(optional)",
"type": "string"
},
"fiid":
{
"description": "(optional)",
"type": "string"
},
"logicalNetwork":
{
"description": "(optional)",
"type": "string"
}
},
"required":
[
"merchantType",
"merchantId"
]
},
"paymentMethod":
{
"type": "object",
"properties":
{
"cardInfo":
{
"type": "object",
"properties":
{
"cardType":
{
"description": "card type",
"type": "string",
"enum":
[
"CREDIT",
"DEBIT"
]
},
"cvv":
{
"description": "card cvv(optional)",
"type": "string"
},
"brand":
{
"description": "card brand",
"type": "string",
"enum":
[
"AMEX",
"ARGENCARD",
"BANCARD",
"CABAL",
"CENCOSUD",
"CODENSA",
"CONFIABLE",
"CREDICARD",
"CREDIFIELCO",
"DINERS",
"DISCOVER",
"ELO",
"INFONET",
"ITALCRED",
"JCB",
"LAANONIMA",
"MADA",
"MAESTRO",
"MASTER",
"NARANJA",
"NATIVA",
"NEVADA",
"PANAL",
"PATAGONIA365",
"PRIVATE_LABEL",
"PYMENACION",
"SHOPPING",
"UNICA",
"UNKNOWN",
"VISA"
]
}
},
"required":
[
"cardType",
"brand"
]
},
"entryMode":
{
"type": "object",
"properties":
{
"fallback":
{
"description": "defines if fallback is enabled for this transaction(optional)",
"type": "boolean"
}
}
},
"accountType":
{
"description": "the account type(optional)",
"type": "string",
"enum":
[
"CC",
"CA",
"CH"
]
},
"paymentPlan":
{
"description": "only used for Sale transactions(optional)",
"type": "object",
"properties":
{
"installments":
{
"description": "number of installments of the sale(optional)",
"type": "integer",
"minimum": 1
},
"code":
{
"description": "payment plan code identifier(optional)",
"type": "string"
}
}
}
},
"required":
[
"cardInfo",
"entryMode"
]
},
"refNumber":
{
"description": "the transaction reference number",
"type": "string"
},
"terminalId":
{
"description": "terminal id of the transaction",
"type": "string"
},
"timeZone":
{
"description": "timeZone for the transaction. Format: (+/-)HH:SS. Example: '-03:00'",
"type": "string"
},
"externalData":
{
"description": "the external data to use for the transaction(optional)",
"type": "string"
},
"parentRefNumber":
{
"description": "the reference number of the transaction needed to be cancelled or refunded (only for CANCEL and REFUND transactions)",
"type": "string"
}
},
"required":
[
"applicationKey",
"billingInfo",
"context",
"merchant",
"paymentMethod",
"refNumber",
"terminalId",
"timeZone"
]
}