Confirmation Report Specification (Open Wallet API)

DOCS

Last updated: Aug 15th, 7:41am

The confirmation report specification contains the status of relevant transactions in the submission file. The response appears on the day after the transmission of the submission file.

Each confirmation file and submission file contains transactions for one financial instrument.

File specifications

The following specifications apply to the confirmation report file:

Record length2000 byte fixed length.
File formatUTF-8 encoded.
Transmission day and timeDay D+1 before 8 AM PST.
File directionIn general, transmitted from partner to PayPal.

Field specifications

The following specifications apply to the submission report fields:

Confirmation file header

The file contains only one file header.

PositionFieldTypeLength;
Start and end positions
ValueRequired?Description
1RECORD_TYPEAlphanumeric and uppercase7
1 and 7
CFHR001YesCorresponds to the record type and must be the first item in the record. The constant CFHR001 in this field indicates that this is a file header record.
2RECORD_NUMBERNumeric, right justified, and zero filled (if no value)8
8 and 15
00000001YesContains a record sequence number to monitor the integrity and continuity of data in a file. The header record is always set to 00000001. Each subsequent record must be incremented to the RECORD_NUMBER value in the preceding record plus 1.
The number of records per file must not exceed 99999999.
3CLIENT_IDAlphanumeric, uppercase, left justified, character space filled (if no value)11
16 and 26
Echo back from submission file.YesUnique ID assigned by PayPal to its client
4FILE_DIRECTIONAlphanumeric, uppercase, left justified, character space filled (if no value)1
27 and 27
--YesDirection in which to send the submission file:
  • 1. PayPal to client.
  • 2. Client to PayPal.
5FILE_REFERENCE_NUMBERAlphanumeric, uppercase, left justified, character space filled (if no value)12
28 and 39
Unique system generated file reference number (unique across PayPal) Echo back from submission file.YesContains a submitter-specified file reference number. Can be used to track this file. Value must be unique for each submitted file. Use this value as a file identification and tracking cross-reference to the file validation report.
6FILE_CREATION_DATENumeric, CCYYMMDD8
40 and 47
Date the Confirmation file was created (PST)YesCorresponds to the date when the submitter created the file. The format is CCYYMMDD, where:
  • CC. Century.
  • YY. Year
  • MM. Month
  • DD. Day.
For example, enter 20200215 for February 15, 2020.
7FILE_CREATION_TIMENumeric, HHMMSS (24-hour clock)6
48 and 53
Time the Confirmation file was created (PST)YesCorresponds to the time when the submitter created the file. The format is HHMMSS, where
  • HH Hour (24-hour clock).
  • MM. Minute.
  • SS. Second.
For example, enter 143000 for 2:30 PM.
8FILE_VERSION_NUMBERAlphanumeric8
54 and 61
Version of the Confirmation FileYesVersion of the File
9SUBMISSION_FILE_TRACKING_NUMBERAlphanumeric, uppercase, left justified, character space filled (if no value)12
62 and 73
Unique ID to track the submission file from client side (repeated from the ACK File)Yes--
10FILLERAlphanumeric1927
74 and 2000
Character spacesYesReserved for PayPal internal use.

Confirmation batch header

Contains as many batch headers as the submission file contains, sorted by product and wallet brand. Each batch header is echoed back corresponding to the batch header in the submission file.

PositionFieldTypeLength;
Start and end positions
ValueRequired?Description
1RECORD_TYPEAlphanumeric, uppercase7
1 and 7
CBHR001YesCorresponds to the record type and must be the first item in the record. The CBHR001 constant indicates a batch header record.
2RECORD_NUMBERNumeric, right justified, and zero filled (if no value)8
8 and 15
00000002YesContains a record sequence number to monitor the integrity and continuity of data in a file. The header record is always set to 00000001. Each subsequent record must be incremented to the RECORD_NUMBER value in the preceding record plus 1.
The number of records per file must not exceed 99999999.
3PRODUCT_IDAlphanumeric, uppercase, left justified, character space filled (if no value)11
16 and 26
--YesThe unique PayPal-assigned ID for a product.
4WALLET_BRANDNumeric, right justified, zero filled (if no value)3
27
29001- PayPal
002-VENMO
YesWallet associated with the specific transaction
5FILLERAlphanumeric1971
30
2000Character spacesYesReserved for PayPal internal use.

Confirmation detail primary record

The number of detail primary records matches the number of records in the submission file. Each of these records has a status to indicate if the client accepted or rejected these records.

