--- swagger: "2.0" info: x-ibm-name: card-sandbox title: CARD version: 2.0.0 description: 'The CARD API requests the payment registered by the previous checkout using card details inserted by the customer. The response indicates the status of the transaction. Card payments should always use Payment Form (the exception is for fully PCI Compliant Merchants). ' schemes: - https basePath: /sibs/spg/v2/payments consumes: - application/json produces: - application/json securityDefinitions: clientid: type: apiKey description: "" in: header name: X-IBM-Client-Id security: - clientid: [] x-ibm-configuration: testable: true enforced: true phase: realized paths: /{id}/card/purchase: post: responses: 200: description: 200 OK schema: $ref: '#/definitions/ResponsePayment' operationId: purchase parameters: - name: input required: true in: body schema: $ref: '#/definitions/RequestPayment' - name: id type: string required: true in: path - name: authorization type: string required: true in: header - name: Signature type: string description: For now, the type of HMAC used will be SHA2 (SHA512). base64 required: false maxLength: 128 in: header definitions: ActionProcessed: properties: id: type: string type: type: string example: THREEDS_METHOD enum: - THREEDS_METHOD - THREEDS_CHALLENGE - DCC description: Possible values are ("TREEDS_METHOD", "THREEDS_CHALLENGE", "DCC"). executed: type: boolean additionalProperties: false ActionReponse: properties: id: type: string type: type: string example: THREEDS_METHOD enum: - THREEDS_METHOD - THREEDS_CHALLENGE - DCC data: $ref: '#/definitions/Data' description: Depending on informed type related structures are specified below. additionalProperties: false CardInfo: properties: PAN: type: string example: "12312312" secureCode: type: string example: "123" validationDate: type: string format: date-time example: "2031-12-31T00:00:00.000Z" cardholderName: type: string example: Test createToken: type: boolean example: false additionalProperties: false Data: properties: url: type: string params: type: array items: $ref: '#/definitions/Parameter' additionalProperties: false Deviceinfo: properties: browserAcceptHeader: type: string description: Browser Accept Header browserJavaEnabled: type: string description: Browser Java Enabled browserLanguage: type: string description: Browser Language browserColorDepth: type: string description: Browser Color Depth browserScreenHeight: type: string description: Browser Screen Height browserScreenWidth: type: string description: Browser Screen Width browserTZ: type: string description: Browser Time Zone browserUserAgent: type: string description: Browser User Agent systemFamily: type: string description: System Family systemVersion: type: string description: System Version systemArchitecture: type: string description: System Architecture deviceManufacturer: type: string description: Device Manufacturer deviceModel: type: string description: Device Model deviceID: type: string description: Device Unique Identification applicationName: type: string description: Application Name applicationVersion: type: string description: Application Version geoLocalization: type: string description: Geolocation ipAddress: type: string description: IP Address browserJavascriptEnabled: type: string description: Browser Javascript Enabled additionalProperties: false description: Object that defines the customer device information. ExtendedInfo: type: object properties: key: type: string value: type: string description: Key value tuple. required: - key - value Info: properties: deviceInfo: $ref: '#/definitions/Deviceinfo' description: Object that defines the customers device predefined information. Check the DeviceInfo definition. customerInfo: type: array items: $ref: '#/definitions/ExtendedInfo' description: Key Value tuple array. additionalProperties: false description: Object that defines the transaction additional information Merchant: properties: terminalId: type: integer example: "21451" description: Merchant terminal id format: int32 channel: type: string description: Merchant channel. example: web maxLength: 3 merchantTransactionId: type: string description: Id of the transaction in merchant store. example: 863b730df285443f9a60ca404e0085fd1234 maxLength: 35 additionalProperties: false description: Object that defines a Merchant. Parameter: type: object properties: name: type: string data: type: string additionalProperties: false InstalmentPlan: type: object properties: id: type: string description: Instalment Plan Identification maxLength: 3 pattern: ^[0-9]{1,3}$ default: "111" additionalProperties: false TokenInfo: type: object properties: tokenType: type: string enum: - Email - MobilePhone - QRCodeMBWAY1 - Card default: Card description: Token Type. Possible values are ("Email", "MobilePhone", "QRCodeMBWAY", "Card") value: type: string description: Token value. secureCode: type: string maxLength: 4 pattern: ^[0-9]{0,4}$ additionalProperties: false TokenResponse: type: object properties: tokenName: type: string description: Token Name tokenType: type: string description: Token Type enum: - Email - MobilePhone - QRCodeMBWAY1 - Card default: Card value: type: string description: Token Value maskedPAN: type: string description: Masked PAN expireDate: type: string description: Expiration Date additionalProperties: false MerchantInitiatedTransactionStatusResponse: properties: status: type: string description: Recurring Transaction Outcome. \n Possible values are "Success", "Decline", "Error". additionalProperties: false required: - status MerchantInitiatedTransactionRequest: properties: customerAcceptance: type: boolean description: Indicates if Customer has accepted the Merchant Initiated Transaction Service Terms and Conditions, in order to continue with the payment. Is set to 'True' if Merchant Initiated Transaction Terms and Conditions were presented by Merchant and explicitly accepted by Customer. Otherwise must set to 'False'. When not present, value 'False' is assumed. required: - customerAcceptance additionalProperties: false ThreeDSecureResponse: properties: whitelistStatus: description: 'Possible values are: \n � Y = 3DS Requestor is whitelisted by cardholder \n � N = 3DS Requestor is not whitelisted by cardholder \n � E = Not eligible as determined by issuer \n � P = Pending confirmation by cardholder \n � R = Cardholder rejected \n � U = Whitelist status unknown, unavailable, or does not apply.' type: string enum: - "Y" - "N" - E - P - R - U required: - whitelistStatus RequestPayment: properties: cardInfo: $ref: '#/definitions/CardInfo' description: Object that defines the card information. Check the CardInfo definition. info: $ref: '#/definitions/Info' description: Object that defines the aditional info provided by the merchant. Check the Info definition. actionProcessed: description: Action to be processed $ref: '#/definitions/ActionProcessed' tokenInfo: $ref: '#/definitions/TokenInfo' instalmentPlan: description: Instalment Plan $ref: '#/definitions/InstalmentPlan' merchantInitiatedTransaction: description: Merchant Initiated Transaction $ref: '#/definitions/MerchantInitiatedTransactionRequest' additionalProperties: false description: Object that defines the payment operation request fields ResponsePayment: properties: returnStatus: description: 'Describes the status of the request. (Attention: it doesn''t describe the state of the transaction itself).' $ref: '#/definitions/ReturnStatus' transactionID: type: string description: Backend unique identify of the transaction. example: 42f59038f3f14e618d091da8bf3b717e9999 merchant: description: Object that defines the Merchant. Check the Merchant definition. $ref: '#/definitions/Merchant' paymentType: type: string description: Payment type used enum: - AUTH - PURS - CAPT - CAUT - RFND - RCON - RVSL - STIQ - PREF - CPRF - CMBW default: AUTH actionResponse: description: Action to perform $ref: '#/definitions/ActionReponse' tokenResponse: description: Payment Tokens. $ref: '#/definitions/TokenResponse' merchantInitiatedTransaction: description: Merchant Initiated Transaction Output. $ref: '#/definitions/MerchantInitiatedTransactionStatusResponse' threeDSecure: description: Only present for 3DS 2.2 Transactions $ref: '#/definitions/ThreeDSecureResponse' execution: description: Object that defines an Execution. See the Execution definition. example: "" $ref: '#/definitions/Execution' paymentStatus: type: string description: Status of the payment. enum: - Success - Partial - Declined - InProcessing - Pending - Timeout - Error default: Success hmac: type: string maxLength: 128 description: For now, the type of HMAC used will be SHA2 (SHA512). additionalProperties: false ReturnStatus: properties: statusCode: type: string description: Identifier code of the processed transaction status. example: "000" statusMsg: type: string description: Message of the processed transaction status. example: Success statusDescription: type: string description: Description of the processed transaction status. additionalProperties: false description: 'Describes the status of the request. (Attention: it doesn''t describe the state of the transaction itself).' required: - statusCode - statusMsg - statusDescription Execution: properties: startTime: type: string description: Time of the acceptance of the request by the API. format: date-time example: "2020-07-15T12:10:49.131+01:00" endTime: type: string description: Time of the response to the request by the API. format: date-time example: "2020-07-15T12:10:49.131+01:00" additionalProperties: false description: Object that encapsulates technical execution information. required: - startTime - endTime tags: [] x-ibm-endpoints: - endpointUrl: https://sandbox.sibspayments.com type: - production - development ...