alipay.intl.acquiring.offline.pay
The merchant uses this interface to initiate an offline payment.
Request
Request parameters
Header
| No | Name | Description | Type | Length | Required | Remarks | Sample | 
| 1 | version | API version | string | 8 | ME | As per the respective API reference. | 2.0.0 | 
| 2 | function | API interface | string | 128 | ME | According to specifications defined by each business domain. | alipay.intl.function | 
| 3 | clientId | Client ID | string | 32 | ME | Provided by Alipay, used to identify partner and application system. | 211020000000000000044 | 
| 4 | reqTime | Request time | datetime | / | M | DateTime with timezone, which follows the ISO-8601 standard. | 2001-07-04T12:08:56+05:30 | 
| 5 | reqMsgId | Request message ID | string | 64 | ME | Each request will be assigned with a unique ID (uuid). | 1234567asdfasdf1123fda | 
| 6 | reserve | Reserved for future implementation | string | 256 | O | Key/Value | {} | 
Body
| No | Name | Description | Type | Length | Required | Remarks | Sample | 
| 1 | merchantId | Merchant ID, which identifies the settlement target that Alipay would settle to. | string | 64 | M | 218820000000000000023 | |
| 2 | productCode | The product code | enum<ProductCodeEnum > | 64 | M | OFFLINE_PAY | |
| 3 | merchantTransId | Unique merchant transaction ID | string | 64 | ME | 51051001000000000002 | |
| 4 | codeType | The code type | enum<OfflineCodeTypeEnum > | 32 | M | BARCODE | |
| 5 | identityCode | Identity code | string | 65535 | M | 28763443825664394 | |
| 6 | order | The order information | Order | / | M | The orderAmount should be provided in the smallest common currency unit. For example, to create a charge for $1.00, you would set orderAmount.valueas100 (100 cents). | { | 
| 7 | settleContractId | Settlement contract ID.  | string | 64 | O | USD-1 | |
| 8 | envInfo | Device environment information of the user's current request. | EnvInfo | / | O | 
 | { | 
| 9 | extendInfo | Reserved for extended information | string | 2048 | O | Key/Value | {"huabeiInstallment":{"installmentPlan":"3", | 
Request sample
{
    "request":{
        "head":{
            "version":"2.0.0",
            "function":"alipay.intl.acquiring.offline.pay",
            "clientId":"211020000000000000044",
            "reqTime":"2001-07-04T12:08:56+05:30",
            "reqMsgId":"1234567asdfasdf1123fda",
            "reserve":"{}"
        },
        "body":{
            "merchantId":"218820000000000000023",
            "productCode":"OFFLINE_PAY",
            "merchantTransId":"51051001000000000002",
            "codeType":"BARCODE",
            "identityCode":"28763443825664394",
            "order":{
                "orderAmount":{
                    "currency":"USD",
                    "value":"239"
                },
                "orderTitle":"Women Summer Dress",
                "orderDetail":"New White Lace Sleeveless Cute Casual Summer Dresses Vestidos roupas femininas WQW10"
            },
            "settleContractId":"USD-1",
            "envInfo":{
                "deviceInfo":{
                    "sessionId":"26daf780047938bf8d5b7ea8906003e9",
                    "serialNo":"f0c0ec9a",
                    "clientIp":"121.0.29.220",
                    "latitudeLongitude":"39.9151190000,116.4039630000",
                    "idfa":"5D08BADB6-B7D1-46DE-BDAB-B66468A1EFCC",
                    "terminalType":"APP",
                    "deviceName":"Mike's iPhone",
                    "deviceBrand":"APPLE",
                    "deviceModel":"iPhone 7 Plus",
                    "imei":"863360020885012",
                    "osName":"ios",
                    "osVersion":"9.1.1",
                    "wirelessNetwork":"china unicom",
                    "wirelessCarrier":"china unicom",
                    "flightMode":"enabled",
                    "fingerPrintEnabled":"enabled",
                    "deviceBootTime":"2001-07-04T12:08:56+05:30",
                    "lastUnlockTime":"2001-07-04T12:08:56+05:30",
                    "screenResolution":"1024*768",
                    "isJailbreaked":true,
                    "macAddress":"8c:be:be:71:1f:34",
                    "systemLanguage":"EN",
                    "timeZone":"UTC+11"
                },
                "extendInfo":"{}"
            },
            "extendInfo":"{\"huabeiInstallment\":{\"installmentPlan\":\"3\", \"installmentFeeSellerContribution\":\"100\"}}"
        }
    },
    "signature":"signature string"
}Response
Response parameters
Header
| No | Name | Description | Type | Length | Required | Remarks | Sample | 
| 1 | version | API version | string | 8 | ME | As per the respective API reference. | 2.0.0 | 
| 2 | function | API interface | string | 128 | ME | According to specifications defined by each business domain. | alipay.intl.function | 
| 3 | clientId | Client ID | string | 32 | ME | Provided by Alipay, used to identify partner and application system. | 211020000000000000044 | 
| 4 | respTime | Response time | datetime | / | M | DateTime with timezone, which follows the ISO-8601 standard.   | 2001-07-04T12:08:56+05:30 | 
| 5 | reqMsgId | Request message ID | string | 64 | ME | Each request will be assigned with a unique ID (uuid). | 1234567asdfasdf1123fda | 
| 6 | reserve | Reserved for future implementation | string | 256 | O | Key/Value | {} | 
Body
| No | Name | Description | Type | Length | Required | Remarks | Sample | 
| 1 | resultInfo | Result information | ResultInfo | / | M | {  | |
| 2 | acquirementId | Unique Alipay transaction ID. Note: This field is required when resultInfo.resultCode is  | string | 64 | C | 2015032412007101547201351234 | |
| 3 | merchantTransId | Unique merchant transaction ID. Note: This field is required when resultInfo.resultCode is  | string | 64 | CE | 51051001000000001234 | |
| 4 | orderAmount | Order amount. Note: This field is required when resultInfo.resultCode is  | Money | / | C | Should be exactly same as orderAmount passed in the request | {"currency":"USD", "value":"239"} | 
| 5 | payAmount | User actual paid amount. Note: This field is required when resultInfo.resultCode is  | Money | / | C | May have different currency with orderAmount. | {"currency":"CNY", "value":"1481"} | 
| 6 | conversionRate | The conversion rate. Note: This field is required when resultInfo.resultCode is  | ExchangeRate | / | C | The exchage rate between orderAmount and payAmount. | { | 
| 7 | createTime | The creation time of the transaction. Note: This field is required when resultInfo.resultCode is  | datetime | / | C | DateTime with timezone, which follows the ISO-8601 standard.   | 2001-07-04T12:08:56+05:30 | 
| 8 | userSite | The payment user site. Note: This field is required when resultInfo.resultCode is  | enum<SiteEnum > | 64 | M | ALIPAY_CN | |
| 9 | userId | The user ID in the payment site | string | 64 | O | Not provided by default | 2088123456789012 | 
| 10 | userLoginId | The login ID of the payment site. | string | 64 | O | Not provided by default. The login ID is provided in a masked format to protect customer privacy. | c***@gmail.com | 
| 11 | extendInfo | Reserved for extended information | string | 2048 | O | {"isEnterpriseUser":"true", "enterpriseUserName":"seller"} | 
Response sample
{
    "response":{
        "head":{
            "version":"2.0.0",
            "function":"alipay.intl.acquiring.offline.pay",
            "clientId":"211020000000000000044",
            "respTime":"2001-07-04T12:08:56+05:30",
            "reqMsgId":"1234567asdfasdf1123fda",
            "reserve":"{}"
        },
        "body":{
            "resultInfo":{
                "resultStatus":"S",
                "resultCodeId":"00000000",
                "resultCode":"SUCCESS",
                "resultMsg":"success"
            },
            "acquirementId":"2015032412007101547201351234",
            "merchantTransId":"51051001000000000002",
            "orderAmount":{
                "currency":"USD",
                "value":"239"
            },
            "createTime":"2001-07-04T12:08:56+05:30",
            "userSite":"ALIPAY_CN",
            "userId":"2088123456789012",
            "userLoginId":"c***@gmail.com",
            "extendInfo":"{\"isEnterpriseUser\":\"true\", \"enterpriseUserName\":\"seller\"}"
        }
    },
    "signature":"signature string"
}Result codes
Functional logic result codes
| No | ResultCodeId | ResultCode | ResultStatus | Remarks | 
| 1 | 00000025 | REPEAT_REQ_INCONSISTENT | F | Repeated submit, and requests are inconsistent. | 
| 2 | 00000011 | RISK_REJECT | F | Payment is declined by risk control. | 
| 3 | QUERY_CONTRACT_VALUE_NULL | F | The query contract value is null. | |
| 4 | CONTRACT_STATUS_INVALID | F | The status of the contract is invalid. | |
| 5 | 12002005 | USER_NOT_EXIST | F | User does not exist | 
| 6 | 12002006 | USER_STATUS_ABNORMAL | F | User status is not normal. | 
| 7 | 12005001 | CURRENCY_NOT_SUPPORT | F | Transaction currency is invalid. | 
| 8 | 12005104 | AMOUNT_EXCEED_LIMIT | F | The amount exceeds the limit. | 
| 9 | 12005128 | COUNT_EXCEED_LIMIT | F | Count exceeds the limit. | 
| 10 | 12006004 | USER_BALANCE_NOT_ENOUGH | F | User balance is not enough. | 
| 11 | 12005131 | IDENTITY_CODE_INVALID | F | The identity code is invalid. | 
| 12 | 12005132 | IDENTITY_CODE_NOT_SUPPORT | F | The format of identity code is NOT supported, e.g. the identity code is from an unsupported wallet. | 
| 13 | 12005124 | PAYMENT_IN_PROCESS | U | The payment is still under process. | 
| 14 | 12005100 | ORDER_IS_CLOSED | F | The order status is closed. | 
| 15 | 12005003 | ORDER_STATUS_INVALID | F | The order status is invalid. | 
| 16 | 12002046 | USER_AMOUNT_EXCEED_LIMIT | F | User amount exceeds the limit. | 
| 17 | 12002004 | USER_REALNAME_STATUS_INVALID | F | This user needs to complete real name validation. | 
| 18 | 12002010 | USER_NO_PAYMENT_INSTRUMENT | F | This user has no payment instrument. | 
| 19 | 12002003 | USER_BALANCE_PAY_OFF | F | This user turns the basic payment capability off. | 
Basic result codes
The following global result codes might be returned for all APIs.
| No | ResultCodeId | ResultCode | ResultStatus | Remarks | 
| 1 | 00000000 | SUCCESS | S | Success | 
| 2 | 00000019 | PROCESS_FAIL | F | General business failure. No retry. | 
| 3 | 00000901 | UNKNOWN_EXCEPTION | U | API failed due to unknown reasons. | 
| 4 | 00000004 | PARAM_ILLEGAL | F | Illegal parameters. For example, non-numeric input, invalid date. | 
| 5 | 00000007 | INVALID_SIGNATURE | F | The signature is invalid. | 
| 6 | 00000008 | KEY_NO_FOUND | F | The key is not found. | 
| 7 | 00000013 | NO_INTERFACE_DEF | F | API is not defined, | 
| 8 | 00000014 | API_IS_INVALID | F | API is invalid or not active, | 
| 9 | 00000016 | OAUTH_FAILED | F | oAuth authentication failed. | 
| 10 | 00000021 | ACCESS_DENIED | F | Access denied | 
| 11 | 12014152 | CLIENT_FORBIDDEN_ACCESS_API | F | The client is not authorized to use this API. | 
| 12 | 12014155 | UNKNOWN_CLIENT | F | Unknown client | 
| 13 | 12014156 | INVALID_CLIENT_STATUS | F | Invalid client status | 
| 14 | 00000024 | REQUEST_TRAFFIC_EXCEED_LIMIT | F | Request traffic exceeds the limit. |