--- swagger: "2.0" info: x-ibm-name: mbway-id-sandbox title: MB WAY version: 2.0.0 description: The MB WAY API requests the MB WAY enabled App, associated with the mobile phone number sent within the request, to accept the payment. The response indicates the status of the notification to the MB WAY user. The payment only happens after MB WAY user acceptance. 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}/mbway-id/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 executed: type: boolean additionalProperties: false ActionReponse: properties: id: type: string type: type: string data: $ref: '#/definitions/Data' 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 required: - key - value properties: key: type: string description: Property Key value: type: string description: Property Value description: Key value tuple. additionalProperties: false 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 merchantTransactionId: type: string maxLength: 35 description: Id of the transaction in merchant store. example: 863b730df285443f9a60ca404e0085fd1234 mbwayRedirectURL: type: string description: MB WAY URL for redirect purposes to MB WAY App. \n Can include the MerchantURL, if inserted by the merchant, for redirect purposes to Merchant App maxLength: 2048 additionalProperties: false description: Object that defines a Merchant. Parameter: type: object properties: name: type: string data: type: string additionalProperties: false RequestPayment: properties: customerPhone: type: string description: Customer's phone number. Mandatory for MB WAY Purchase. Not present for MB WAY Mandate Purchase. pattern: ^\d{1,5}#\d{4,11}$ example: 351#900000000 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' mandate: description: Object that defines a MBWAY Mandate. Only present in transactions where a MB WAY Mandate is applicable. required: - mandateCreation - useMBWAYMandate properties: mandateCreation: type: boolean description: Indicates if customer requests the mandate creation. useMBWAYMandate: type: boolean description: Indicates if a MB WAY Mandate Purchase is requested. inApp: type: boolean description: Indicates, if the operation is an In-App Operation. \n This field must only be used in case of App-to-App communication and must be stored in SPG Backend (Upstream). additionalProperties: false description: Object that defines the payment operation request fields ResponsePayment: properties: returnStatus: description: Object that defines the Status of the transaction. Check the ReturnStatus definition. $ref: '#/definitions/ReturnStatus' transactionID: type: string description: 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 - MAND - MAUT - MPUR default: AUTH actionResponse: description: Action to perform $ref: '#/definitions/ActionReponse' 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 description: Object that defines the payment operation return fields 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)' Execution: required: - startTime - endTime 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. tags: [] x-ibm-endpoints: - endpointUrl: https://sandbox.sibspayments.com type: - production - development ...