PositionFieldTypeLength;
Start and end positions
ValueRequired?Description
1RECORD_TYPEAlphanumeric, uppercase7
1 and 7
CDPR001YesCorresponds to the record type and must be the first item in the record. The CDPR001 constant indicates a detail primary record.
2RECORD_NUMBERNumeric, right justified, and zero filled (if no value)8
8 and 15
"00000003"YesContains a record sequence number to monitor the integrity and continuity of data in a file. The header record is always set to 00000001. Each subsequent record must be incremented to the RECORD_NUMBER value in the preceding record plus 1.
The number of records per file must not exceed 99999999.
3REFERENCE_FINANCIAL_INSTRUMENT_IDNumeric15
16
30Echo back from submission file.YesThis is the field that is used to uniquely identify the P2P Pass instrument used for the transaction. It is equivalent to the FPAN in the Card world.
4PAYER IDAlphanumeric19
31
49Echo back from submission file.YesThis is the Sender's PayPal account number
5TRANSACTION_TYPEAlphanumeric2
50
5101= CAPTURE
02=REFUND
03=WITHDRAWALS
YesThe type of transaction. Depending on the product and file direction, this results in a credit to PayPal or a debit from PayPal.
6TRANSACTION_DATENumeric, CCYYMMDD8
52
59Echo back from submission file.YesCorresponds to the date when the submitter created the file. The format is CCYYMMDD, where:
  • CC. Century.
  • YY. Year
  • MM. Month
  • DD. Day.
For example, enter 20200215 for February 15, 2020.
7TRANSACTION_TIMENumeric, HHMMSS (24-hour clock)6
60
65Echo back from submission file.YesCorresponds to the time when the submitter created the file. The format is HHMMSS, where
  • HH Hour (24-hour clock).
  • MM. Minute.
  • SS. Second.
For example, enter 143000 for 2:30 PM.
8ISSUER_ORIGINATION_IDAlphanumeric15
66
80Echo back from submission file.ConditionalThis ID is unique. This ID is always generated by the issuer for every transaction from the issuer. PayPal includes this ID in the API call it makes to the issuer as part of executing that transaction from the issuer.
9REFERENCE_KEYAlphanumeric20
81
100Echo back from submission file.YesThis is a PayPal-generated ID that is sent to Amex for every original transaction API call
10REFUND_REFERENCE_KEYAlphanumeric20
101
120Echo back from submission file.ConditionalThis is a PayPal-generated ID that will sent into Amex for all reverse money movement API calls associated with the original transaction.
11APPROVAL_IDAlphanumeric, left justified, character space filled12
121 and 132
Echo back from submission file.YesThis field should contain the same value that was transmitted from the issuer in the original authorization response message. This value must be unique. In cases where an approval code is inapplicable (e.g., credit transactions), this field must be character space filled.
12REFUND_APPROVAL_IDAlphanumeric, left justified, character space filled12
133
144Echo back from submission file.ConditionalThis field should contain the same value transmitted from the issuer in the refund and reversal response to reverse the original transaction. This value must be unique. In cases where an approval code is inapplicable (e.g., credit transactions), this field must be character space filled.
13AMOUNTNumeric, right justified, zero filled (if no value)12
145 and 156
Echo back from submission file.YesContains the total transaction amount in the currency designated by the currency code. Zero-value transactions are not accepted
14CURRENCY_CODEAlphanumeric, uppercase3
157
159Echo back from submission file.YesContains the code of the currency used to execute the original transaction. It corresponds to the currency used for the AMOUNT field. The Currency code format supports both ISO alpha and numeric values. For example, the ISO alpha code for U.S. Dollars is "USD", and the numeric code is "840."
15CONVERSION_RATEAlphanumeric6
160 and 165
Echo back from submission file.No--
16SEQUENCE NUMBERNumeric, zero filled if no value6
166 and 171
Echo back from submission file.No--
17CLEARING NUMBERNumeric, zero filled if no value6
172 and 177
Echo back from submission file.No--
18SETTLEMENT_IDAlphanumeric20
178
197Echo back from submission file.No--
19REFUND_SETTLEMENT_IDAlphanumeric20
198 and 233
Echo back from submission file.No--
20INSTRUMENT_EXPIRY_DATENumeric4
218 and 221
--No--
21MERCHANT_ID1Alphanumeric2
222 and 233
--No--
22TRANSACTION_STATUSAlphanumeric2
234 and 235
Status of the transaction submitted in the submission file/Real time SMS (Withdrawals)Yes01 - Transaction approved
02 - Transaction approved
23DECLINED_TRANSACTION_REASON_CODEAlphanumeric, space filled (if no value)5
236 and 240
Reason for decline if the Transaction status is 'Declined'Conditional--
24FILLERAlphanumeric1760
241 and 2000
Character spacesYesReserved for PayPal internal use.

