openapi: 3.2.0 info: title: Silverflow Retrieve Charges API version: 1.417.0 contact: name: API Support email: support@silverflow.com license: name: Commercial description: 'Operations tagged Retrieve Charges across 2 of this provider''s published API definitions: silverflow-openapi.yml, silverflow-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: https://eu-west-1.api.silverflow.com/v1 description: Production URL for Europe - Equivalent to https://api.silverflow.co/v1 - url: https://us-east-2.api.silverflow.com/v1 description: Production URL for North America - url: https://eu-west-1.api-sbx.silverflow.com/v1 description: Sandbox URL - Equivalent to https://api-sbx.silverflow.co/v1 security: - ApiKey: [] - BearerToken: [] tags: - name: Retrieve Charges description: Retrieve a single or multiple charges. paths: /charges/{chargeKey}: get: operationId: getCharge summary: Get Charge description: 'Returns the charge identified by the charge key. Requires `charges:Get` permission. ' tags: - Retrieve Charges parameters: - $ref: '#/components/parameters/chargeKey' responses: '200': description: The charge content: application/json: schema: $ref: '#/components/schemas/Charge' '400': $ref: '#/components/responses/responses-InvalidInputError' '401': $ref: '#/components/responses/openapi_components-responses-UnauthorizedError' '403': $ref: '#/components/responses/components-responses-ForbiddenError' '404': $ref: '#/components/responses/EntityNotFoundError' '429': $ref: '#/components/responses/components-responses-TooManyRequestsError' '500': $ref: '#/components/responses/responses-InternalServerError' servers: - url: https://eu-west-1.api.silverflow.com/v1 description: Production URL for Europe - Equivalent to https://api.silverflow.co/v1 - url: https://us-east-2.api.silverflow.com/v1 description: Production URL for North America - url: https://eu-west-1.api-sbx.silverflow.com/v1 description: Sandbox URL - Equivalent to https://api-sbx.silverflow.co/v1 /charges: get: operationId: getCharges summary: List Charges description: 'This operation supports 2 distinct use cases: 1. Get a paged list of all charges, optionally filtered by `date` or period (`from`, `to`). 2. Get a paged list of the charges with the specified `transactionReference`. Requires `charges:List` permission. ' tags: - Retrieve Charges parameters: - $ref: '#/components/parameters/components-parameters-offsetToken' - $ref: '#/components/parameters/sortOrder' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/parameters-from' - $ref: '#/components/parameters/parameters-to' - $ref: '#/components/parameters/date' - $ref: '#/components/parameters/transactionReferenceQs' responses: '200': description: A (paged) list of charges content: application/json: schema: $ref: '#/components/schemas/ChargesPage' '400': $ref: '#/components/responses/InvalidToOrFromDateError' '401': $ref: '#/components/responses/openapi_components-responses-UnauthorizedError' '403': $ref: '#/components/responses/components-responses-ForbiddenError' '429': $ref: '#/components/responses/components-responses-TooManyRequestsError' '500': $ref: '#/components/responses/responses-InternalServerError' servers: - url: https://eu-west-1.api.silverflow.com/v1 description: Production URL for Europe - Equivalent to https://api.silverflow.co/v1 - url: https://us-east-2.api.silverflow.com/v1 description: Production URL for North America - url: https://eu-west-1.api-sbx.silverflow.com/v1 description: Sandbox URL - Equivalent to https://api-sbx.silverflow.co/v1 components: schemas: GenericCharge: type: object additionalProperties: false required: - key - created - status - type - localTransactionDateTime - merchantAcceptorRef - card - amount - fraudLiability - authorizationIsoFields - authentication - version description: 'A charge ' properties: key: $ref: '#/components/schemas/chargeKey' refundedChargeKey: $ref: '#/components/schemas/refundedChargeKey' merchantAcceptorRef: $ref: '#/components/schemas/components-schemas-AcceptorRef' card: $ref: '#/components/schemas/OutputCard' tokenDetails: $ref: '#/components/schemas/StoredTokenDetails' amount: $ref: '#/components/schemas/components-schemas-Amount' cardholderBillingAmount: $ref: '#/components/schemas/CardholderBillingAmount' type: $ref: '#/components/schemas/GetResponseChargeType' clearingMode: $ref: '#/components/schemas/clearingMode' status: $ref: '#/components/schemas/ChargeStatus' authentication: $ref: '#/components/schemas/ChargeAuthentication' localTransactionDateTime: $ref: '#/components/schemas/localTransactionDateTime' transactionType: $ref: '#/components/schemas/TransactionType' transactionReference: $ref: '#/components/schemas/transactionReference' fraudLiability: $ref: '#/components/schemas/fraudLiability' authorizationIsoFields: $ref: '#/components/schemas/authorizationIsoFields' billingAddress: description: The billing address of the Agent $ref: '#/components/schemas/BillingAddress' shippingAddress: $ref: '#/components/schemas/components-schemas-Address' clearAfter: $ref: '#/components/schemas/clearAfter' dynamicDescriptor: $ref: '#/components/schemas/schemas-DynamicDescriptor' foreignRetailer: $ref: '#/components/schemas/schemas-foreignRetailer' riskCheckResult: $ref: '#/components/schemas/RiskCheckResult' created: $ref: '#/components/schemas/openapi_components-schemas-created' lastModified: $ref: '#/components/schemas/components-schemas-lastModified' version: $ref: '#/components/schemas/schemas-version' example: 1 BaseTerminal: type: object required: - id - attended properties: id: type: string description: Terminal's ID pattern: ^[a-zA-Z0-9]+$ minLength: 1 maxLength: 8 example: AAFF attended: type: boolean description: Whether the terminal is attended or not. mitFundingSca: oneOf: - $ref: '#/components/schemas/MitFundingThreeDsAuthentication' - $ref: '#/components/schemas/ScaBEP' - $ref: '#/components/schemas/AuthenticationOutOfScope' - $ref: '#/components/schemas/AuthenticationExempt' - $ref: '#/components/schemas/ScaMit' authorizationIsoFields: description: Object containing the raw values from the ISO8583 response message received from the network. oneOf: - $ref: '#/components/schemas/authorizationIsoFieldsAmericanExpress' - $ref: '#/components/schemas/authorizationIsoFieldsBancontact' - $ref: '#/components/schemas/authorizationIsoFieldsDiners' - $ref: '#/components/schemas/authorizationIsoFieldsDiscover' - $ref: '#/components/schemas/authorizationIsoFieldsMastercard' - $ref: '#/components/schemas/authorizationIsoFieldsVisa' POS: allOf: - type: object required: - type properties: type: type: string enum: - pos - $ref: '#/components/schemas/BaseTerminal' - type: object required: - capabilities properties: capabilities: type: array description: 'The capabilities of the terminal. This can be one or multiple, and if more than one is specified it means that it is capable of all of those things. #### Restrictions If `capabilities` include `keyEntry` or `signature` then `attended` must be set to `true`. ' items: $ref: '#/components/schemas/TerminalCapability' example: - contactChip - contactlessChip - contactMagStripe - oneTap SoftPOS: allOf: - type: object required: - type properties: type: type: string enum: - softpos - $ref: '#/components/schemas/BaseTerminal' - type: object required: - attended - capabilities properties: attended: type: boolean enum: - true capabilities: type: array description: 'The capabilities of the terminal. This can be one or multiple, and if more than one is specified it means that it is capable of all of those things. ' items: $ref: '#/components/schemas/softPosTerminalCapability' example: - onlinePin - contactlessChip - noCvm - oneTap ForeignRetailerDisabled: type: object description: Transaction does not involve a foreign retailer required: - indicator additionalProperties: false properties: indicator: type: boolean enum: - false description: Specifies if end seller in the transaction is a foreign retailer StatusPos: type: object required: - authentication - authorization - clearing description: 'The status property provides a high-level representation of the lifecycle of a charge. For a complete history, the actions should be used. ' properties: authentication: type: string description: Strong Customer Authentication (SCA) status of the charge enum: - none authorization: type: string description: 'Authorization status of the charge. Value ''approved-purchase-amount-only'' is only returned for Mastercard charges using ''amount.breakdown.cashback''. In this case, only the ''amount.breakdown.baseAmount'' was approved, but not the cashback. ' enum: - none - approved - approved-partial - declined - reversed - approved-purchase-amount-only example: approved clearing: $ref: '#/components/schemas/ClearingStatus' terminalEntryMode: description: "This field indicates the method used for PAN entry on \nthe terminal to initiate the transaction.\n" type: string enum: - contactless - manual-entry - chip - magstripe - magstripe-fallback AuthorizationStatus: type: string description: Authorization status of the charge. enum: - none - approved - approved-partial - declined - reversed example: approved ChargeStatus: type: object required: - authentication - authorization - clearing description: 'The status property provides a high-level representation of the lifecycle of a charge. For a complete history, the actions should be used. ' properties: authentication: $ref: '#/components/schemas/AuthenticationStatus' authorization: $ref: '#/components/schemas/ChargeAuthorizationStatus' clearing: $ref: '#/components/schemas/ChargeClearingStatus' complianceReasonBEP: description: 'Indicates the reason for the SCA compliance. ' type: string enum: - mandated TransactionType: type: string enum: - cryptocurrency - high-risk-securities - central-bank-digital-currency - stablecoin - blockchain-native-coin - non-fungible-token description: 'In case of a special transaction type, this allows you to specify which one. `type.intent` needs to be `purchase`. - `cryptocurrency`: A transaction involving the purchasing of cryptocurrencies. Use this for Visa only if specific type of digital asset cannot be determined. - `high-risk-securities`: A transaction involving the purchasing of high-risk securities. Only supported for Mastercard. - `central-bank-digital-currency`: A transaction involving purchase of a Central Bank Digital Currency (CBDC). Only supported for Visa. - `stablecoin`: A transaction involving purchase of stablecoins. - `blockchain-native-coin`: A transaction involving purchase of a non fiat backed blockchain coin. Only supported for Visa. - `non-fungible-token`: A transaction involving purchase of a Non Fungible Token (NFT). Only supported for Visa. Not supported for Diners. ' openapi_components-schemas-stateOrProvince: type: string pattern: ^[\w -,\.\-\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]+$ minLength: 1 maxLength: 120 description: 'The state (US) or province (non-US) of the address. ' example: NH isoFieldResponseCodeDescription: type: string description: The description of the `responseCode` example: Approved schemas-foreignRetailer: description: 'Used for transactions fulfilled partly or fully by end seller that is in a different country than the Marketplace or Ramp Provider. VISA EXPERIMENTAL ' oneOf: - $ref: '#/components/schemas/ForeignRetailerDisabled' - $ref: '#/components/schemas/ForeignRetailerEnabled' components-schemas-offsetToken: type: string pattern: ^[a-zA-Z0-9%]+$ minLength: 1 maxLength: 2048 example: LUtyr0s918rNZ5WuWDYh5FNzqAli6HqKHpPDatcfdsaVlibrlO49BKcOdz9YccUOtDSoyLtc4kAiOLkmjSW5zLa8OCnOXXBRja2rDYh5FNzqAli6HqKHpPDatcfdsaVlibrlO49BKcOdz9Yc FundingPayoutThreeDsAuthentication: type: object required: - compliance - complianceReason - method - result description: 'Object container for strong customer authentication. ' properties: method: $ref: '#/components/schemas/method' compliance: type: string enum: - mandated - mit - exemption complianceReason: $ref: '#/components/schemas/threeDsComplianceReason' result: $ref: '#/components/schemas/FundingPayoutThreeDsAuthenticationResultResponse' clearingMode: type: string enum: - auto - manual description: 'The clearing method for the charge. - `auto`: The charge is cleared automatically as soon as possible. To delay clearing, provide a `clearAfter` timestamp. - `manual`: The charge must be manually cleared later. ' default: auto softPosTerminalCapability: type: string enum: - contactlessChip - onlinePin - signature - noCvm - oneTap PayoutCharge: type: object description: 'A payout charge ' required: - key - created - status - type - amount - merchantAcceptorRef - authorizationIsoFields - authentication - sender - card - version - localTransactionDateTime properties: key: $ref: '#/components/schemas/chargeKey' merchantAcceptorRef: $ref: '#/components/schemas/components-schemas-AcceptorRef' card: $ref: '#/components/schemas/OutputCard' amount: $ref: '#/components/schemas/components-schemas-Amount' type: $ref: '#/components/schemas/PayoutChargeType' clearingMode: $ref: '#/components/schemas/clearingMode' status: $ref: '#/components/schemas/StatusWithoutPartialApproval' authentication: $ref: '#/components/schemas/FundingPayoutChargeAuthentication' localTransactionDateTime: $ref: '#/components/schemas/localTransactionDateTime' transactionReference: $ref: '#/components/schemas/transactionReference' fraudLiability: description: 'Which party is liable in case of fraud. ' deprecated: true type: string enum: - acquirer - issuer authorizationIsoFields: $ref: '#/components/schemas/authorizationIsoFields' sender: $ref: '#/components/schemas/PayoutSender' receiver: $ref: '#/components/schemas/PayoutReceiver' riskCheckResult: $ref: '#/components/schemas/RiskCheckResult' purposeOfPayment: $ref: '#/components/schemas/purposeOfPayment' created: $ref: '#/components/schemas/openapi_components-schemas-created' lastModified: $ref: '#/components/schemas/components-schemas-lastModified' version: $ref: '#/components/schemas/schemas-version' purposeOfPayment: type: string minLength: 1 maxLength: 12 description: 'A code that describes the purpose of payment to classify and report the nature and purpose of the transaction. Refer to Visa documentation for country specific requirements for this field. ' PosCharge: type: object required: - key - created - terminal - status - type - merchantAcceptorRef - authorizationIsoFields - amount - version - card - localTransactionDateTime description: 'A POS charge ' properties: key: $ref: '#/components/schemas/chargeKey' merchantAcceptorRef: $ref: '#/components/schemas/components-schemas-AcceptorRef' card: $ref: '#/components/schemas/OutputCard' amount: allOf: - description: 'The amount encoded as an object with a `value` in minor units and a `currency` code. In case of a (partially) approved charge, this is the authorized amount. An optional `breakdown` can be provided to indicate specific sub-amounts. ' - $ref: '#/components/schemas/ResponsePosAmount' type: $ref: '#/components/schemas/ChargePosType' status: $ref: '#/components/schemas/StatusPos' localTransactionDateTime: $ref: '#/components/schemas/localTransactionDateTime' transactionReference: $ref: '#/components/schemas/transactionReference' authorizationIsoFields: $ref: '#/components/schemas/PosAuthorizationIsoFields' clearingMode: $ref: '#/components/schemas/clearingMode' clearAfter: $ref: '#/components/schemas/clearAfter' terminal: $ref: '#/components/schemas/Terminal' created: $ref: '#/components/schemas/openapi_components-schemas-created' lastModified: $ref: '#/components/schemas/components-schemas-lastModified' version: $ref: '#/components/schemas/schemas-version' openapi_components-schemas-city: type: string pattern: ^[\w -,\.\-\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]+$ minLength: 1 maxLength: 120 description: 'The city of the address. ' example: Amsterdam cvcResultBEP: enum: - none description: The result of cvc verification GetResponseChargeType: description: 'Describes the kind of charge the merchant wants to submit. ' type: object required: - intent - cardEntry - order properties: intent: description: 'The intention of the cardholder. ' type: string enum: - purchase - reservation - account-status - refund cardEntry: $ref: '#/components/schemas/responseCardEntry' order: description: 'The method used to place the order. ' type: string enum: - checkout - unspecified - mail - phone - one-click - recurring - ucof - installment - standing-order - counter sequence: oneOf: - $ref: '#/components/schemas/sequence' - type: string title: Legacy Sequence description: 'For older charges created on the [`POST /charges`](#operation/createCharge) endpoint, this field can have a value of `subsequent`. ' enum: - subsequent components-schemas-CountryCodeAlpha3: type: object required: - alpha3 additionalProperties: false properties: alpha3: $ref: '#/components/schemas/schemas-countryCodeAlpha3' StatusWithoutPartialApproval: type: object required: - authentication - authorization - clearing description: 'The status property provides a high-level representation of the lifecycle of a charge. For a complete history, the actions should be used. ' properties: authentication: $ref: '#/components/schemas/AuthenticationStatus' authorization: $ref: '#/components/schemas/AuthorizationStatusWithoutPartialApproval' clearing: $ref: '#/components/schemas/ClearingStatus' complianceBEP: description: 'Indicates SCA compliance of the charges ' type: string enum: - mandated AuthenticationOutOfScope: type: object required: - compliance - complianceReason - method properties: method: type: string enum: - none compliance: type: string enum: - out-of-scope complianceReason: type: string enum: - none - moto - one-leg - anonymous-prepaid - recurring openapi_components-schemas-created: type: string description: The date and time this object was created format: iso-8601-date-time readOnly: true schemas-countryCodeAlpha2: type: string pattern: ^[A-Z]+$ minLength: 2 maxLength: 2 externalDocs: description: Find more info here. url: https://www.iso.org/iso-3166-country-codes.html example: NL isoFieldResponseCode: type: string description: Contents of field 39 example: '00' avsResult: description: The result of the AVS verification type: string enum: - none - match - partial-match - no-match - not-processed fundingPayoutSca: oneOf: - $ref: '#/components/schemas/FundingPayoutThreeDsAuthentication' - $ref: '#/components/schemas/ScaBEP' - $ref: '#/components/schemas/AuthenticationOutOfScope' - $ref: '#/components/schemas/AuthenticationExempt' - $ref: '#/components/schemas/ScaMit' AuthenticationExempt: type: object required: - compliance - complianceReason - method properties: method: type: string enum: - none compliance: type: string enum: - exemption complianceReason: type: string enum: - whitelist - auto - mit - tra - recurring - low-value - delegation - scp - wip FundingIntent: description: 'The intention of the cardholder ' type: string enum: - funding sca: oneOf: - $ref: '#/components/schemas/ThreeDsAuthentication' - $ref: '#/components/schemas/ScaBEP' - $ref: '#/components/schemas/AuthenticationOutOfScope' - $ref: '#/components/schemas/AuthenticationExempt' - $ref: '#/components/schemas/ScaMit' components-schemas-Address: type: object required: - countryCode - city - line1 - postalCode additionalProperties: false description: 'A physical postal address ' properties: countryCode: $ref: '#/components/schemas/schemas-CountryCode' stateOrProvince: $ref: '#/components/schemas/openapi_components-schemas-stateOrProvince' city: $ref: '#/components/schemas/openapi_components-schemas-city' line1: $ref: '#/components/schemas/openapi_components-schemas-line1' line2: $ref: '#/components/schemas/openapi_components-schemas-line2' postalCode: $ref: '#/components/schemas/openapi_components-schemas-postalCode' ValidationError: type: object required: - path - message properties: path: type: string description: A relative path to the error location within the request body. errorCode: type: string description: A code that identifies the error. message: type: string description: A brief description of the validation error. atmTerminalEntryMode: description: 'This field indicates the method used for PAN entry on the ATM terminal to initiate the transaction. ' type: string enum: - chip - contactless - contactless-magstripe - magstripe - magstripe-fallback Identification: description: Identification used to verify sender or receiver. type: object required: - value - type properties: type: description: "Type of identification:\n - `date-of-birth` - Date of birth according to [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) \n - `national-identification` - National identification\n - `passport-number` - Passport number\n - `driver-license` - Driver license\n - `tax-identification` - Tax identification\n - `company-registration-number` - Company registration number\n - `social-security-number` - Social security number\n - `other` - Customer identification (unspecified)\n" type: string enum: - date-of-birth - national-identification - passport-number - driver-license - tax-identification - company-registration-number - social-security-number - other value: description: 'The value used for identification of the sender or receiver. For BTHD (date of birth) the format should be [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) ' type: string minLength: 1 maxLength: 35 issuingCountry: description: Issuing country of the identification, according to [ISO 3166-3](https://en.wikipedia.org/wiki/ISO_3166-3) type: string minLength: 3 maxLength: 3 authorizationIsoFieldsVisa: allOf: - $ref: '#/components/schemas/commonIsoFields' - type: object required: - networkCode - systemTraceAuditNumber - retrievalReferenceNumber - eci - networkSpecificFields properties: authorizationCode: $ref: '#/components/schemas/isoFieldAuthorizationCode' networkCode: $ref: '#/components/schemas/isoFieldNetworkCode' systemTraceAuditNumber: $ref: '#/components/schemas/isoFieldSystemTraceAuditNumber' retrievalReferenceNumber: $ref: '#/components/schemas/isoFieldRetrievalReferenceNumber' eci: $ref: '#/components/schemas/isoFieldEciVisa' networkSpecificFields: $ref: '#/components/schemas/visaSpecificFields' ChargePosType: description: Describes the kind of POS charge the merchant wants to submit. type: object required: - intent - cardEntry - order - terminalEntryMode properties: intent: $ref: '#/components/schemas/intentPos' cardEntry: $ref: '#/components/schemas/cardEntryPos' order: $ref: '#/components/schemas/orderPos' terminalEntryMode: $ref: '#/components/schemas/terminalEntryMode' sequence: $ref: '#/components/schemas/sequencePos' schemas-countryCodeNumeric: type: string pattern: ^[0-9]+$ minLength: 3 maxLength: 3 externalDocs: description: Find more info here. url: https://www.iso.org/iso-3166-country-codes.html example: '528' StoredTokenDetailsNetwork: type: object required: - type properties: type: type: string description: Details about a token from one of the card networks enum: - network eci: $ref: '#/components/schemas/schemas-eci' openapi_components-schemas-postalCode: type: string pattern: ^[A-Z0-9]+( [A-Z0-9]*)?$ minLength: 1 maxLength: 10 description: 'The postal code of the address, allowing a single separating space. ' example: 1234BC MitChargeFromInitialCharge: allOf: - $ref: '#/components/schemas/GenericCharge' - $ref: '#/components/schemas/MitAdditionalProperties' BaseAmountBreakdown: type: object required: - baseAmount description: "A breakdown of the transaction `value`. \n\nAll provided amounts must exactly add up to `value`.\nProviding a breakdown is only required if any other amounts besides the `baseAmount` are included.\n" properties: baseAmount: allOf: - description: 'The base transaction value in minor units. For example `$12.34` should be encoded as `1234`. ' - $ref: '#/components/schemas/posAmountValue' components-schemas-amountValue: type: integer format: int64 minimum: 0 maximum: 999999999999 description: 'The amount in minor units. For example `$12.34` should be encoded as `1234`. Note that not all currencies have 2 minor units. Some have three or zero. ' example: 2599 MitFundingThreeDsAuthenticationResultResponse: type: object readOnly: true description: Object containing the information of a 3DS transaction. properties: directoryServerTransId: type: string description: Transaction ID retrieved from the Directory Server example: 5340af8a-5505-4bf6-abcd-123412341234 Charge: oneOf: - $ref: '#/components/schemas/GenericCharge' - $ref: '#/components/schemas/AtmCharge' - $ref: '#/components/schemas/BepCharge' - $ref: '#/components/schemas/FundingCharge' - $ref: '#/components/schemas/PayoutCharge' - $ref: '#/components/schemas/PosCharge' - $ref: '#/components/schemas/MitChargeFromInitialCharge' - $ref: '#/components/schemas/MitCharge' - $ref: '#/components/schemas/MitFundingCharge' ScaMit: type: object required: - compliance - complianceReason - method properties: method: type: string enum: - none compliance: type: string enum: - mit complianceReason: type: string enum: - installment - ucof isoFieldRetrievalReferenceNumber: type: string description: Contents of field 37 example: '131608123456' threeDsComplianceReason: description: 'Indicates the reason for the SCA compliance. ' type: string enum: - mandated - none - ucof - recurring - installment - incremental - delayed-charges - no-show - reauthorization - resubmission - whitelist - auto - mit - tra - low-value - delegation - scp FraudioResult: type: object required: - score - recommendation - requestId - transactionId description: 'The result of the fraudio risk assessment. ' properties: score: type: number description: 'The score of the fraudio risk assessment. ' recommendation: type: string description: 'The recommendation of the fraudio risk assessment. ' enum: - green - amber - red requestId: type: string description: 'The request id of the fraudio risk assessment. ' transactionId: type: string description: 'The transaction id of the fraudio risk assessment. ' schemas-version: type: integer description: The version of this object format: int64 example: 1 readOnly: true components-schemas-lastModified: type: string description: The date and time this object was last modified format: iso-8601-date-time readOnly: true ChargeAuthenticationBEP: type: object required: - sca - cvc - avs description: 'Object container for authentication. If present, contains Strong Customer Authentication (SCA) information, but also indicates whether CVC and AVS was used. ' properties: sca: $ref: '#/components/schemas/ScaBEP' cvc: $ref: '#/components/schemas/cvcResultBEP' avs: $ref: '#/components/schemas/avsResultBEP' MitCharge: type: object required: - key - merchantAcceptorRef - card - amount - type - status - authentication - localTransactionDateTime - authorizationIsoFields - created - version description: The created charge. additionalProperties: false properties: key: $ref: '#/components/schemas/chargeKey' merchantAcceptorRef: $ref: '#/components/schemas/components-schemas-AcceptorRef' card: $ref: '#/components/schemas/OutputCard' amount: $ref: '#/components/schemas/components-schemas-Amount' type: $ref: '#/components/schemas/MitResponseChargeType' status: $ref: '#/components/schemas/Status' authentication: $ref: '#/components/schemas/ChargeAuthenticationMit' localTransactionDateTime: $ref: '#/components/schemas/localTransactionDateTime' authorizationIsoFields: $ref: '#/components/schemas/authorizationIsoFields' transactionType: $ref: '#/components/schemas/TransactionType' transactionReference: $ref: '#/components/schemas/transactionReference' clearingMode: $ref: '#/components/schemas/clearingMode' clearAfter: $ref: '#/components/schemas/clearAfter' dynamicDescriptor: $ref: '#/components/schemas/schemas-DynamicDescriptor' lastModified: $ref: '#/components/schemas/components-schemas-lastModified' created: $ref: '#/components/schemas/openapi_components-schemas-created' version: $ref: '#/components/schemas/schemas-version' FundingReceiver: type: object description: Required when `type.intent` is `funding`. Details of the recipient of the funds. required: - firstName - lastName - accountNumber - accountNumberType - address properties: firstName: allOf: - description: Recipient's first name. - $ref: '#/components/schemas/schemas-NameOfPeopleAndPlaces' middleName: allOf: - description: Recipient's middle name. - $ref: '#/components/schemas/schemas-NameOfPeopleAndPlaces' lastName: allOf: - description: Recipient's last name. - $ref: '#/components/schemas/schemas-NameOfPeopleAndPlaces' accountNumber: allOf: - description: The masked account number of the recipient. - $ref: '#/components/schemas/MaskedAccountNumber' accountNumberType: $ref: '#/components/schemas/AccountNumberType' address: allOf: - description: The address of the recipient. - $ref: '#/components/schemas/components-schemas-Address' errorTitle: type: string description: 'A short, human-readable summary of the problem type. It does not change from occurrence to occurrence of the error. ' sequencePos: description: 'This property indicates that the cardholder has entered Online PIN, when required by the issuer for a Mastercard Single Tap transaction. ' type: string enum: - subsequent AuthorizationStatusWithoutPartialApproval: type: string description: Authorization status of the charge. enum: - none - approved - declined - reversed example: approved AtmTerminalCapability: type: string description: ATM terminal capabilities subset enum: - contactChip - contactlessChip - contactMagStripe - contactlessMagStripe openapi_components-schemas-line1: type: string pattern: ^[\w -,\.\-\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]+$ minLength: 1 maxLength: 120 description: 'Address line 1 ' example: Langtown Road schemas-CountryCode: type: object required: - alpha3 - alpha2 - numeric properties: alpha3: $ref: '#/components/schemas/schemas-countryCodeAlpha3' alpha2: $ref: '#/components/schemas/schemas-countryCodeAlpha2' numeric: $ref: '#/components/schemas/schemas-countryCodeNumeric' clearAfter: type: string description: 'If provided, clearing will not occur before this point in time. If no timezone is included, it is assumed to be UTC. The value may be at most 6 months in the future from when the charge was created. ' format: iso-8601-date-time FundingSender: type: object description: Details of the sender of the funds. required: - firstName - lastName - accountNumber - accountNumberType - address properties: firstName: allOf: - description: Sender's first name. - $ref: '#/components/schemas/schemas-NameOfPeopleAndPlaces' middleName: allOf: - description: Sender's middle name. - $ref: '#/components/schemas/schemas-NameOfPeopleAndPlaces' lastName: allOf: - description: Sender's last name. - $ref: '#/components/schemas/schemas-NameOfPeopleAndPlaces' accountNumber: allOf: - description: The masked account number of the sender. - $ref: '#/components/schemas/MaskedAccountNumber' accountNumberType: $ref: '#/components/schemas/AccountNumberType' address: allOf: - description: The address of the sender. - $ref: '#/components/schemas/components-schemas-Address' components-schemas-CountryCodeNumeric: type: object required: - numeric additionalProperties: false properties: numeric: $ref: '#/components/schemas/schemas-countryCodeNumeric' ResponsePosAmount: type: object required: - value - currency additionalProperties: false description: 'The amount encoded as an object with a `value` in minor units and a `currency` code. An optional `breakdown` can be provided to indicate specific sub-amounts. ' properties: value: allOf: - description: 'The full transaction amount in minor units. For example `$12.34` should be encoded as `1234`. If a `breakdown` is provided, it must exactly add up to this `value`. ' - $ref: '#/components/schemas/posAmountValue' currency: $ref: '#/components/schemas/common_currencyCode' breakdown: $ref: '#/components/schemas/ResponseAmountBreakdown' isoFieldSystemTraceAuditNumber: type: string description: Contents of field 11 example: '123456' discoverSpecificFields: type: object description: Discover specific ISO8583 raw values required: - network properties: network: type: string description: Card network providing these fields enum: - discover avsResponseCode: type: string description: Contents field 44, usage 2, position 1. cidResultCode: type: string description: Contents field 44, usage 2, position 2. networkReferenceId: type: string description: Contents field 48, position 11-25. intentPos: description: 'The intention of the cardholder ' type: string enum: - purchase - reservation - refund ChargeClearingStatus: type: string description: Clearing status of the charge enum: - none - manual - pending - completed - cancelled - abandoned example: pending isoFieldEciMastercard: type: string description: Contents of field 48, subelement 42, subfield 1, also known as "UCAF Collection Indicator". example: '2' TerminalCapability: type: string enum: - contactChip - contactlessChip - contactMagStripe - contactlessMagStripe - offlineEncipheredPin - offlinePlaintextPin - onlinePin - signature - keyEntry - noCvm - oneTap ChargeAuthenticationMit: type: object required: - sca - cvc - avs description: 'Object container for authentication. If present, contains Strong Customer Authentication (SCA) information, but also indicates whether CVC and AVS was used. ' properties: sca: $ref: '#/components/schemas/sca' cvc: description: The result of cvc verification enum: - none avs: $ref: '#/components/schemas/avsResult' PayoutChargeType: type: object description: 'Describes the kind of charge the merchant wants to submit. ' required: - intent - cardEntry - order - payoutType properties: intent: description: 'The intention of the cardholder. ' type: string enum: - payout cardEntry: $ref: '#/components/schemas/PayoutCardEntry' order: $ref: '#/components/schemas/PayoutOrder' payoutType: description: '- `account-to-account`: Payout transaction for moving money from one account to another account, both of which are owned by the sender. Currently only supported for **Visa** EXPERIMENTAL and **Mastercard**. - `fast-refund`: Transaction that returns funds to the same card used in the original purchase. MASTERCARD EXPERIMENTAL - `general-funds-disbursement`: Generic funds disbursement transaction used to push funds from a business to an individual cardholder for various purposes. Currently only supported for **Visa** and **Mastercard**. - `liquid-assets`: Payout of liquid or cryptocurrency asset proceeds to a card account, e.g., from a sale or cash out. Currently only supported for **Visa**. - `merchant-disbursement`: Merchant payments for purchase transaction processing where the settlement payment is sent directly to a card account. Currently only supported for **Visa** and **Mastercard**. - `online-gambling`: Payouts of online casino winnings. Currently only supported for **Visa** and **Mastercard**. - `person-to-person`: Payout transaction moving funds from the sender''s account to the receiver''s account. Currently only supported for **Mastercard**. - `wallet-transfer`: Payout transaction for adding funds to a digital wallet, the direct acquisition of cryptocurrency, or the acquisition of liquid assets (for example, stocks, shares, foreign currency). Currently only supported for **Visa**. ' type: string enum: - account-to-account - fast-refund - general-funds-disbursement - liquid-assets - merchant-disbursement - online-gambling - person-to-person - wallet-transfer BepCharge: type: object required: - key - created - status - amount - type - merchantAcceptorRef - fraudLiability - authorizationIsoFields - authentication - version - card - localTransactionDateTime description: 'A BEP charge ' properties: key: $ref: '#/components/schemas/chargeKey' merchantAcceptorRef: $ref: '#/components/schemas/components-schemas-AcceptorRef' card: $ref: '#/components/schemas/OutputCard' amount: $ref: '#/components/schemas/components-schemas-Amount' type: $ref: '#/components/schemas/BepChargeType' status: $ref: '#/components/schemas/StatusBep' authentication: $ref: '#/components/schemas/ChargeAuthenticationBEP' localTransactionDateTime: $ref: '#/components/schemas/localTransactionDateTime' transactionReference: $ref: '#/components/schemas/transactionReference' fraudLiability: $ref: '#/components/schemas/fraudLiability' clearingMode: type: string enum: - auto authorizationIsoFields: $ref: '#/components/schemas/authorizationIsoFieldsBancontact' billingAddress: $ref: '#/components/schemas/components-schemas-Address' created: $ref: '#/components/schemas/openapi_components-schemas-created' lastModified: $ref: '#/components/schemas/components-schemas-lastModified' version: $ref: '#/components/schemas/schemas-version' PayoutReceiver: type: object description: Details of the recipient of the payout. properties: firstName: allOf: - description: Recipient's first name. - $ref: '#/components/schemas/schemas-NameOfPeopleAndPlaces' middleName: allOf: - description: Recipient's middle name. - $ref: '#/components/schemas/schemas-NameOfPeopleAndPlaces' lastName: allOf: - description: Recipient's last name. - $ref: '#/components/schemas/schemas-NameOfPeopleAndPlaces' accountNumber: allOf: - description: The masked account number of the recipient. - $ref: '#/components/schemas/MaskedAccountNumber' accountNumberType: $ref: '#/components/schemas/payout-charge_AccountNumberType' address: allOf: - description: The address of the recipient. - $ref: '#/components/schemas/schemas-AddressInput' identification: allOf: - description: Identification used to verify the receiver. - $ref: '#/components/schemas/Identification' sequence: type: string title: Sequence description: 'Setting this to `initial` flags the charge as the initial charge in a sequence of payments. ' enum: - initial MitChargeTypeFunding: type: object description: Describes the kind of charge the merchant wants to submit. required: - intent - cardEntry - order - sequence - fundingType properties: intent: description: 'The intention of the cardholder ' type: string enum: - funding cardEntry: type: string enum: - card-on-file - token-on-file order: type: string enum: - recurring - ucof - standing-order sequence: type: string enum: - subsequent fundingType: type: string enum: - account-to-account - general-funds-disbursement - liquid-assets - wallet-transfer - person-to-person - me-to-me - me-to-me-debit-prepaid MitFundingCharge: type: object required: - merchantAcceptorRef - card - key - amount - localTransactionDateTime - type - sender - receiver - status - fraudLiability - created - version - authentication - authorizationIsoFields additionalProperties: false description: 'A MIT funding charge ' properties: key: $ref: '#/components/schemas/chargeKey' merchantAcceptorRef: $ref: '#/components/schemas/components-schemas-AcceptorRef' card: $ref: '#/components/schemas/OutputCard' tokenDetails: $ref: '#/components/schemas/StoredTokenDetails' amount: $ref: '#/components/schemas/components-schemas-Amount' type: $ref: '#/components/schemas/MitChargeTypeFunding' localTransactionDateTime: $ref: '#/components/schemas/localTransactionDateTime' transactionReference: $ref: '#/components/schemas/transactionReference' receiver: $ref: '#/components/schemas/FundingReceiver' sender: $ref: '#/components/schemas/FundingSender' riskCheckResult: $ref: '#/components/schemas/RiskCheckResult' fraudLiability: $ref: '#/components/schemas/fraudLiability' status: $ref: '#/components/schemas/Status' authentication: $ref: '#/components/schemas/MitFundingChargeAuthentication' clearingMode: type: string enum: - none description: The clearing mode of the charge. For funding charges it is always `none`. authorizationIsoFields: $ref: '#/components/schemas/authorizationIsoFields' purposeOfPayment: $ref: '#/components/schemas/purposeOfPayment' created: $ref: '#/components/schemas/openapi_components-schemas-created' lastModified: $ref: '#/components/schemas/components-schemas-lastModified' version: $ref: '#/components/schemas/schemas-version' MitAdditionalProperties: type: object additionalProperties: false properties: recurringExpiry: $ref: '#/components/schemas/schemas-recurringExpiry' recurringFrequency: $ref: '#/components/schemas/schemas-recurringFrequency' initialChargeKey: $ref: '#/components/schemas/initialChargeKey' payout-charge_AccountNumberType: description: The type of the `accountNumber`. type: string enum: - card-account - iban-bank-account - bic-bank-account - rtn-bank-account - email - phone-number - wallet-id - social-network-id - other avsResultBEP: enum: - none description: The result of the AVS verification riskProvider: type: string description: 'Provider for the risk check. ' enum: - fraudio ChargeAuthentication: type: object required: - sca - cvc - avs description: 'Object container for authentication. If present, contains Strong Customer Authentication (SCA) information, but also indicates whether CVC and AVS was used. ' properties: sca: $ref: '#/components/schemas/sca' cvc: $ref: '#/components/schemas/cvcResult' avs: $ref: '#/components/schemas/avsResult' orderPos: description: 'The method used to place the order. ' type: string enum: - counter ChargesPage: allOf: - $ref: '#/components/schemas/PageWithMoreItems' - type: object required: - charges properties: charges: type: array items: $ref: '#/components/schemas/Charge' chargeKey: description: Uniquely identifies a charge. type: string pattern: ^chg-[a-zA-Z0-9]+$ minLength: 5 maxLength: 120 example: chg-1e1dAHhgstYTUhlphPzZ ForbiddenErrorDetails: type: object required: - type - title - status - detail - instance properties: type: allOf: - $ref: '#/components/schemas/errorType' - enum: - /silverflow/problems/forbidden title: allOf: - $ref: '#/components/schemas/errorTitle' - enum: - Forbidden status: allOf: - $ref: '#/components/schemas/errorStatus' - enum: - 403 detail: $ref: '#/components/schemas/errorDetail' instance: $ref: '#/components/schemas/errorInstance' MitResponseChargeType: type: object description: 'Describes the kind of charge the merchant wants to submit. ' required: - intent - cardEntry - order properties: intent: $ref: '#/components/schemas/MitChargeIntent' cardEntry: $ref: '#/components/schemas/MitCardEntry' order: $ref: '#/components/schemas/MitChargeOrder' sequence: allOf: - description: 'This endpoint only allows subsequent transaction of an initial charge. The property is kept for backwards compatibility and will default to `subsequent`. ' - $ref: '#/components/schemas/MitFromInitialChargeSequence' dinersSpecificFields: type: object description: Diners specific ISO8583 raw values required: - network properties: network: type: string description: Card network providing these fields enum: - diners cvvIndicator: type: string description: Contents field 44, subfield 2 networkReferenceId: type: string description: Contents field 123 ChargeAuthorizationStatus: type: string description: Authorization status of the charge enum: - none - approved - declined - reversed - approved-partial example: approved OutputCard: type: object required: - maskedNumber additionalProperties: false description: 'Card data ' properties: maskedNumber: type: string description: 'The card number used to create this charge, masked according to PCI standards. For card numbers with 16 or more digits, the first 8 and the last 4 digits are visible. For card numbers with 13-15 digits, the first 6 and the last 4 digits are visible. For cards numbers with less than 13 digits, the first 6 and last 2 digits are visible. ' processorTokenKey: $ref: '#/components/schemas/schemas-processorTokenKey' amexSpecificFields: type: object required: - acquirerReferenceData description: American Express-specific ISO8583 raw values properties: acquirerReferenceData: type: string description: Contents of field 31. cvcResult: type: string description: Contents of field 44, first byte. example: Y avsResult: type: string description: Contents of field 44, second byte. example: Y PayoutSender: type: object description: The details of the sender of the payout. properties: firstName: allOf: - description: Sender's first name. - $ref: '#/components/schemas/schemas-NameOfPeopleAndPlaces' middleName: allOf: - description: Sender's middle name. - $ref: '#/components/schemas/schemas-NameOfPeopleAndPlaces' lastName: allOf: - description: Sender's last name. - $ref: '#/components/schemas/schemas-NameOfPeopleAndPlaces' accountNumber: allOf: - description: The masked account number of the sender. - $ref: '#/components/schemas/MaskedAccountNumber' accountNumberType: $ref: '#/components/schemas/payout-charge_AccountNumberType' address: allOf: - description: Address of the sender. - $ref: '#/components/schemas/schemas-AddressInput' identification: allOf: - description: Identification used to verify the sender. - $ref: '#/components/schemas/Identification' MitFundingThreeDsAuthentication: type: object required: - compliance - complianceReason - method - result description: 'Object container for strong customer authentication. ' properties: method: $ref: '#/components/schemas/method' compliance: type: string enum: - mandated - mit - exemption complianceReason: $ref: '#/components/schemas/threeDsComplianceReason' result: $ref: '#/components/schemas/MitFundingThreeDsAuthenticationResultResponse' authorizationIsoFieldsMastercard: allOf: - $ref: '#/components/schemas/commonIsoFields' - type: object required: - networkCode - systemTraceAuditNumber - retrievalReferenceNumber - eci - networkSpecificFields properties: authorizationCode: $ref: '#/components/schemas/isoFieldAuthorizationCode' networkCode: $ref: '#/components/schemas/isoFieldNetworkCode' systemTraceAuditNumber: $ref: '#/components/schemas/isoFieldSystemTraceAuditNumber' retrievalReferenceNumber: $ref: '#/components/schemas/isoFieldRetrievalReferenceNumber' eci: $ref: '#/components/schemas/isoFieldEciMastercard' networkSpecificFields: $ref: '#/components/schemas/mastercardSpecificFields' MitChargeIntent: description: 'The intention of the cardholder. To perform an `account-status` for AMEX, `avs` has to be set to `true`. ' type: string enum: - purchase - reservation - account-status BillingAddress: type: object required: - postalCode additionalProperties: false description: 'The billing address of the cardholder ' properties: countryCode: $ref: '#/components/schemas/schemas-CountryCode' stateOrProvince: $ref: '#/components/schemas/openapi_components-schemas-stateOrProvince' city: $ref: '#/components/schemas/openapi_components-schemas-city' line1: $ref: '#/components/schemas/openapi_components-schemas-line1' line2: $ref: '#/components/schemas/openapi_components-schemas-line2' postalCode: $ref: '#/components/schemas/openapi_components-schemas-postalCode' AccountNumberType: description: The type of the `accountNumber`. type: string enum: - card-account - iban-bank-account - bic-bank-account - rtn-bank-account - email - phone-number - wallet-id - social-network-id StatusBep: type: object required: - authentication - authorization - clearing description: "The status property provides a high-level representation of the lifecycle of a charge. \nFor a complete history, the actions should be used.\n" properties: authentication: type: string description: Strong Customer Authentication (SCA) status of the charge enum: - authenticated authorization: type: string description: Authorization status of the charge enum: - approved - declined clearing: $ref: '#/components/schemas/ClearingStatus' cardEntryPos: description: 'The method used to capture the card details. ' type: string enum: - terminal example: terminal schemas-EntityNotFoundErrorDetails: type: object required: - type - title - status - detail - instance properties: type: allOf: - $ref: '#/components/schemas/errorType' - enum: - /silverflow/problems/entity-not-found title: allOf: - $ref: '#/components/schemas/errorTitle' - enum: - Not Found status: allOf: - $ref: '#/components/schemas/errorStatus' - enum: - 404 detail: $ref: '#/components/schemas/errorDetail' instance: $ref: '#/components/schemas/errorInstance' isoFieldEciAmex: type: string description: E-commerce Indicator FundingType: type: string description: "Describes the type of funding charge.\n - `account-to-account`: Transfer funds to a specific type of account. This can be specified in the `receiver`.\n - `general-funds-disbursement`: Funding transaction used to enable a payout disbursement for various use cases.\n - `liquid-assets`: Funding type used for direct acquisition of liquid and cryptocurrency assets or to prefund a wallet primarily used for such assets (e.g., stocks, shares, foreign currency exchange, or cryptocurrency). Currently only supported for **Visa.**\n - `wallet-transfer`: Transfer funds to a wallet. Currently only supported for **Visa.**\n - `person-to-person`: Transaction that uses funds from the sender’s account to fund a subsequent and linked transaction to the receiver's account. Currently only supported for **Mastercard.**\n - `me-to-me`: Transaction that debits a card account of a consumer or organization for the purpose of transferring funds to the same consumer or organization. Currently only supported for **Mastercard.** EXPERIMENTAL\n - `me-to-me-debit-prepaid`: Transaction that debits a card account of a consumer or organization for the purpose of transferring funds to a Debit or Prepaid account of the same consumer or organization. Currently only supported for **Mastercard.** EXPERIMENTAL\n" enum: - account-to-account - general-funds-disbursement - liquid-assets - wallet-transfer - person-to-person - me-to-me - me-to-me-debit-prepaid schemas-AddressInput: type: object required: - countryCode - city - line1 - postalCode additionalProperties: false description: 'A physical postal address. ' properties: countryCode: oneOf: - $ref: '#/components/schemas/components-schemas-CountryCodeAlpha3' - $ref: '#/components/schemas/components-schemas-CountryCodeAlpha2' - $ref: '#/components/schemas/components-schemas-CountryCodeNumeric' stateOrProvince: $ref: '#/components/schemas/openapi_components-schemas-stateOrProvince' city: $ref: '#/components/schemas/openapi_components-schemas-city' line1: $ref: '#/components/schemas/openapi_components-schemas-line1' line2: $ref: '#/components/schemas/openapi_components-schemas-line2' postalCode: $ref: '#/components/schemas/openapi_components-schemas-postalCode' AtmCharge: type: object description: 'An ATM charge (withdrawal transaction) ' additionalProperties: false required: - key - merchantAcceptorRef - card - type - amount - status - accountSource - terminal - localTransactionDateTime - authorizationIsoFields - clearingMode - created - version properties: key: $ref: '#/components/schemas/chargeKey' type: description: 'Describes the kind of ATM charge. ' type: object additionalProperties: false required: - intent - terminalEntryMode properties: intent: $ref: '#/components/schemas/intentAtm' terminalEntryMode: $ref: '#/components/schemas/atmTerminalEntryMode' accountSource: description: 'Indicates the type of account from which the funds should be withdrawn. ' type: string enum: - unspecified - savings - checking - credit amount: type: object additionalProperties: false description: The amount for ATM transactions required: - value - currency properties: value: type: integer format: int64 description: The amount in minor units. minimum: 1 maximum: 999999999999 example: 10000 currency: $ref: '#/components/schemas/common_currencyCode' authorizationIsoFields: type: object required: - responseCode - responseCodeDescription - networkCode - systemTraceAuditNumber - retrievalReferenceNumber - networkSpecificFields description: Object containing the raw values from the ISO8583 response message received from the network for ATM transactions. properties: responseCode: $ref: '#/components/schemas/isoFieldResponseCode' responseCodeDescription: $ref: '#/components/schemas/isoFieldResponseCodeDescription' authorizationCode: $ref: '#/components/schemas/isoFieldAuthorizationCode' networkCode: $ref: '#/components/schemas/isoFieldNetworkCode' systemTraceAuditNumber: $ref: '#/components/schemas/isoFieldSystemTraceAuditNumber' retrievalReferenceNumber: $ref: '#/components/schemas/isoFieldRetrievalReferenceNumber' networkSpecificFields: oneOf: - $ref: '#/components/schemas/mastercardSpecificFields' - $ref: '#/components/schemas/visaSpecificFields' card: type: object required: - maskedNumber additionalProperties: false description: 'Card data for ATM transactions. ATM transactions do not support processor tokenization. ' properties: maskedNumber: type: string description: 'The card number used to create this charge, masked according to PCI standards. For card numbers with 16 or more digits, the first 8 and the last 4 digits are visible. For card numbers with 13-15 digits, the first 6 and the last 4 digits are visible. For cards numbers with less than 13 digits, the first 6 and last 2 digits are visible. ' clearingMode: $ref: '#/components/schemas/clearingMode' localTransactionDateTime: $ref: '#/components/schemas/localTransactionDateTime' merchantAcceptorRef: $ref: '#/components/schemas/components-schemas-AcceptorRef' status: type: object required: - authorization - clearing description: 'The status property provides a high-level representation of the lifecycle of an ATM charge. ATM charges do not support authentication (no 3DS). ' properties: authorization: type: string description: Authorization status of the ATM charge. enum: - approved - declined - reversed example: approved clearing: $ref: '#/components/schemas/ClearingStatus' terminal: type: object description: Details about the ATM terminal. required: - id - capabilities additionalProperties: false properties: id: type: string description: ATM terminal's ID pattern: ^[a-zA-Z0-9]+$ minLength: 1 maxLength: 8 example: ATM001 capabilities: type: array description: 'The capabilities of the ATM terminal. This can be one or multiple. ' minItems: 1 items: $ref: '#/components/schemas/AtmTerminalCapability' example: - contactChip - contactlessChip - contactMagStripe - contactlessMagStripe clearAfter: $ref: '#/components/schemas/clearAfter' dcc: description: 'Dynamic Currency Conversion (DCC) allows cardholders to see the transaction amount in their home currency at the ATM. ' oneOf: - type: object description: DCC is not enabled for this transaction required: - enabled additionalProperties: false properties: enabled: type: boolean enum: - false description: Specifies if DCC is enabled for this transaction - type: object description: DCC is enabled for this transaction required: - enabled - preConversionAmount additionalProperties: false properties: enabled: type: boolean enum: - true description: Specifies if DCC is enabled for this transaction preConversionAmount: type: object additionalProperties: false description: The amount before currency conversion, in the cardholder's home currency required: - value - currency properties: value: type: integer format: int64 description: The amount in minor units. minimum: 1 maximum: 999999999999 example: 10000 currency: $ref: '#/components/schemas/common_currencyCode' transactionReference: $ref: '#/components/schemas/transactionReference' created: $ref: '#/components/schemas/openapi_components-schemas-created' lastModified: $ref: '#/components/schemas/components-schemas-lastModified' version: $ref: '#/components/schemas/schemas-version' FundingCardEntry: type: string description: 'The method used to capture the card details. ' enum: - e-commerce - token - token-on-file - card-on-file ThreeDsAuthentication: type: object required: - compliance - complianceReason - method - result description: 'Object container for strong customer authentication. ' properties: method: $ref: '#/components/schemas/method' compliance: type: string enum: - mandated - mit - exemption complianceReason: $ref: '#/components/schemas/threeDsComplianceReason' result: $ref: '#/components/schemas/ThreeDsAuthenticationResultResponse' isoFieldEciDiners: type: string description: E-commerce Indicator components-schemas-Amount: type: object required: - value - currency additionalProperties: false description: 'The amount encoded as an object with a `value` in minor units and a `currency` code. ' properties: value: $ref: '#/components/schemas/components-schemas-amountValue' currency: $ref: '#/components/schemas/openapi_components-schemas-currencyCode' authorizationIsoFieldsBancontact: type: object required: - responseCode - responseCodeDescription - networkCode - systemTraceAuditNumber - retrievalReferenceNumber - eci - networkSpecificFields description: Object containing the raw values from the ISO8583 response message received from the network. properties: responseCode: $ref: '#/components/schemas/isoFieldResponseCode' responseCodeDescription: $ref: '#/components/schemas/isoFieldResponseCodeDescription' authorizationCode: $ref: '#/components/schemas/isoFieldAuthorizationCode' networkCode: type: string enum: - none systemTraceAuditNumber: $ref: '#/components/schemas/isoFieldSystemTraceAuditNumber' retrievalReferenceNumber: $ref: '#/components/schemas/isoFieldRetrievalReferenceNumber' eci: type: string enum: - none networkSpecificFields: $ref: '#/components/schemas/bancontactSpecificFields' openapi_components-schemas-currencyCode: type: string enum: - AED - AFN - ALL - AMD - ANG - AOA - ARS - AUD - AWG - AZN - BAM - BBD - BDT - BGN - BHD - BIF - BMD - BND - BOB - BRL - BSD - BTN - BWP - BYN - BZD - CAD - CDF - CHF - CLP - CNY - COP - CRC - CUC - CUP - CVE - CZK - DJF - DKK - DOP - DZD - EGP - ERN - ETB - EUR - FJD - FKP - GBP - GEL - GHS - GIP - GMD - GNF - GTQ - GYD - HKD - HNL - HTG - HUF - IDR - ILS - INR - IQD - IRR - ISK - JMD - JOD - JPY - KES - KGS - KHR - KMF - KPW - KRW - KWD - KYD - KZT - LAK - LBP - LKR - LRD - LSL - LYD - MAD - MDL - MGA - MKD - MMK - MNT - MOP - MRU - MUR - MVR - MWK - MXN - MYR - MZN - NAD - NGN - NIO - NOK - NPR - NZD - OMR - PAB - PEN - PGK - PHP - PKR - PLN - PYG - QAR - RON - RSD - RUB - RWF - SAR - SBD - SCR - SDG - SEK - SGD - SHP - SLL - SOS - SRD - SSP - STN - SVC - SYP - SZL - THB - TJS - TMT - TND - TOP - TRY - TTD - TWD - TZS - UAH - UGX - USD - UYU - UZS - VES - VND - VUV - WST - XAF - XCD - XCG - XOF - XPF - YER - ZAR - ZMW - ZWL description: An alphabetic ISO-4217 currency code. externalDocs: description: Find more info here. url: https://www.iso.org/iso-4217-currency-codes.html example: EUR ScaBEP: type: object required: - compliance - complianceReason - method - result description: 'Object container for strong customer authentication. ' properties: method: $ref: '#/components/schemas/methodBEP' compliance: $ref: '#/components/schemas/complianceBEP' complianceReason: $ref: '#/components/schemas/complianceReasonBEP' result: $ref: '#/components/schemas/BEPAuthenticationResult' BepChargeType: description: 'Describes the kind of charge the merchant wants to submit. ' type: object required: - intent - cardEntry - order properties: intent: type: string description: 'The intention of the cardholder ' enum: - purchase cardEntry: type: string description: 'The method used to capture the card details. ' enum: - e-commerce order: type: string description: 'The method used to place the order. ' enum: - checkout sequence: type: string description: 'Setting this to `initial` flags the charge as the initial charge in a sequence of payments. **From November 22, 2026 this field will be removed since it currently does not have any effect on the charge creation.** ' enum: - initial deprecated: true bancontactSpecificFields: type: object description: Bancontact specific ISO8583 raw values properties: iban: type: string description: The International Bank Account Number (IBAN) returned from the bancontact authorization response. isoFieldEciVisa: type: string description: E-commerce Indicator example: '5' ForeignRetailerEnabled: type: object description: Transaction involves a foreign retailer required: - indicator additionalProperties: false properties: indicator: type: boolean enum: - true description: Specifies if end seller in the transaction is a foreign retailer amount: type: integer format: int64 minimum: 1 maximum: 999999999999 description: Specifies the exact amount corresponding to the foreign retailer. Cannot be more than the total charge amount (amount.value). example: 1000 UnauthorizedErrorDetails: type: object required: - type - title - status - detail - instance properties: type: allOf: - $ref: '#/components/schemas/errorType' - enum: - /silverflow/problems/authentication-required title: allOf: - $ref: '#/components/schemas/errorTitle' - enum: - Authentication Required status: allOf: - $ref: '#/components/schemas/errorStatus' - enum: - 401 detail: $ref: '#/components/schemas/errorDetail' instance: $ref: '#/components/schemas/errorInstance' MitChargeOrder: type: string description: The method used to place the order. enum: - recurring - ucof - installment - standing-order components-schemas-acceptorKey: description: Uniquely identifies a merchant acceptor. type: string pattern: ^mac-[a-zA-Z0-9]+$ minLength: 5 maxLength: 120 example: mac-1eOdAHhgstYTUhlphPFf BEPAuthenticationResult: type: object required: - trm readOnly: true description: 'Object containing the information of a BEP transaction. ' properties: trm: description: The method of initiating the BEP authentication. Stands for Transaction Routing Means. type: string enum: - '50' - '51' example: '50' schemas-recurringExpiry: type: string format: date description: 'Date at which the recurring authorization expires. Required for recurring charges. Format: YYYY-MM-DD ' example: '2021-06-12' ClearingStatus: type: string description: Clearing status of the charge enum: - none - manual - pending - completed - cancelled - abandoned example: pending ThreeDsAuthenticationResultResponse: type: object readOnly: true description: Object containing the information of a 3DS transaction. properties: version: description: 'The 3DS protocol version which has been used to perform 3DS. This information is only available when it has been provided in the request. ' type: string enum: - 2.2.0 directoryServerTransId: type: string description: Transaction ID retrieved from the Directory Server example: 5340af8a-5505-4bf6-abcd-123412341234 isoFieldEciDiscover: type: string description: E-commerce Indicator FundingChargeType: type: object description: Describes the kind of charge the merchant wants to submit. required: - intent - cardEntry - order - fundingType properties: intent: $ref: '#/components/schemas/FundingIntent' cardEntry: $ref: '#/components/schemas/FundingCardEntry' order: $ref: '#/components/schemas/FundingOrder' fundingType: $ref: '#/components/schemas/FundingType' transactionReference: type: string description: 'Unique ID assigned by the merchant or payment service provider for the transaction. Used to identify the transaction. ' pattern: ^[a-zA-Z0-9()+,\-.:=@;$_!*\/?|]+$ minLength: 1 maxLength: 120 example: Dz3dIzE74EfH1HeTInyE visaSpecificFields: type: object required: - transactionIdentifier description: Visa specific ISO8583 raw values properties: transactionIdentifier: type: string description: Contents of field 62, subfield 2 example: '238210000026090' cvv2ResultCode: type: string description: Contents of field 44, subfield 10 example: M avsResultCode: type: string description: Contents of field 44, subfield 2 example: Y paymentAccountReference: type: string description: Contents of field 56, dataset 1, tag 1 example: 50020EHB2QT3YBD5KU6OFMSN6BHLU aniResults: type: object description: Contents of field 34, dataset 4. Result of Visa Account Name Inquiry (ANI) check. To request ANI set `type.intent` = `account-status` and provide `card.holderName` required: - status properties: status: type: string description: Contents of field 34, dataset 4, tag C0 fullNameMatch: type: string description: Contents of field 34, dataset 4, tag C4 firstNameMatch: type: string description: Contents of field 34, dataset 4, tag CA middleNameMatch: type: string description: Contents of field 34, dataset 4, tag C9 lastNameMatch: type: string description: Contents of field 34, dataset 4, tag C8 vaaiScore: type: string description: Contents of field 104, dataset 5b, tag 85 example: '01' tokenRequestorId: type: string description: Contents of field 123, dataset 68, tag 03. Identifies the Token Requestor Id (TRID) example: '40000000000' PosAuthorizationIsoFields: type: object required: - responseCode - responseCodeDescription - networkCode - systemTraceAuditNumber - retrievalReferenceNumber - eci - networkSpecificFields description: Object containing the raw values from the ISO8583 response message received from the network. properties: responseCode: $ref: '#/components/schemas/isoFieldResponseCode' responseCodeDescription: $ref: '#/components/schemas/isoFieldResponseCodeDescription' authorizationCode: $ref: '#/components/schemas/isoFieldAuthorizationCode' networkCode: $ref: '#/components/schemas/isoFieldNetworkCode' systemTraceAuditNumber: $ref: '#/components/schemas/isoFieldSystemTraceAuditNumber' retrievalReferenceNumber: $ref: '#/components/schemas/isoFieldRetrievalReferenceNumber' eci: type: string enum: - '00' networkSpecificFields: oneOf: - $ref: '#/components/schemas/visaSpecificFields' - $ref: '#/components/schemas/mastercardSpecificFields' result3DS: type: string description: 'Type of 3DS authentication result. ' enum: - full-auth - attempt MaskedAccountNumber: type: string description: The masked account number. pattern: ^[a-zA-Z0-9 !#$%&'()*+,./:;<=>?@^_`{|}~"\-\[\]\\]+$ minLength: 1 maxLength: 50 example: '************0007' authorizationIsoFieldsDiners: allOf: - $ref: '#/components/schemas/commonIsoFields' - type: object required: - networkCode - systemTraceAuditNumber - retrievalReferenceNumber - eci - networkSpecificFields properties: authorizationCode: $ref: '#/components/schemas/isoFieldAuthorizationCode' networkCode: type: string example: not-applicable systemTraceAuditNumber: $ref: '#/components/schemas/isoFieldSystemTraceAuditNumber' retrievalReferenceNumber: $ref: '#/components/schemas/isoFieldRetrievalReferenceNumber' eci: $ref: '#/components/schemas/isoFieldEciDiners' networkSpecificFields: $ref: '#/components/schemas/dinersSpecificFields' schemas-eci: type: string description: Zero-padded e-commerce indicator. minLength: 2 maxLength: 2 pattern: ^\d+$ example: '05' mPOS: allOf: - type: object required: - type properties: type: type: string enum: - mpos - $ref: '#/components/schemas/BaseTerminal' - type: object required: - attended - capabilities properties: attended: type: boolean enum: - true capabilities: type: array description: 'The capabilities of the terminal. This can be one or multiple, and if more than one is specified it means that it is capable of all of those things. ' items: $ref: '#/components/schemas/TerminalCapability' example: - contactChip - contactlessChip - contactMagStripe - oneTap schemas-NameOfPeopleAndPlaces: type: string pattern: ^[\w -,\.\-\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]+$ minLength: 1 maxLength: 120 example: Name InternalServerErrorDetails: type: object required: - type - title - status - detail - instance properties: type: allOf: - $ref: '#/components/schemas/errorType' - enum: - /silverflow/problems/internal-server-error title: allOf: - $ref: '#/components/schemas/errorTitle' - enum: - Internal Server Error status: allOf: - $ref: '#/components/schemas/errorStatus' - enum: - 500 detail: $ref: '#/components/schemas/errorDetail' instance: $ref: '#/components/schemas/errorInstance' cvcResult: description: The result of cvc verification type: string enum: - none - match - no-match - not-processed StoredTokenDetails: description: 'Further details about the token that was used. Required if `type.cardEntry` is `token` or `token-on-file`. ' oneOf: - $ref: '#/components/schemas/StoredTokenDetailsNetwork' - $ref: '#/components/schemas/StoredTokenDetailsDigitalWallet' initialChargeKey: type: string allOf: - $ref: '#/components/schemas/chargeKey' description: 'Key of the initial charge in case of a recurring or installment transaction. ' example: chg-4UHjnjyeijYUH7DewdW openapi_components-schemas-InvalidInputErrorDetails: type: object required: - type - title - status - detail - instance - validationErrors properties: type: allOf: - $ref: '#/components/schemas/errorType' - enum: - /silverflow/problems/invalid-input title: allOf: - $ref: '#/components/schemas/errorTitle' - enum: - Invalid Input status: allOf: - $ref: '#/components/schemas/errorStatus' - enum: - 400 detail: $ref: '#/components/schemas/errorDetail' instance: $ref: '#/components/schemas/errorInstance' validationErrors: type: array items: $ref: '#/components/schemas/ValidationError' description: A list of validation errors. fraudLiability: description: Which party is liable in case of fraud. type: string enum: - acquirer - issuer MitFundingChargeAuthentication: type: object required: - sca - cvc - avs description: 'Object container for authentication. If present, contains Strong Customer Authentication (SCA) information, but also indicates whether CVC and AVS was used. ' properties: sca: $ref: '#/components/schemas/mitFundingSca' cvc: $ref: '#/components/schemas/cvcResult' avs: $ref: '#/components/schemas/avsResult' StoredTokenDetailsDigitalWallet: type: object required: - type properties: type: type: string description: Details about a token from Apple Pay or Google Pay enum: - apple-pay - google-pay eci: allOf: - description: 'Zero-padded e-commerce indicator. Only supported for VISA MASTERCARD AMEX. ' - $ref: '#/components/schemas/schemas-eci' responseCardEntry: description: 'The method used to capture the card details. ' type: string enum: - e-commerce - manual - card-on-file - terminal - token - token-on-file example: e-commerce errorInstance: type: string description: 'A reference that identifies the specific occurrence of the error. The instance is unique for every error. ' components-schemas-AcceptorRef: type: object description: Reference key and status of the acceptor required: - key - version properties: key: $ref: '#/components/schemas/components-schemas-acceptorKey' version: $ref: '#/components/schemas/schemas-version' schemas-countryCodeAlpha3: type: string pattern: ^[A-Z]+$ minLength: 3 maxLength: 3 externalDocs: description: Find more info here. url: https://www.iso.org/iso-3166-country-codes.html example: NLD RiskCheckResult: type: object required: - provider - result - actionTaken description: 'Result of the risk check. The field is always present on a charge if a risk check was requested. ' properties: provider: $ref: '#/components/schemas/riskProvider' fraudioResult: $ref: '#/components/schemas/FraudioResult' actionTaken: type: string description: 'The action taken on the charge after risk assessment. ' enum: - proceeded - aborted result: type: string description: 'The result of the risk check. ' enum: - success - error localTransactionDateTime: type: string format: iso-8601-date-time description: Date and time of the transaction in the local timezone. authorizationIsoFieldsDiscover: allOf: - $ref: '#/components/schemas/commonIsoFields' - type: object required: - networkCode - systemTraceAuditNumber - retrievalReferenceNumber - eci - networkSpecificFields properties: authorizationCode: $ref: '#/components/schemas/isoFieldAuthorizationCode' networkCode: $ref: '#/components/schemas/isoFieldNetworkCode' systemTraceAuditNumber: $ref: '#/components/schemas/isoFieldSystemTraceAuditNumber' retrievalReferenceNumber: $ref: '#/components/schemas/isoFieldRetrievalReferenceNumber' eci: $ref: '#/components/schemas/isoFieldEciDiscover' networkSpecificFields: $ref: '#/components/schemas/discoverSpecificFields' errorStatus: type: integer format: int32 description: 'The HTTP status code generated by the origin server for this occurrence of the problem. ' PayoutOrder: description: 'The method used to place the order. ' type: string enum: - checkout components-schemas-CountryCodeAlpha2: type: object required: - alpha2 additionalProperties: false properties: alpha2: $ref: '#/components/schemas/schemas-countryCodeAlpha2' MitCardEntry: type: string description: 'The method used to capture the card details. ' enum: - card-on-file - token-on-file schemas-processorTokenKey: type: string description: The key to a card tokenized in the [Processor Tokenization](#tag/Processor-Tokenization). pattern: ^ptk-[a-zA-Z0-9]+$ minLength: 5 maxLength: 120 methodBEP: description: 'Indicates the method that was used to comply to SCA. ' type: string enum: - bep common_Amount: type: object required: - value - currency additionalProperties: false description: 'The amount encoded as an object with a `value` in minor units and a `currency` code. ' properties: value: $ref: '#/components/schemas/components-schemas-amountValue' currency: $ref: '#/components/schemas/common_currencyCode' PageWithMoreItems: type: object properties: moreItems: type: boolean offsetToken: $ref: '#/components/schemas/components-schemas-offsetToken' FundingCharge: type: object required: - merchantAcceptorRef - card - key - amount - localTransactionDateTime - type - sender - receiver - status - fraudLiability - created - version - authentication - authorizationIsoFields additionalProperties: false description: 'A funding charge ' properties: key: $ref: '#/components/schemas/chargeKey' merchantAcceptorRef: $ref: '#/components/schemas/components-schemas-AcceptorRef' card: $ref: '#/components/schemas/OutputCard' tokenDetails: $ref: '#/components/schemas/StoredTokenDetails' amount: $ref: '#/components/schemas/components-schemas-Amount' type: $ref: '#/components/schemas/FundingChargeType' localTransactionDateTime: $ref: '#/components/schemas/localTransactionDateTime' transactionReference: $ref: '#/components/schemas/transactionReference' receiver: $ref: '#/components/schemas/FundingReceiver' sender: $ref: '#/components/schemas/FundingSender' riskCheckResult: $ref: '#/components/schemas/RiskCheckResult' fraudLiability: $ref: '#/components/schemas/fraudLiability' status: $ref: '#/components/schemas/Status' authentication: $ref: '#/components/schemas/FundingPayoutChargeAuthentication' clearingMode: type: string enum: - none description: The clearing mode of the charge. For funding charges it is always `none`. authorizationIsoFields: $ref: '#/components/schemas/authorizationIsoFields' purposeOfPayment: $ref: '#/components/schemas/purposeOfPayment' created: $ref: '#/components/schemas/openapi_components-schemas-created' lastModified: $ref: '#/components/schemas/components-schemas-lastModified' version: $ref: '#/components/schemas/schemas-version' refundedChargeKey: description: 'The charge key of the refunded charge. **This field is only available for charges created on the [Refund endpoint](#operation/refund) with `createRefundCharge` set to `true`.** ' type: string pattern: ^chg-[a-zA-Z0-9]+$ minLength: 5 maxLength: 120 example: chg-1e1dAHhgstYTUhlphPzZ TooManyRequestsErrorDetails: type: object required: - type - title - status - detail - instance properties: type: allOf: - $ref: '#/components/schemas/errorType' - enum: - /silverflow/problems/too-many-requests title: allOf: - $ref: '#/components/schemas/errorTitle' - enum: - Too Many Requests status: allOf: - $ref: '#/components/schemas/errorStatus' - enum: - 429 detail: $ref: '#/components/schemas/errorDetail' instance: $ref: '#/components/schemas/errorInstance' FundingPayoutChargeAuthentication: type: object required: - sca - cvc - avs description: 'Object container for authentication. If present, contains Strong Customer Authentication (SCA) information, but also indicates whether CVC and AVS was used. ' properties: sca: $ref: '#/components/schemas/fundingPayoutSca' cvc: $ref: '#/components/schemas/cvcResult' avs: $ref: '#/components/schemas/avsResult' PayoutCardEntry: type: string description: 'The method used to capture the card details. ' enum: - e-commerce errorDetail: type: string description: 'A human readable explanation specific to this occurrence of the problem. ' ResponseAmountBreakdown: allOf: - $ref: '#/components/schemas/BaseAmountBreakdown' - type: object properties: cashback: allOf: - description: 'The cashback amount included in the total transaction `value` in minor units. For example `$12.34` should be encoded as `1234`. ' - $ref: '#/components/schemas/posAmountValue' AuthenticationStatus: type: string description: Strong Customer Authentication (SCA) status of the charge enum: - none - authenticated - non-authenticated example: authenticated MitFromInitialChargeSequence: type: string description: 'This endpoint only allows subsequent transaction of an initial charge which can be created through the `/charges` endpoint. ' enum: - subsequent CardholderBillingAmount: allOf: - $ref: '#/components/schemas/common_Amount' - type: object required: - conversionRate properties: conversionRate: type: object required: - cardholderBillingConversionRate - decimalIndicator properties: cardholderBillingConversionRate: type: number decimalIndicator: type: number Terminal: type: object description: Details about the terminal. oneOf: - $ref: '#/components/schemas/POS' - $ref: '#/components/schemas/mPOS' - $ref: '#/components/schemas/SoftPOS' FundingPayoutThreeDsAuthenticationResultResponse: type: object required: - type readOnly: true description: Object containing the information of a 3DS transaction. properties: type: $ref: '#/components/schemas/result3DS' version: description: 'The 3DS protocol version which has been used to perform 3DS. This information is only available when it has been provided in the request. ' type: string enum: - 2.2.0 directoryServerTransId: type: string description: Transaction ID retrieved from the Directory Server example: 5340af8a-5505-4bf6-abcd-123412341234 commonIsoFields: type: object required: - responseCode - responseCodeDescription properties: responseCode: $ref: '#/components/schemas/isoFieldResponseCode' responseCodeDescription: $ref: '#/components/schemas/isoFieldResponseCodeDescription' schemas-DynamicDescriptor: type: object minProperties: 1 additionalProperties: false description: 'Field supports the merchant customizing the DBA name and city on a per-transaction basis, to allow the cardholder to recognize the business name and city on their card or bank statement. ' properties: merchantName: type: string pattern: ^[a-zA-Z0-9-\.!\*=_ ]+$ description: Recognizable business name that will appear on the customer's card or bank statement. example: Acme Inc. minLength: 1 maxLength: 22 merchantCity: type: string description: City from which the transaction originated example: Amsterdam pattern: ^[a-zA-Z0-9-\.!\*=_ ]+$ minLength: 1 maxLength: 13 Status: type: object required: - authentication - authorization - clearing description: 'The status property provides a high-level representation of the lifecycle of a charge. For a complete history, the actions should be used. ' properties: authentication: $ref: '#/components/schemas/AuthenticationStatus' authorization: $ref: '#/components/schemas/AuthorizationStatus' clearing: $ref: '#/components/schemas/ClearingStatus' common_currencyCode: type: string enum: - AED - AFN - ALL - AMD - AOA - ARS - AUD - AWG - AZN - BAM - BBD - BDT - BHD - BIF - BMD - BND - BOB - BRL - BSD - BTN - BWP - BYN - BZD - CAD - CDF - CHF - CLP - CNY - COP - CRC - CUC - CUP - CVE - CZK - DJF - DKK - DOP - DZD - EGP - ERN - ETB - EUR - FJD - FKP - GBP - GEL - GHS - GIP - GMD - GNF - GTQ - GYD - HKD - HNL - HTG - HUF - IDR - ILS - INR - IQD - IRR - ISK - JMD - JOD - JPY - KES - KGS - KHR - KMF - KPW - KRW - KWD - KYD - KZT - LAK - LBP - LKR - LRD - LSL - LYD - MAD - MDL - MGA - MKD - MMK - MNT - MOP - MRU - MUR - MVR - MWK - MXN - MYR - MZN - NAD - NGN - NIO - NOK - NPR - NZD - OMR - PAB - PEN - PGK - PHP - PKR - PLN - PYG - QAR - RON - RSD - RUB - RWF - SAR - SBD - SCR - SDG - SEK - SGD - SHP - SOS - SRD - SSP - STN - SYP - SZL - THB - TJS - TMT - TND - TOP - TRY - TTD - TWD - TZS - UAH - UGX - USD - UYU - UZS - VES - VND - VUV - WST - XAF - XCD - XCG - XOF - XPF - YER - ZAR - ZMW - ZWL description: An alphabetic ISO-4217 currency code. externalDocs: description: Find more info here. url: https://www.iso.org/iso-4217-currency-codes.html example: EUR schemas-recurringFrequency: type: integer minimum: 1 description: 'Number of days between recurring authorizations. Required for recurring charges. ' errorType: type: string description: 'A relative URI reference, this property can be used to perform automated error handling. ' FundingOrder: type: string enum: - checkout - recurring - ucof - standing-order - one-click isoFieldNetworkCode: type: string description: Contents of field 63, subfield 1 example: '0000' openapi_components-schemas-line2: type: string pattern: ^[\w -,\.\-\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]+$ minLength: 1 maxLength: 120 description: 'Address line 2 ' example: '4200' method: description: 'Indicates the method that was used to comply to SCA. ' type: string enum: - 3ds1 - 3ds2 - device intentAtm: description: 'The intention of the cardholder for ATM transactions ' type: string enum: - withdrawal InvalidToOrFromDateErrorDetails: type: object required: - type - title - status - detail - instance properties: type: allOf: - $ref: '#/components/schemas/errorType' - enum: - /silverflow/problems/invalid-to-or-from-date title: allOf: - $ref: '#/components/schemas/errorTitle' - enum: - Invalid To or From Date status: allOf: - $ref: '#/components/schemas/errorStatus' - enum: - 400 detail: $ref: '#/components/schemas/errorDetail' instance: $ref: '#/components/schemas/errorInstance' authorizationIsoFieldsAmericanExpress: allOf: - $ref: '#/components/schemas/commonIsoFields' - type: object required: - networkCode - systemTraceAuditNumber - retrievalReferenceNumber - eci - networkSpecificFields properties: authorizationCode: $ref: '#/components/schemas/isoFieldAuthorizationCode' networkCode: type: string description: Not applicable for American Express transactions. enum: - not-applicable systemTraceAuditNumber: $ref: '#/components/schemas/isoFieldSystemTraceAuditNumber' retrievalReferenceNumber: $ref: '#/components/schemas/isoFieldRetrievalReferenceNumber' eci: $ref: '#/components/schemas/isoFieldEciAmex' networkSpecificFields: $ref: '#/components/schemas/amexSpecificFields' posAmountValue: type: integer format: int64 minimum: 1 maximum: 999999999999 description: 'An amount in minor units. For example `$12.34` should be encoded as `1234`. ' example: 2599 isoFieldAuthorizationCode: type: string description: Contents of field 38 example: 4A4316 mastercardSpecificFields: type: object required: - banknetReference - traceId description: Mastercard specific ISO8583 raw values properties: banknetReference: type: string description: Contents of field 63, subfield 2 example: ATSGHX traceId: type: string description: 'The trace ID can be used to refer to the original authorization for subsequent transactions (e.g., reversals, MITs). The value is constructed from the contents of field 63, subfield 1, field 63, subfield 2, and field 15. The value intentionally ends with two spaces. ' merchantAdviceCode: type: string description: Contents of field 48, subelement 84 example: '01' cvcResult: type: string description: Contents of field 48, subelement 87 example: M nameValidationResult: type: string description: Contents of field 108, subelement 08, subfield 02. Result of Mastercard name validation check. To request name validation set `type.intent` = `account-status` and provide `card.holderName`. example: A avsResponse: type: string description: Contents of field 48, subelement 83 example: A paymentAccountReference: type: string description: Contents of field 56, subelement 1, subfield 1 example: 50020EHB2QT3YBD5KU6OFMSN6BHLU transactionLinkId: type: string description: Contents of field 105, subelement 1 example: qtQRrYlsSvSecPJDBzrzYA digitalCommerceProgramType: type: string description: Contents of field 48, subelement 48, subfield 2. Identifies the specific digital commerce program used. example: '1' onBehalfServices: type: array description: Contents of field 48, subelement 71. items: type: object required: - onBehalfService - onBehalfResult1 - onBehalfResult2 properties: onBehalfService: type: string description: Contents of field 48, subelement 71, subfield 1. example: '61' onBehalfResult1: type: string description: Contents of field 48, subelement 71, subfield 2. example: V onBehalfResult2: type: string description: Contents of field 48, subelement 71, subfield 3. example: T examples: components-examples-InternalServerErrorExample: value: type: /silverflow/problems/internal-server-error title: Internal Server Error status: 500 detail: The server encountered an unexpected condition. instance: /silverflow/b045229d-f66d-4ef7-9f5d-d48064a2aa39 examples-AuthenticationRequiredExample: value: type: /silverflow/problems/authentication-required title: Authentication Required status: 401 detail: Authentication Required instance: /silverflow/8e445b2e-d745-4b38-a38d-781fc998e442 examples-EntityNotFoundErrorExample: value: type: /silverflow/problems/entity-not-found title: Not Found status: 404 detail: The charge with key 'chg-124gasduIEAFDS2boU1f3' was not found. instance: /silverflow/b0451a9d-f66d-4ef7-9f5d-d48064a2bb3e examples-ForbiddenErrorExample: value: type: /silverflow/problems/forbidden title: Forbidden status: 403 detail: 'Authenticated user ''apk-33GjasQdWl4781OsErvi'' is missing the following permission(s): charges:Create.' instance: /silverflow/b0451a9d-f66d-4ef7-9f5d-d48064a2bb3e components-examples-InvalidInputErrorExample: value: type: /silverflow/problems/invalid-input title: Invalid Input status: 400 detail: The request does not adhere to the defined API schema. instance: /silverflow/b4cc37a0-ab24-46b4-aa8c-cc2d6eddf1b6 validationErrors: - path: /body/card/number message: must have required property 'number' errorCode: required.openapi.validation InvalidToOrFromDateErrorExample: value: type: /silverflow/problems/invalid-to-or-from-date title: Invalid To or From Date status: 400 detail: Cannot list charges by transactionReference with from or to date. instance: /silverflow/b0451a9d-f66d-4ef7-9f5d-d48064a2bb3e TooManyRequestsErrorExample: value: type: /silverflow/problems/too-many-requests title: Too Many Requests status: 429 detail: You have exceeded the rate limit. Please try again after the specified delay. instance: /silverflow/b0451a9d-f66d-4ef7-9f5d-d48064a2bb3e parameters: parameters-from: name: from description: Include only items that have a created date _greater than or equal to_ the specified date in: query required: false schema: type: string format: iso-8601-date-time example: '2022-07-07T13:42:00Z' components-parameters-offsetToken: name: offsetToken description: The offset token. This token is returned in the response of previous request. in: query required: false schema: $ref: '#/components/schemas/components-schemas-offsetToken' date: name: date description: Include only items that have a created date _equal_ to the specified date in: query required: false schema: type: string format: date example: '2022-07-07' transactionReferenceQs: name: transactionReference description: Include only items with the specified transactionReference in: query required: false schema: $ref: '#/components/schemas/transactionReference' sortOrder: name: sortOrder description: The sort order, __asc__ending or __desc__ending in: query required: false schema: type: string enum: - asc - desc example: desc parameters-to: name: to description: Include only items that have a created date _less than_ the specified date in: query required: false schema: type: string format: iso-8601-date-time example: '2022-07-08T13:42:00Z' chargeKey: name: chargeKey in: path required: true description: 'Uniquely identifies a charge. ' schema: $ref: '#/components/schemas/chargeKey' limit: name: limit description: The number of items to return in: query required: false schema: type: integer format: int32 minimum: 1 maximum: 100 default: 10 example: 1 responses: responses-InvalidInputError: description: The request body was malformed content: application/json: schema: $ref: '#/components/schemas/openapi_components-schemas-InvalidInputErrorDetails' examples: InvalidInputErrorExample: $ref: '#/components/examples/components-examples-InvalidInputErrorExample' InvalidToOrFromDateError: description: Bad Request content: application/json: schema: $ref: '#/components/schemas/InvalidToOrFromDateErrorDetails' examples: ReferencedEntityNotFoundErrorExample: $ref: '#/components/examples/InvalidToOrFromDateErrorExample' EntityNotFoundError: description: The requested resource was not found content: application/json: schema: $ref: '#/components/schemas/schemas-EntityNotFoundErrorDetails' examples: EntityNotFoundErrorExample: $ref: '#/components/examples/examples-EntityNotFoundErrorExample' components-responses-TooManyRequestsError: description: Too Many Requests content: application/json: schema: $ref: '#/components/schemas/TooManyRequestsErrorDetails' examples: TooManyRequestsErrorExample: $ref: '#/components/examples/TooManyRequestsErrorExample' components-responses-ForbiddenError: description: The authenticated client is forbidden to make the request for the resource identified. content: application/json: schema: $ref: '#/components/schemas/ForbiddenErrorDetails' examples: ForbiddenErrorExample: $ref: '#/components/examples/examples-ForbiddenErrorExample' openapi_components-responses-UnauthorizedError: description: Authentication information is missing or invalid headers: WWW_Authenticate: schema: type: string content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorDetails' examples: AuthenticationRequired: $ref: '#/components/examples/examples-AuthenticationRequiredExample' responses-InternalServerError: description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorDetails' examples: InternalServerErrorExample: $ref: '#/components/examples/components-examples-InternalServerErrorExample' securitySchemes: ApiKey: description: "The primary method of authenticating to the Silverflow API is through API keys.\n\nAPI keys can be created by calling the [createApiKey](#operation/createApiKey) endpoint. You can create up to 40 API keys and also update and delete them, allowing for _credential rotation_.\n\nThe _Agent Activation_ process will generate an initial API Key for you. See [Activate Agent](#section/Getting-Started).\n\nA call to the [createApiKey](#operation/createApiKey) endpoint will return the following structure:\n\n```json\n{\n \"key\": \"apk-1wtRxni5IsPsSpBLWpwr\",\n \"status\": \"active\",\n \"agentKey\": \"cgt-1wtRvFLIjDOyyUR5Q2LB\",\n \"description\": \"Data lake API key\",\n \"permissions\": [\n \"charges:List\",\n \"reports:All\"\n ],\n \"created\": \"2021-06-22T11:21:45.115Z\",\n \"secret\": \"FWtnOOHAjbD6rNxWWEeVOCj7JXSEPGJQ\",\n \"version\": 1\n}\n```\n\n> **Important:** The `secret` is only returned once in the response to the `createApiKey` call.\n\nOnce created, the `key` and `secret` fields from the API key must be used in the HTTP `Authorization` header using the `Basic` scheme.\nThe Basic scheme requires a **username** and **password** to be specified, separated by a `:` (colon) and Base64 encoded.\n\nUse the following values from the API key to construct a Basic authentication header:\n\n| Basic field | API key field | Example |\n| ----------- | ------------- | ------- |\n| username | `key` | `apk-1wtRxni5IsPsSpBLWpwr` |\n| password | `secret` | `FWtnOOHAjbD6rNxWWEeVOCj7JXSEPGJQ` |\n\nIn pseudo-code a valid HTTP Basic Authentication header would be constructed as follows:\n\n```ts\nconst apiKeyId = \"apk-1wtRxni5IsPsSpBLWpwr\";\nconst apiKeySecret = \"FWtnOOHAjbD6rNxWWEeVOCj7JXSEPGJQ\";\nconst authnValue = \"Basic \" + base64Encode(apiKeyId + \":\" + apiKeySecret);\nrequest.setHeader(\"Authorization\", authnValue);\n```\n\nUsing the values from the example a valid HTTP request would look like the following:\n\n```http\nGET /v1/agents/current HTTP/1.1\nAccept: application/json\nAuthorization: Basic YXBrLTF3dFJ4bmk1SXNQc1NwQkxXcHdyOkZXdG5PT0hBamJENnJOeFdXRWVWT0NqN0pYU0VQR0pR\n```\n\nMore information on the Basic scheme can be found in [RFC-7617 - The 'Basic' HTTP Authentication Scheme](https://datatracker.ietf.org/doc/html/rfc7617)." type: http scheme: basic BearerToken: description: 'Bearer tokens are temporary security credentials that can be used to authorize ''third parties'' (bearers) access to the Silverflow API on behalf of the agent. These tokens are created by calling the [createAgentBearerToken](#operation/createAgentBearerToken) endpoint. Once created the `token` field must be used in the HTTP `Authorization` header using the `Bearer` scheme. Here''s an example of an HTTP request with a bearer token: ```http GET /v1/merchants/mct-1hPdFhmgaBzMS191nIbJ HTTP/1.1 Accept: application/json Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...40EFOgxf_3I6mPZ16bXqHd5tUyApgl0mNOAXPm5AhnA ``` More information on the Bearer scheme can be found in [RFC-6750 - The OAuth 2.0 Authorization Framework: Bearer Token Usage](https://datatracker.ietf.org/doc/html/rfc6750).' type: http scheme: bearer bearerFormat: JWT MutualTLS: type: apiKey in: header name: '-' description: 'The client must set up mTLS connection with a valid X.509 client certificate signed by a customer-provided CA (certificate authority) that is registered to a specific agent. The customer-provided CA certificate must be shared and added to Silverflow''s trust store prior to calling endpoints. Certificate validation happens at the transport layer during TLS handshake. Tenant verification is performed by matching the agent key embedded in the client certificate against the agent key embedded in the trusted CA. ' x-refined-from: - silverflow-openapi.yml - silverflow-openapi.yml x-tagGroups: - name: '' tags: - Introduction - Release Notes - name: Accounts tags: - Agents - API Keys - Bins - Merchants - Merchant Acceptors - Enrollments - Screenings - name: Event Notifications tags: - Event Subscriptions - Charges Events - Disputes Events - Fraud Notification Events - Processor Tokens Events - Network Tokens Events - Report Events - Distribution Events - AMMF Submission Events - Reconciliation Events - Clearing Events - name: 3DS Authentication tags: - 3DS Authentication - name: BEP Authentication tags: - BEP Authentication - name: Tokenization tags: - Processor Tokenization - Network Tokenization - name: Charges tags: - Create Charges - Create Recurring - Retrieve Charges - Charge Actions - name: Terminal-To-Cloud tags: - Create POS Charges - Retrieve POS Charges - POS Charge Actions - name: Card Management tags: - Card Management - name: Disputes tags: - Disputes - Documents - name: Fraud Notifications tags: - Fraud Notifications - name: Card Info tags: - Card Info - name: Currency Conversion Rates tags: - Currency Conversion Rates - name: Fees tags: - Fees - name: Reconciliation tags: - Reconciliation Details - Network Funds Transfers - name: Reports tags: - Reconciliation Reports - Settlement Reports - Card Network Reports - Dispute Reports - Fraud Notifications Reports - Charges Reports - Scheme Fee Reports - Retrieve Reports - Report Scheduling - Distributions - name: Transaction Risk Assessment tags: - Transaction Risk Assessment - name: File Subscriptions tags: - File Subscriptions