openapi: 3.2.0
info:
title: Tribe Payments Credit API
version: 3.0.0
description: 'Operations tagged Credit across 2 of this provider''s published API definitions: tribe-payments-trb-cc-api-merchant-api-credit-card-callback-v3.json, tribe-payments-trb-cc-api-merchant-api-credit-card-v3.json. Each path carries the servers of the definition it was published in.'
servers:
- url: http://127.0.0.1:10010/v3
security:
- accountId: []
accountPassword: []
tags:
- name: Credit
paths:
/registered-credit-address:
post:
tags:
- Credit
summary: ''
operationId: postcredit
requestBody:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/Credit'
responses:
'200':
description: 'Expected response: HTTP status code 200'
servers:
- url: http://127.0.0.1:10010/v3
/credit:
post:
tags:
- Credit
summary: ''
operationId: postcredit
requestBody:
description: "To move funds from the merchant's account to the cardholder's account, make a Credit transaction.\n After processing the request, a webhook will be sent to your URL specified in the Processing Account setup.\n For more details, refer to the [`Credit`](#webhooks--authorize--registeredcreditaddress) webhook."
content:
application/json:
schema:
$ref: '#/components/schemas/Credit_2'
responses:
'202':
description: Accepted
content:
application/json:
schema:
$ref: '#/components/schemas/responseSuccess'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/responseError'
'401':
description: Unauthorized Request
content:
application/json:
schema:
$ref: '#/components/schemas/responseUnauthorized'
'403':
description: Forbidden Request
content:
application/json:
schema:
$ref: '#/components/schemas/responseForbidden'
servers:
- url: http://127.0.0.1:10010/v3
components:
schemas:
Credit:
title: credit
properties:
webhook:
$ref: '#/components/schemas/CreditWebhook'
requestId:
description: Unique request ID received after a successful initial request for the appropriate action
type: string
example: a06a73c9-d1d7-11ec-8b58-2e8a68cda573
maxLength: 36
minLength: 36
transaction:
$ref: '#/components/schemas/CreditTransaction'
type: object
required:
- requestId
CreditTransaction:
type: object
description: Object containing data of the Credit transaction
properties:
id:
description: Transaction ID
type: string
example: '397209271826453991'
maxLength: 16
minLength: 16
date:
description: 'Transaction date in UTC. ISO 8601 format: `YYYY-MM-DD hh:ii:ss`'
type: string
example: '2023-06-01 11:21:15'
maxLength: 19
minLength: 19
orderId:
description: Custom merchant’s reference
type: string
example: '32131231231241'
maxLength: 32
minLength: 1
parentId:
description: Parent transaction ID for `Cancel`, `Capture`, `Incremental authorize`, `Refund`, etc.
type: string
example: '675689811821989225'
maxLength: 19
minLength: 16
code:
description: '[`Transaction error code`](#appendix--enum--transaction-error-code)'
type: string
example: '000'
maxLength: 5
minLength: 3
message:
description: '[`Transaction error message`](#appendix--transaction-error-code)'
type: string
example: Transaction successfully completed
maxLength: 100
minLength: 1
errorDescription:
description: Error description
type: string
example: null
maxLength: 100
minLength: 1
status:
description: The transaction status can be `true` (for authorized transactions) or `false` (for unauthorized transactions)
type: string
example: 'true'
maxLength: 20
minLength: 1
statementDescriptor:
description: Transaction descriptor text that appears on a customer's credit card statement
type: string
example: onlinemerchant.com
maxLength: 50
minLength: 1
type:
description: '[`Transaction type`](#appendix--enum--transaction-type)'
type: integer
example: 40
required:
- id
- date
- orderId
- code
- message
- errorDescription
- status
- type
CreditWebhook:
type: object
description: Object containing the Credit webhook data
properties:
id:
description: Unique webhook ID
type: string
example: '545522349919700221'
maxLength: 16
minLength: 16
type:
description: '[Webhook Type]
| Type | Description |
|---|
| transaction_cc | Credit Card Transaction webhook for transaction change event |
'
type: string
example: transaction_cc
maxLength: 255
minLength: 3
required:
- id
- type
CreditReceiver:
type: object
description: Object containing data of the funds receiver, i.e. the person or institution receiving a Credit
properties:
firstName:
description: '**Conditional parameter**: Receiver’s first name. For institutions, their name must be encoded through the `firstName` and `lastName` parameters. It is required if the MCC is 6536 or 6537 (MoneySend Payment).'
type: string
example: Firstname
maxLength: 35
minLength: 1
lastName:
description: '**Conditional parameter**: Receiver’s last name. For institutions, their name must be encoded through the `firstName` and `lastName` parameters. It is required if the MCC is 6536 or 6537 (MoneySend Payment).'
type: string
example: Lastname
maxLength: 35
minLength: 1
violationObjectForbidden:
title: Validation object
properties:
code:
description: '[`Response code`](#appendix--enum--response-code)'
type: string
maxLength: 5
minLength: 3
example: '4001'
message:
description: '[`Response message`](#appendix--enum--response-code)'
type: string
maxLength: 50
minLength: 1
example: Company is disabled
type: object
responseSuccess:
title: Success response
properties:
requestId:
description: Request ID
type: string
example: b44724c9-3844-450d-b36a-986fc9c38d7b
maxLength: 36
minLength: 36
type: object
CreditCustomer:
type: object
description: Object containing data of the actual credit customer, i.e. the person or institution initiating a Credit transaction
properties:
id:
description: Unique identifier of the customer in the merchant’s system. Used for applying limits to the customer
type: string
example: user123
maxLength: 50
minLength: 1
phone:
description: The customer's phone number. **Format:** The parameter must include a valid country code and a phone number of the correct length. Only numbers and an optional `+` symbol are allowed.
type: string
example: 0123456789
maxLength: 20
minLength: 3
email:
description: The customer’s email address.
type: string
example: email@email.com
maxLength: 50
minLength: 6
dateOfBirth:
description: 'Customer’s date of birth. ISO 8601 format: `YYYY-MM-DD`. Required by some providers or when MCC is 6012'
type: string
example: '2000-01-01'
maxLength: 10
minLength: 10
countryCode:
description: Customer’s billing country. [`Country list`](#appendix--enum--country). Might be mandatory for some integrations.
type: string
example: GB
maxLength: 2
minLength: 2
state:
description: 'State or province of the customer’s billing address, as defined in ISO 3166-2, e.g. US Alabama: AL'
type: string
example: AL
maxLength: 3
minLength: 1
city:
description: Customer’s billing city. Required by some integrations with 3DS v2. Required if avs_check is `true`
type: string
example: City
maxLength: 85
minLength: 1
address:
description: Customer’s billing address. Required by some integrations with 3DS v2. Required if avs_check is `true`
type: string
example: Address
maxLength: 100
minLength: 1
zipCode:
description: Customer’s billing ZIP code. Required by some integrations with 3DS v2. Required if avs_check is `true`
type: string
example: GU16 7HF
maxLength: 20
minLength: 1
ip:
description: IPv4 or IPv6 address
type: string
example: 1.1.1.1
maxLength: 40
minLength: 7
CreditTransaction_2:
type: object
description: Object containing data of the Credit transaction
properties:
amount:
description: Number in minor units, e.g. cents. To charge €10, provide 1000 (as the EUR minor unit is cents). Meanwhile, for a ¥10 charge, provide 10 (as the JPY minor unit is the whole unit, i.e., it does not have cents).
type: string
example: '123'
maxLength: 13
minLength: 1
currencyCode:
description: Currency ISO 4217 code
type: string
example: EUR
maxLength: 3
minLength: 3
orderId:
description: Custom merchant’s reference
type: string
example: '32131231231241'
maxLength: 32
minLength: 1
descriptor:
description: Custom descriptor
type: string
example: descriptor
maxLength: 22
minLength: 1
paymentTypeIndicator:
description: The parameter handles the [`payment transaction type`](#appendix--enum--payment-transaction-type-indicator). Required for Mastercard and Visa money transfers as well as Account Funding transactions
type: string
example: C07
maxLength: 3
minLength: 2
required:
- amount
- currencyCode
- orderId
responseUnauthorized:
properties:
requestId:
description: Request ID
type: string
example: b44724c9-3844-450d-b36a-986fc9c38d7b
maxLength: 36
minLength: 36
message:
description: Request ID
type: string
example: Unauthorized request
violations:
type:
- array
- 'null'
items:
type: string
example: []
type: object
responseError:
title: Error response
properties:
requestId:
description: Request ID
type: string
example: b44724c9-3844-450d-b36a-986fc9c38d7b
maxLength: 36
minLength: 36
message:
description: Error response
type: string
example: Error occurred
violations:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/violationObject'
type: object
responseForbidden:
properties:
requestId:
description: Request ID
type: string
example: b44724c9-3844-450d-b36a-986fc9c38d7b
maxLength: 36
minLength: 36
message:
description: Request ID
type: string
example: Error occurred
violations:
type: array
items:
$ref: '#/components/schemas/violationObjectForbidden'
type: object
CreditCard:
type: object
description: Object containing details of the card to be credited
properties:
number:
description: Customer’s card number
type: string
example: '5099993000018223'
maxLength: 22
minLength: 13
expirationMonth:
description: Card expiry month
type: integer
example: 12
expirationYear:
description: Card expiry year. Must be within the next 50 years
type: integer
example: 2028
securityCode:
description: '**Conditional parameter:** The CVV or CVC of the card. Whether this parameter is mandatory or optional depends on your integration.'
type: string
example: '000'
maxLength: 4
minLength: 3
holderName:
description: Customer’s full name
type: string
example: John Doe von Soap
maxLength: 26
minLength: 3
required:
- number
- expirationMonth
- expirationYear
- holderName
violationObject:
title: Validation object
properties:
propertyPath:
description: Path of parameter causing an error. Null for general errors
type:
- string
- 'null'
example: parameterName
maxLength: 50
minLength: 1
code:
description: '[`Response code`](#appendix--enum--response-code)'
type: string
maxLength: 5
minLength: 3
example: '2000'
message:
description: '[`Response message`](#appendix--enum--response-code)'
type: string
maxLength: 50
minLength: 1
example: Value is not provided
type: object
Credit_2:
title: credit
properties:
transaction:
$ref: '#/components/schemas/CreditTransaction_2'
card:
$ref: '#/components/schemas/CreditCard'
customer:
$ref: '#/components/schemas/CreditCustomer'
receiver:
$ref: '#/components/schemas/CreditReceiver'
type: object
securitySchemes:
accountId:
type: apiKey
in: header
name: x-auth-account-id
accountPassword:
type: apiKey
in: header
name: x-auth-account-password
x-refined-from:
- tribe-payments-trb-cc-api-merchant-api-credit-card-callback-v3.json
- tribe-payments-trb-cc-api-merchant-api-credit-card-v3.json