PAAF User Seq Not In Range
When an error in #banking-errors occurs
REJECTED PAAF REPLY FILE /netup/ZR04136/incoming/REPLY.0307090455: ***USER SEQ. NOT IN RANGE***"
Occurs when one PAAF file is generated while another is being accepted, the records is updated twice with mismatching sequence numbers.
This can be corrected by delaying the PAAF output processing so that it will not overlap with PAAF input generation.
Resetting the PAAF output queue
- Port forward rabbmit mq management interface and access it here: http://127.0.0.1:15672
kubectl -n banking port-forward rabbitmq-0 15672
- Authenticate using the admin account stored in 1password
- Navigate to the
banking.delayed.process_credit_output_files
queue and under theGet messages
section, expand and selectAck message requeue false
then click the Get Message(s) button so the queue is cleared to 0 messages - Once you see a paaf file being generate, simply send a single message with the contents
execute
to start the output processing queue
Unblocking PAAF generation
Open a shell to the making service
kubectl -n banking exec -it banking-images-web-0 bash
Read the latest reply file and confirm that the error is sequence related and that no payments were processed
cat /netup/ZR04136/archive/2022/3/REPLY.0307090455
you should see-***NO TRANSMISSION CONTENTS WERE ACCEPTED***
at the end of the reply fileNote the unaccepted numbers eg.
000L2022030600000RENTAL CONNECT PTY LTD 000000004136
18612
900L000 TRANSMISSION 04136-0012316 REJECTED
900L020 ACB USER SET A855-0001488-000000 REJECTED
901L020 A855/0001488/000033 00031-***USER SEQ. NOT IN RANGE***
901L020 A855/0001488/000034 00049-***CONTRA SEQ. NOT IN RANGE***
901L020 A855/0001488/000000 00011-***TRAILER LAST SEQ NO NOT = LAST TRAN***
901L000User Seq:
1488
ld_user_number:18612
Transmission Seq:12316
Read the last successful reply file and note the sequence number
cat /netup/ZR04136/archive/2022/3/REPLY.0306223933
000L2022030600000RENTAL CONNECT PTY LTD 001657704136
18611
900L000 TRANSMISSION 04136-0012315 ACCEPTED
900L020 ACB USER SET A855-0001484-000026 ACCEPTED
903L020L1063200504095090802A85500002525065562797107531100000529200220307880 REOS RENTAL INCOME AFROROOTS SALON 00000000000000000000 21
903L020L1263200504095090802A85500002663200504095090802100000529200220307100000REOS CONTRAS4454L4DVK2PGZ
900L020 ACB USER SET A855-0001485-000028 ACCEPTED
903L020L1063200504095090802A85500002763200504097574713100000064631220307880 REOS TRS9993676619 REOS 00000000000000000000 21
903L020L1263200504095090802A85500002863200504095090802100000064631220307100000REOS CONTRAG231ZCCF6KFCEG
900L020 ACB USER SET A855-0001486-000030 ACCEPTED
903L020L1063200504095090802A85500002925065562398740277100000494633220307880 REOS RENTAL INCOME MOSHIBUDI MPHAHLELE 00000000000000000000 21
903L020L1263200504095090802A85500003063200504095090802100000494633220307100000REOS CONTRATS8OK537SSE8Q2
900L020 ACB USER SET A855-0001487-000032 ACCEPTED
903L020L1063200504095090802A85500003105100100023341890100000090367220307880 REOS LAU0038A WHITFIELDS TRUST ACCOUNT 00000000000000000000 21
903L020L1263200504095090802A85500003263200504095090802100000090367220307100000REOS CONTRA4DI7MATB7941PF
999L000000015Update the services table, find the row with the matching sequences and decrement the
ld_user_number
andtransmissions_number
by 1. Note that user seq might have to be changed depending on the error condition, typically this number is reset daily back to 0.When the sequences are correct so the :accepted payments can be marked as :pending for retry Open rails REPL
rails c
Request.where(status: :submitted).each { |request|
request.status = :pending
request.save!
}