Download OpenAPI specification:Download
Operations exposed by the Issuer Bank for amiko to submit booking events.
Submit a cardholder accounts adjustment or write-off booking event including the relevant booking data (e.g. type of booking, amount) as well as meta-data defining the context and reason of the booking.
| tracing-id required | string Tracing ID that can be used to track interactions. |
| auth_header | string This is going to be where we send the API key. The header will consist of a custom api key or standardised JWT auth. |
A JSON object containing the booking event and booking meta-data
| agentOidcId | string OpenID of the agent performing the operation. |
| amikoBookingId required | string <uuid> Unique identifier for the booking generated by amiko |
| amikoCaseType required | string Enum: "cardholder_dispute" "fraud" Type of amiko case. Can be fraud or cardholder dispute. |
| bookingAmount | string Optional field, contains the partial booking amount if isFullAmount = false. E.g. 123.45 |
| isFullAmount required | boolean Whether the booking amount is equal to the amount of the related transaction or if it is a partial amount |
| bookingAmountPercentage | string Deprecated param, will be removed in future versions |
| currencyCode | string Optional field, contains the partial booking currency provided as a three digit code based on ISO 4217:2015 if isFullAmount = false. E.g. the currencyCode for U.S. dollar is 840 |
| currencyCodeAlpha | string Optional field, contains the partial booking currency provided as a three letter code based on ISO 3166/1 if isFullAmount = false. E.g. the currencyCodeAlpha for U.S. dollar is USD |
| cardId required | string Unique identifier of a card that is not the PAN and is not to be classified as account data or PII |
| bookingTarget required | string Enum: "card_account" "general_ledger" The target ledger of the booking, which is either Card Account or General Ledger (for write-off) |
| bookingOperation required | string Enum: "credit" "debit" "write_off" "write_off_reversal" The type of booking, which for Card Account is either "credit" or "debit" and for General Ledger is either "write_off" or "write_off_reversal" |
| bookingReason required | string Enum: "credit_permanent_refund" "credit_temporary_refund" "debit_cardholder_deductible" "debit_cardholder_liability" "debit_direct_merchant_credit" "write_off_goodwill" "write_off_handling_mistake" "write_off_issuer_liability" "write_off_issuer_policy" "write_off_reversal_cardholder_liability" "write_off_reversal_direct_merchant_credit" The reason for this booking. For more information on the possible combinations of target, operation and reasons, see documentation. |
| disputeReasonCode | string Enum: "4880" "4863" "4840" "4855" "4859" "4841" "4860" "4831" "4842" "4846" "4807" "4812" "4808" "4853" "4837" "4849" "4870" "4871" "4834" "4850" "4999" "2001" "2002" "2003" "2004" "2005" "2008" "2011" "2700" "2701" "2702" "2703" "2704" "2705" "2706" "2707" "2708" "2709" "2710" "2713" "2870" "2871" "10.1" "10.2" "10.3" "10.4" "10.5" "11.1" "11.2" "11.3" "12.1" "12.2" "12.3" "12.4" "12.5" "12.6.1" "12.6.2" "12.7" "13.1" "13.2" "13.3" "13.4" "13.5" "13.6" "13.7" "13.8" "13.9" An optional field that if applicable in this context contains the dispute reason code related to this booking. Example values: "4837" "13.9" |
| transactionLifecycle required | string Enum: "dispute_rejected" "dispute_reversed" "dispute_submitted" "dispute_pending" "outgoing_arbitration_lost_failed" "outgoing_arbitration_rebutted" "outgoing_arbitration_submitted" "outgoing_arbitration_withdrawn" "outgoing_arbitration_won" "outgoing_case_filing_escalated" "outgoing_case_filing_lost_failed" "outgoing_case_filing_rejected" "outgoing_case_filing_submitted" "outgoing_case_filing_withdrawn" "outgoing_case_filing_won" "outgoing_compliance_lost_failed" "outgoing_compliance_rebutted" "outgoing_compliance_submitted" "outgoing_compliance_withdrawn" "outgoing_compliance_won" "outgoing_pre_arbitration_lost_failed" "outgoing_pre_arbitration_rejected" "outgoing_pre_arbitration_submitted" "outgoing_pre_arbitration_withdrawn" "outgoing_pre_arbitration_won" "outgoing_pre_compliance_lost_failed" "outgoing_pre_compliance_rejected" "outgoing_pre_compliance_submitted" "outgoing_pre_compliance_withdrawn" "outgoing_pre_compliance_won" "pre_dispute_failed" "pre_dispute_pending" "pre_dispute_successful" "representment_or_dispute_response" "none" "incoming_arbitration_lost_failed" "incoming_arbitration_received" "incoming_arbitration_withdrawn" "incoming_arbitration_won" "incoming_case_filing_escalated" "incoming_case_filing_lost_failed" "incoming_case_filing_received" "incoming_case_filing_rejected" "incoming_case_filing_withdrawn" "incoming_case_filing_won" "incoming_compliance_lost_failed" "incoming_compliance_received" "incoming_compliance_withdrawn" "incoming_compliance_won" "incoming_pre_arbitration_lost_failed" "incoming_pre_arbitration_received" "incoming_pre_arbitration_rejected" "incoming_pre_arbitration_withdrawn" "incoming_pre_arbitration_won" "incoming_pre_compliance_lost_failed" "incoming_pre_compliance_received" "incoming_pre_compliance_rejected" "incoming_pre_compliance_withdrawn" "incoming_pre_compliance_won" Provides the information about the life-cycle stage of the dispute, if no action has been taking before the booking the stage is "none". Values incoming/outgoing-case-filing-* are sent instead of more detailed statuses only if legacy lifecycle support is enabled. |
| bookingReference required | Array of strings A list of issuerBookingId that amiko received in response to previous booking request. If no previous issuerBookingId is available this can be an empty list. |
required | object |
| issuerWriteOffReason | string |
{- "agentOidcId": "61f925fa-653b-46f0-9117-d03040e9b775",
- "amikoBookingId": "37b48334-3ad1-43e3-aa84-26075e513683",
- "amikoCaseType": "fraud",
- "bookingAmount": "100.35",
- "isFullAmount": true,
- "bookingAmountPercentage": "94.450000",
- "currencyCode": "840",
- "currencyCodeAlpha": "USD",
- "cardId": "b8ba25f3-c945-4ed0-9d4d-e3153a0dd048",
- "bookingTarget": "card_account",
- "bookingOperation": "credit",
- "bookingReason": "credit_temporary_refund",
- "disputeReasonCode": "4880",
- "transactionLifecycle": "dispute_submitted",
- "bookingReference": [
- "id_provided_by_ledger"
], - "transaction": {
- "issuerBIN": "513659",
- "issuerICA": "string",
- "scheme": "mastercard",
- "ARN": "22223600316202940203675",
- "dateAndTimeLocal": "2021-12-31T23:59:59",
- "originalTransactionAmount": "100.35",
- "originalTransactionCurrency": "840",
- "merchantName": "TEST MERCHANT NAME",
- "MCC": "5812",
- "merchantState": "MO",
- "merchantCountry": "USA"
}, - "issuerWriteOffReason": "string"
}{- "status": "failed",
- "amikoBookingId": "37b48334-3ad1-43e3-aa84-26075e513683",
- "issuerBookingId": "id_provided_by_ledger",
- "failure": {
- "reason": "the card account does not existing",
- "code": "352452"
}
}The specification is based on the IETF draft linked below. Its content consists of a single mandatory root field (“status”) and several optional fields. Health Check Response Format for HTTP APIs: https://inadarei.github.io/rfc-healthcheck/
{- "status": "fail"
}