> For the complete documentation index, see [llms.txt](https://docs.payments.thalescloud.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.payments.thalescloud.io/transaction-control/ja/integrate-the-d1-api/d1-api-reference/outbound-api-from-d1/card-api.md).

# カード API

## Notify Card Authorisation Operations

> This request is used by D1 to notify the system of the bank about one or several authorisation processed by D1.\<br>\
> The number max of authorisation in the notification is defined at onboarding time with issuer.\
> Each auhtorisation is linked to a given card id, and can contain a message dedicated for the final end-user.

```json
{"openapi":"3.0.0","info":{"title":"Outbound Card API","version":"2.0"},"servers":[{"url":"https://YOUR_DOMAIN_NAME"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","description":"A JWT generated by the [Get Authorization Token API](oauth2-api).<br/>The server checks the validity of the provided token to control access to this protected resource. Please refer to [Get OAuth 2.0 access token](../../../integrate-the-d1-api/get-oauth-2.0-access-token) for more details on the flow and on how to get this JWT.","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"authorisationCard-operation-notification":{"allOf":[{"$ref":"#/components/schemas/authorisationCard-operation-model"},{"type":"object","required":["cardId"],"properties":{"cardId":{"$ref":"#/components/schemas/cardId"},"details":{"$ref":"#/components/schemas/authorisationCard-details"},"message":{"$ref":"#/components/schemas/AuthorisationNotification-message"}}}]},"authorisationCard-operation-model":{"type":"object","required":["operationId","operation","status","startTime"],"properties":{"operationId":{"$ref":"#/components/schemas/authorisationCard-operationId"},"operation":{"type":"string","enum":["PURCHASE","WITHDRAWAL","REFUND","PAYMENT","OTHER"],"description":"operation defines the auhtorisation type. Computed from processing code (ISO-8583 SID / Field No 3) transaction type (Postions 1-2)."},"status":{"type":"string","enum":["APPROVED","PARTIALLY_APPROVED","REVERSED","DECLINED"],"description":"The operation status. Interpreted value of Action Code (ISO-8583 SID / Field No 39)."},"startTime":{"type":"string","description":"Transaction local date and time (ISO-8583 / Field No 12)<br>\nFormat ISO 8601 YYYY-MM-DDThh:mm:ssTZD","minLength":1,"maxLength":64,"pattern":"^[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|02-(0[1-9]|[12][0-9]))T([0-1][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\\.[0-9]{3}Z|\\.[0-9]{2}([\\+\\-](0[1-9]|1[0-2])):00)$"},"errorCode":{"type":"string","description":"error code , only present in case of DECLINED operation/authorisation","enum":["INVALID_CARD_STATE","INVALID_CARD_DATA","CONTROL_FAIL","VELOCITY_CHECK_FAIL","BALANCE_CHECK_FAIL","FRAUD_DETECTED","TECHNICAL_ERROR","ISSUER_ERROR","DOMAIN_CONTROL_FAIL"]}}},"authorisationCard-operationId":{"type":"string","minLength":1,"maxLength":12,"description":"Id corresponding to Retrieval Reference Number (ISO-8583 SID / Field No 37)."},"cardId":{"type":"string","description":"Unique identifier of the card.","minLength":1,"maxLength":48,"pattern":"^[A-Za-z0-9_-]{1,48}$"},"authorisationCard-details":{"type":"object","required":["isoMessageType","transactionDate","transmissionDate","retrievalReferenceNumber","stan","internalStan","actionCode","amount","currencyCode","functionCode","merchant"],"properties":{"isoMessageType":{"type":"string","description":"The ISO Message type of the request/advice sent by the switch.<br>Value '1100' represents an authorisation request.","minLength":4,"maxLength":4,"pattern":"^[\\d]{4}$"},"transactionDate":{"type":"string","description":"Transaction local date and time (ISO-8583 SID / Field No 12)<br>\nFormat ISO 8601 YYYY-MM-DDThh:mm:ssTZD","minLength":1,"maxLength":64,"pattern":"^[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|02-(0[1-9]|[12][0-9]))T([0-1][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\\.[0-9]{3}Z|\\.[0-9]{2}([\\+\\-](0[1-9]|1[0-2])):00)$"},"transmissionDate":{"type":"string","description":"Transmission date and time (ISO-8583 SID / Field No 7)<br>\nFormat ISO 8601 YYYY-MM-DDThh:mm:ssTZD","minLength":1,"maxLength":64,"pattern":"^[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|02-(0[1-9]|[12][0-9]))T([0-1][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\\.[0-9]{3}Z|\\.[0-9]{2}([\\+\\-](0[1-9]|1[0-2])):00)$"},"retrievalReferenceNumber":{"type":"string","minLength":1,"maxLength":12,"description":"Retrieval Reference Number (ISO-8583 SID / Field No 37)."},"stan":{"type":"string","description":"System Trace Audit Number (ISO-8583 SID / Field No 11)","minLength":1,"maxLength":6},"internalStan":{"type":"string","description":"The internal System Trace Audit Number generated by the solution.","minLength":1,"maxLength":6},"actionCode":{"type":"string","minLength":3,"maxLength":3,"pattern":"^[\\d]{3}$","description":"The none interpreted Action Code return by the authorisation host (ISO-8583 SID / Field No 39).<br>\nFor example '000' for APPROVED, '002' for PARTIAL APPROVE"},"declinedReason":{"type":"string","description":"The declined reason of the operation, present only is the authorisation has been DECLINED by Auhtorisation host.","enum":["INVALID_CARD_STATE","INVALID_CARD_DATA","CONTROL_FAIL","VELOCITY_CHECK_FAIL","BALANCE_CHECK_FAIL","FRAUD_DETECTED","TECHNICAL_ERROR","ISSUER_ERROR","DOMAIN_CONTROL_FAIL"]},"declinedDetails":{"type":"string","enum":["INVALID_CVV2","INVALID_DCVV2","INVALID_EXPIRY_DATE","INVALID_RETRYABLE_DCVV2","NO_ACTIVE_DCVV2","CARD_DELETED","CARD_EXPIRED","CARD_REPLACED","CARD_SUSPENDED","CONTACTLESS_DISABLED","CVV2_LOCKED","EXPIRY_DATE_LOCKED","PIN_LOCKED","COUNTRY_NOT_ALLOWED","CURRENCY_NOT_ALLOWED","MAGSTRIPE_DISABLED","MERCHANT_TYPE_NOT_ALLOWED","ONLINE_PAYMENT_DISABLED","WITHDRAWAL_DISABLED","EMV_AUTHORIZATION_VERIFICATION_FAIL","INVALID_PIN","ABOVE_MAX_AMOUNT","BELOW_MIN_AMOUNT","MAX_AMOUNT_LIMIT_REACHED","MAX_TRANSACTION_LIMIT_REACHED","NOT_ENOUGH_FUND","INVALID_MERCHANT","SUSPECTED_FRAUD","ACCOUNT_NOT_FOUND","FUND_CHECK_FAILED","TECHNICAL_ERROR"],"description":"Additional details for declined Reason if available. In table below you will find the possible details for each declined reason\n| Declined reason      | possible declined details       |\n| -------------------- | ------------------------|\n| INVALID_CARD_DATA    | INVALID_CVV2<br>INVALID_DCVV2<br>INVALID_EXPIRY_DATE<br>INVALID_RETRYABLE_DCVV2<br>NO_ACTIVE_DCVV2 |\n| INVALID_CARD_STATE   | CARD_DELETED<br>CARD_EXPIRED<br>CARD_REPLACED<br>CARD_SUSPENDED<br>CONTACTLESS_DISABLED<br>CVV2_LOCKED<br>EXPIRY_DATE_LOCKED<br>PIN_LOCKED |\n| DOMAIN_CONTROL_FAIL  | CONTACTLESS_DISABLED<br>COUNTRY_NOT_ALLOWED<br>CURRENCY_NOT_ALLOWED<br>MAGSTRIPE_DISABLED<br>MERCHANT_TYPE_NOT_ALLOWED<br>ONLINE_PAYMENT_DISABLED<br>WITHDRAWAL_DISABLED |\n| CONTROL_FAIL         | EMV_AUTHORIZATION_VERIFICATION_FAIL<br>INVALID_PIN |\n| VELOCITY_CHECK_FAIL  | ABOVE_MAX_AMOUNT<br>BELOW_MIN_AMOUNT<br>MAX_AMOUNT_LIMIT_REACHED<br>MAX_TRANSACTION_LIMIT_REACHED |\n| BALANCE_CHECK_FAIL   | NOT_ENOUGH_FUND |\n| FRAUD_DETECTED       | INVALID_MERCHANT<br>SUSPECTED_FRAUD |\n| ISSUER_ERROR         | ACCOUNT_NOT_FOUND<br>FUND_CHECK_FAILED |"},"amount":{"type":"number","minimum":0,"maximum":999999999999,"description":"The nominal transaction amount value (ISO-8583 SID / Field No 04).<br>\nValue without decimal separator, use the currency exponent to determine the number of decimal.<br>\nFor example, an amount in euro of €21 is returned 2100."},"currencyCode":{"$ref":"#/components/schemas/currencyCode"},"billingAmount":{"type":"number","minimum":0,"maximum":999999999999,"description":"The billing amount value from Authorisation (ISO-8583 SID / Field No 06)<br>\nValue without decimal separator, use the currency exponent to determine the number of decimal.<br>\nFor example, an amount in euro of €21 is returned 2100."},"billingCurrencyCode":{"$ref":"#/components/schemas/currencyCode"},"conversionRate":{"type":"number","description":"Cardholder billing exchange rate from Auhtorization (ISO-8583 SID / Field No 10)<br>Or used by the solution during conversion.","minimum":0,"maximum":9999999},"replacementAmount":{"type":"number","minimum":0,"maximum":999999999999,"description":"The replacement amount value from Authorisation (ISO-8583 SID / Field No 30)<br>\nValue without decimal separator, use the currency exponent to determine the number of decimal.<br>\nFor example, an amount in euro of €21 is returned 2100."},"replacementCurrencyCode":{"$ref":"#/components/schemas/currencyCode"},"accountNumber":{"type":"string","maxLength":24,"description":"Account number used when posting with Core Banking System"},"standInProcessing":{"type":"boolean","description":"Specify if STAND-In processing has been used or not by D1 Authorisation host.\n  - true if the authorization has been approvded on behalf of the Core Banking System (STAND-IN processing)\n  - false if financial authorization has been approved by the Core Banking system."},"functionCode":{"type":"string","description":"Function code (ISO-8583 SID - Field No 24)","minLength":3,"maxLength":3,"pattern":"^[\\d]{3}$"},"messageReasonCode":{"type":"string","description":"Function code (ISO-8583 SID - Field No 25)","minLength":4,"maxLength":4,"pattern":"^[\\d]{4}$"},"cardPresent":{"type":"boolean","description":"Point of service data code (ISO-8583 SID / Field No 22) Card Present indicator (Postion 06)."},"cardDataInputMode":{"type":"string","description":"Point of service data code (ISO-8583 SID / Field No 22) Card Data Input Mode (Postion 07).<br> See ISO-8583 SID for the list of possible values.","minLength":1,"maxLength":1},"initiatingParty":{"type":"string","enum":["CARDHOLDER","MERCHANT"],"description":"Merchant or Cardholder initiated transaction<br>TAG P64 in Additional private data (ISO-8583 SID / Field No 48) Initating-Party (Postion 04)."},"acquirerCountryCode":{"type":"string","description":"Acquiring institution country code (ISO-8583 SID / Field No 19).<br>\nCountry code in ISO 3166-1 alpha-2.","minLength":2,"maxLength":2,"pattern":"^[A-Z]{2}$"},"merchant":{"$ref":"#/components/schemas/authorisationCardDetails-merchant"},"digitalCard":{"$ref":"#/components/schemas/authorisationCardDetails-digitalCard"}}},"currencyCode":{"type":"string","pattern":"^[A-Z]{3}$","description":"Currency Code in ISO 4217 alpha code format"},"authorisationCardDetails-merchant":{"additionalProperties":false,"type":"object","description":"merchant information as provided from Authorisation (ISO-8583 SID / Field No 42 & 43)","required":["merchantId","merchantNameAddress"],"properties":{"merchantId":{"type":"string","minLength":1,"maxLength":15,"description":"Card acceptor identification code (ISO-8583 SID / Field No 42)."},"merchantNameAddress":{"type":"string","minLength":1,"maxLength":40,"description":"Card acceptor name and address (ISO-8583 SID / Field No 43)."},"merchantName":{"type":"string","minLength":1,"maxLength":24,"description":"merchant accronym  (positions 1-24) of Card acceptor name and address (ISO-8583 SID / Field No 43)."},"city":{"type":"string","minLength":1,"maxLength":13,"description":"merchant city (positions 25-37) of Card acceptor name and address (ISO-8583 SID / Field No 43)."},"countryCode":{"type":"string","description":"merchant country (positions 38-40) of Card acceptor name and address (ISO-8583 SID / Field No 43)<br>\nCountry code in ISO 3166-1 alpha-2.","minLength":2,"maxLength":2,"pattern":"^[A-Z]{2}$"},"merchantType":{"type":"string","description":"MCC / Merchant type (ISO-8583 SID / Field No 18). (not provided for an operation having a status=REVERSED)","minLength":4,"maxLength":4,"pattern":"^[\\d]{4}$"}}},"authorisationCardDetails-digitalCard":{"additionalProperties":false,"type":"object","description":"Provided in case Authorisation with a digital card.<br>\nInformation extracted in Tag P55 (Token Data) from Additional Private Data (ISO-8583 SID / Field No 48)","required":["digitalCardId","digitalCardRequestorId"],"properties":{"digitalCardId":{"$ref":"#/components/schemas/digitalCardId"},"digitalCardRequestorId":{"type":"string","description":"Digital Card requestor identifier. This is provided by the TSP itself.","minLength":11,"maxLength":11}}},"digitalCardId":{"type":"string","description":"Unique identifier of the digital card.","minLength":1,"maxLength":64,"pattern":"^[A-Za-z0-9_-]{1,64}$"},"AuthorisationNotification-message":{"type":"object","properties":{"format":{"type":"string","description":"Format of the message","enum":["TEXT","HTML"]},"title":{"type":"string","description":"Title of the notification"},"content":{"type":"string","description":"Message to be displayed"}}},"errorGeneric":{"additionalProperties":false,"type":"object","description":"Generic error returned by the APIs.","properties":{"errorCode":{"type":"string","description":"The type of the error"},"error":{"type":"string","description":"Provide more error details if possible.<br/>For example name of the field with invalid format.<br/>This field is for troubleshooting purposes only, it can change at any time so MUST NOT be parsed, and is not supposed to be human readable so CANNOT be displayed to end users."}}}},"responses":{"ServiceUnavailableError-outbound":{"description":"The service is temporarily unavailable. D1 will retry the request later."}}},"paths":{"/notifications/d1/v2/issuers/{issuerId}/authorisations":{"post":{"summary":"Notify Card Authorisation Operations","operationId":"notifyCardAuthorisations","description":"This request is used by D1 to notify the system of the bank about one or several authorisation processed by D1.<br>\nThe number max of authorisation in the notification is defined at onboarding time with issuer.\nEach auhtorisation is linked to a given card id, and can contain a message dedicated for the final end-user.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"operations":{"type":"array","items":{"$ref":"#/components/schemas/authorisationCard-operation-notification"}}}}}},"description":""},"responses":{"204":{"description":"Successful"},"400":{"description":"Bad Request, Invalid request URI, header, paramters.<br> \nD1 will not retry the request until the issue is considered as resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorGeneric"}}}},"401":{"description":"Unauthorized request.<br>\nD1 will not retry the request until the issue is considered as resolved.            ","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorGeneric"}}}},"403":{"description":"Forbidden action<br>\nD1 will not retry the request until the issue is considered as resolved.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorGeneric"}}}},"404":{"description":"Ressource not found, Unknown issuerId<br>\nD1 will not retry the request until the issue is considered as resolved.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorGeneric"}}}},"500":{"description":"Internal Server Error. D1 will retry the request later.\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorGeneric"}}}},"503":{"$ref":"#/components/responses/ServiceUnavailableError-outbound"}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.payments.thalescloud.io/transaction-control/ja/integrate-the-d1-api/d1-api-reference/outbound-api-from-d1/card-api.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
