isignthis-psp
Version:
Module for interfacing with iSignThis as a payment service provider (PSP)
261 lines • 6.48 kB
JSON
{
"type": "object",
"$schema": "http://json-schema.org/draft-03/schema",
"id": "http://jsonschema.net",
"required": true,
"additionalProperties": false,
"properties": {
"repeat": {
"type": "boolean",
"required": false
},
"acquirer_id": {
"type": "string",
"required": true
},
"message_class": {
"type": "string",
"required": false
},
"requested_workflow": {
"type": "string",
"required": false
},
"merchant": {
"type": "object",
"required": true,
"additionalProperties": false,
"properties": {
"id": {
"type": "string",
"required": true,
"minLength": 1,
"maxLength": 32,
"pattern": "^[0-9a-zA-Z\\. \\+\\?\\!\\$\\:\\'\\\"\\#\\-\\,\\%\\@\\_\\=\\*]+$"
},
"terminal_id": {
"type": "string",
"required": false,
"minLength": 1,
"maxLength": 8,
"pattern": "^[0-9a-zA-Z\\. \\+\\?\\!\\$\\:\\'\\\"\\#\\-\\,\\%\\@\\_\\=\\*]+$"
},
"ppid": {
"type": "string",
"required": false,
"minLength": 1,
"maxLength": 20,
"pattern": "^[0-9a-zA-Z\\. \\+\\?\\!\\$\\:\\'\\\"\\#\\-\\,\\%\\@\\_\\=\\*]+$"
},
"name": {
"type": "string",
"required": true,
"minLength": 1,
"maxLength": 40,
"pattern": "^[0-9a-zA-Z\\. \\+\\?\\!\\$\\:\\'\\\"\\#\\-\\,\\%\\@\\_\\=\\*]+$"
},
"return_url": {
"type": "string",
"required": false,
"format": "uri",
"minLength": 1,
"maxLength": 255
},
"logo": {
"type": "string",
"required": false
}
}
},
"account": {
"type": "object",
"required": false,
"additionalProperties": true,
"properties": {
"full_name": {
"type": "string",
"required": true,
"minLength": 2,
"maxLength": 128
},
"identifier_type": {
"type": "string",
"required": true,
"maxLength": 32
},
"identifier": {
"type": "string",
"required": true,
"maxLength": 128
},
"secret": {
"type": "string",
"required": true,
"maxLength": 64
},
"card_token": {
"type": "string",
"required": false,
"minLength": 1,
"maxLength": 32,
"pattern": "^[0-9a-zA-Z\\. \\+\\?\\!\\$\\:\\'\\\"\\#\\-\\,\\%\\@\\_\\=\\*]+$"
}
}
},
"cardholder": {
"type": "object",
"required": false,
"additionalProperties": false,
"properties": {
"pan": {
"type": "string",
"required": true,
"minLength": 12,
"maxLength": 19,
"pattern": "[0-9]+"
},
"expiration_date": {
"type": "string",
"required": true,
"minLength": 4,
"maxLength": 4,
"pattern": "[0-9]+"
},
"cvv": {
"type": "string",
"required": false,
"minLength": 3,
"maxLength": 4,
"pattern": "[0-9]+"
},
"name": {
"type": "string",
"required": true,
"maxLength": 255,
"pattern": "^[0-9a-zA-Z\\. \\+\\?\\!\\$\\:\\'\\\"\\#\\-\\,\\%\\@\\_\\=\\*]+$"
}
}
},
"transaction": {
"type": "object",
"required": true,
"additionalProperties": false,
"properties": {
"id": {
"type": "string",
"required": true,
"minLength": 1,
"maxLength": 40,
"pattern": "^[0-9a-zA-Z\\. \\+\\?\\!\\$\\:\\'\\\"\\#\\-\\,\\%\\@\\_\\=\\*]+$"
},
"datetime": {
"type": "string",
"required": true,
"format": "date-time"
},
"amount": {
"type": "string",
"required": true,
"pattern": "[0-9\\.]+",
"minLength": 1,
"maxLength": 20
},
"currency": {
"type": "string",
"required": true,
"minLength": 3,
"maxLength": 3,
"pattern": "^[0-9a-zA-Z\\. \\+\\?\\!\\$\\:\\'\\\"\\#\\-\\,\\%\\@\\_\\=\\*]+$"
},
"reference": {
"type": "string",
"required": true,
"minLength": 0,
"maxLength": 100,
"pattern": "^[0-9a-zA-Z\\. \\+\\?\\!\\$\\:\\'\\\"\\#\\-\\,\\%\\@\\_\\=\\*]+$"
},
"description": {
"type": "string",
"required": false,
"maxLength": 128
}
}
},
"client": {
"type": "object",
"required": false,
"additionalProperties": false,
"properties": {
"ip": {
"type": "string",
"required": false,
"format": "ipv4"
},
"name": {
"type": "string",
"minLength": 0,
"maxLength": 255
},
"dob": {
"type": "string",
"required": false,
"format": "date"
},
"citizen_country": {
"type": "string",
"required": false,
"pattern": "[a-zA-Z]{2}"
},
"birth_country": {
"type": "string",
"required": false,
"pattern": "[a-zA-Z]{2}"
},
"resident_country": {
"type": "string",
"required": false,
"pattern": "[a-zA-Z]{2}"
},
"email": {
"type": "string",
"required": false,
"format": "email"
},
"address": {
"type": "string",
"required": false,
"maxLength": 255
},
"mobile_phone": {
"type": "string",
"required": false,
"maxLength": 255
}
}
},
"http_auth_type": {
"type": "string",
"required": false
},
"http_auth_value": {
"type": "string",
"required": false
},
"upstream_auth_type": {
"type": "string",
"required": false
},
"upstream_auth_value": {
"type": "string",
"required": false
},
"downstream_auth_type": {
"type": "string",
"required": false
},
"downstream_auth_value": {
"type": "string",
"required": false
}
}
}