Confirmation detail associated record

A No record. The primary record may have multiple associated confirmation detail records.

PositionFieldTypeLength;
Start and end positions
ValueRequired?Description
1RECORD_TYPEAlphanumeric, uppercase7
1 and 7
CDAR001NoCorresponds to the record type and must be the first item in the record. The CDAR001 indicates a detail associated record.
2RECORD_NUMBERNumeric, right justified, and zero filled (if no value)8
8 and 15
NoContains a record sequence number to monitor the integrity and continuity of data in a file. The header record is always set to 00000001. Each subsequent record must be incremented to the RECORD_NUMBER value in the preceding record plus 1.
The number of records per file must not exceed 99999999.
3FILLERAlphanumeric1985
16 and 2000
Character spacesNoReserved for PayPal internal use.

Confirmation batch trailer

Each batch trailer echoes back according to the number of batch trailers in the submission file. Batch trailers are sorted by product and wallet brand.

PositionFieldTypeLength;
Start and end positions
ValueRequired?Description
1RECORD_TYPEAlphanumeric, uppercase7
1 and 7
CBTR001YesCorresponds to the record type and must be the first item in the record. The constant "CBTR001" in this field indicates that this is a Batch Trailer Record
2RECORD_NUMBERNumeric, right justified, zero filled (if no value)7
8
14YesContains a record sequence number to monitor the integrity and continuity of data in a file. The header record is always set to 00000001. Each subsequent record must be incremented to the RECORD_NUMBER value in the preceding record plus 1.
The number of records per file must not exceed 99999999.
3PRODUCT_IDAlphanumeric, uppercase, left justified, character space filled11
15
25--YesThe unique PayPal-assigned ID for a product.
4WALLET_BRANDNumeric, right justified, zero filled3
26
28001- PayPal
002-VENMO
YesWallet associated with the specific transaction
5TOTAL_NUMBER_OF_ACCEPTED_BATCH_TRANSACTIONSNumeric, right justified, zero filled8
29
36--YesTotal number of accepted 'Detail Primary Records' (DPR001)in this batch
6TOTAL_NUMBER_OF_ACCEPTED_BATCH_CREDIT_TRANSACTIONSNumeric, right justified, zero filled8
37
44--Yes--
7TOTAL_ACCEPTED_BATCH_CREDIT_AMOUNTNumeric, right justified, zero filled20
45
64--Yes--
8TOTAL_NUMBER_OF_ACCEPTED_BATCH_DEBIT_TRANSACTIONSNumeric, right justified, zero filled8
65
72--Yes--
9TOTAL_ACCEPTED_BATCH_DEBIT_AMOUNTNumeric, right justified, zero filled20
73
92--Yes--
10NET_ACCEPTED_BATCH_AMOUNTAlphanumeric, uppercase, two decimal places implied, right justified, zero-filled, signed positive or negative
20
93
112TOTAL_ACCEPTED_BATCH_CREDIT_AMOUNT - TOTAL_ACCEPTED_BATCH_DEBIT_AMOUNTYesFor US dollar (USD) and Canadian dollar (CAD) transactions, two decimal places are implied. An uppercase alpha code replaces the last digit in the transaction. This code indicates a debit amount. The debit codes and their numeric equivalents are:
  • 1. A.
  • 2. B
  • 3. C
  • 4. D
  • 5. E
  • 6. F
  • 7. G
  • 8. H
  • 9. I
  • 0. {.
  • -1. J.
  • -2. K
  • -3. L
  • -4. M
  • -5. N
  • -6. O
  • -7. P
  • -8. Q
  • -9. R.
The following example amounts show how debit and credit values appear:
AmountDebitCredit
$1.110000000011A0000000011J
$345.050000003450E0000003450N
$22.700000000227{0000000227}
11FILLER188Alphanumeric8
113
2000Character spacesYesReserved for PayPal internal use.

Confirmation file trailer

The full file contains only one file trailer. It corresponds to the file header.

PositionFieldTypeLength;
Start and end positions
ValueRequired?Description
1RECORD_TYPEAlphanumeric, uppercase7
1 and 7
CFTR001YesCorresponds to the record type and must be the first item in the record. The constant "CFTR001" in this field indicates that this is a Header Record.
2RECORD_NUMBERNumeric, right justified, zero filled8
8 and 15
00000001YesContains a record sequence number to monitor the integrity and continuity of data in a file. The header record is always set to 00000001. Each subsequent record must be incremented to the RECORD_NUMBER value in the preceding record plus 1.
The number of records per file must not exceed 99999999.
3CLIENT_IDAlphanumeric, uppercase, left justified, character space filled11
16 and 26
--YesUnique ID assigned by PayPal to its Client
4FILE_DIRECTIONAlphanumeric, uppercase, left justified, character space filled1
27 and 27
--YesDirection in which to send the submission file:
  • 1. PayPal to client.
  • 2. Client to PayPal.
5FILE_REFERENCE_NUMBERAlphanumeric, uppercase, left-justified, character-space-filled12
27 and 27
--YesSystem-generated file reference number. Unique across PayPal. Contains a submitter-specified file reference number. Can be used to track this file. Value must be unique for each submitted file. Use this value as a file identification and tracking cross-reference to the file validation report.
6FILE_CREATION_DATENumeric, CCYYMMDD8
40
47Date the confirmation file was created (PST)YesCorresponds to the date when the submitter created the file. The format is CCYYMMDD, where:
  • CC. Century.
  • YY. Year
  • MM. Month
  • DD. Day.
For example, enter 20200215 for February 15, 2020.
7FILE_CREATION_TIMENumeric, HHMMSS (24-hour clock)6
48
53Time the confirmation file was created (PST)YesCorresponds to the time when the submitter created the file. The format is HHMMSS, where
  • HH Hour (24-hour clock).
  • MM. Minute.
  • SS. Second.
For example, enter 143000 for 2:30 PM.
8FILE_VERSION_NUMBERAlphanumeric8
54
61Version of the FileYesVersion of the File
9SUBMISSION_FILE_TRACKING_NUMBERAlphanumeric, uppercase, left justified, character space filled (if no value)12
62
73Unique ID to track the Submission file from Client side (Repeated from the ACK File)Yes--
10TOTAL_NUMBER_OF_BATCHESNumeric, right justified, zero filled8
74
73Echoed back from Submission FileYes--
11TOTAL_NUMBER_OF_ACCEPTED_FILE_TXNSNumeric, right justified, zero filled8
74
81--Yes--
12TOTAL_NUMBER_OF_ACCEPTED_FILE_CREDIT_TXNSNumeric, right justified, zero filled8
82
89--Yes--
13TOTAL_ACCEPTED_FILE_CREDIT_AMOUNTNumeric, right justified, zero filled20
90
109--Yes--
14TOTAL_NUMBER_OF_ACCEPTED_FILE_DEBIT_TXNSNumeric, right justified, zero filled8
110
117--Yes--
15TOTAL_ACCEPTED_FILE_DEBIT_AMOUNTNumeric, right justified, zero filled20
118
137--Yes--
16NET_ACCEPTED_FILE_AMOUNTAlphanumeric, uppercase, two decimal places implied, right justified, zero-filled, signed positive or negative
20
138
157Sum of all the 'NET_ACCEPTED_BATCH_AMOUNT'YesFor US dollar (USD) and Canadian dollar (CAD) transactions, two decimal places are implied. An uppercase alpha code replaces the last digit in the transaction. This code indicates a debit amount. The debit codes and their numeric equivalents are:
  • 1. A.
  • 2. B
  • 3. C
  • 4. D
  • 5. E
  • 6. F
  • 7. G
  • 8. H
  • 9. I
  • 0. {.
  • -1. J.
  • -2. K
  • -3. L
  • -4. M
  • -5. N
  • -6. O
  • -7. P
  • -8. Q
  • -9. R.
The following example amounts show how debit and credit values appear:
AmountDebitCredit
$1.110000000011A0000000011J
$345.050000003450E0000003450N
$22.700000000227{0000000227}
17NET_ACCEPTED_FILE_ABSOLUTE_AMOUNTNumeric, right justified, zero filled20
158
177NET_ACCEPTED_FILE_AMOUNT removing the sign--NET_ACCEPTED_FILE_AMOUNT removing the sign
18PAYMENT_DIRECTIONAlphanumeric, uppercase, left justified, character space filled (if no value)1
178
178--YesDirection in which the NET_ACCEPTED_FILE_ABSOLUTE_AMOUNT is to be paid
  • 1 PayPal to client.
  • 2. Client to PayPal.
19FILLER182Alphanumeric2
179
2000Character spacesYesReserved for PayPal internal use.